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
@@ -232,7 +232,7 @@ class SVF::MutablePTData&lt; Key, KeySet, Data, DataSet &gt;</h3>
232
232
 
233
233
  <p><a class="el" href="classSVF_1_1PTData.html">PTData</a> implemented using points-to sets which are created once and updated continuously. </p>
234
234
 
235
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00021">21</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
235
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00053">53</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
236
236
  </div><h2 class="groupheader">Member Typedef Documentation</h2>
237
237
  <a id="ab88ea00589ec9353bccf3629a1c4e5d3"></a>
238
238
  <h2 class="memtitle"><span class="permalink"><a href="#ab88ea00589ec9353bccf3629a1c4e5d3">&#9670;&nbsp;</a></span>BasePTData</h2>
@@ -248,7 +248,7 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
248
248
  </table>
249
249
  </div><div class="memdoc">
250
250
 
251
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00025">25</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
251
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00057">57</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
252
252
 
253
253
  </div>
254
254
  </div>
@@ -266,7 +266,7 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
266
266
  </table>
267
267
  </div><div class="memdoc">
268
268
 
269
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00032">32</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
269
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00064">64</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
270
270
 
271
271
  </div>
272
272
  </div>
@@ -284,7 +284,7 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
284
284
  </table>
285
285
  </div><div class="memdoc">
286
286
 
287
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00026">26</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
287
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00058">58</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
288
288
 
289
289
  </div>
290
290
  </div>
@@ -302,7 +302,7 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
302
302
  </table>
303
303
  </div><div class="memdoc">
304
304
 
305
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00028">28</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
305
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00060">60</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
306
306
 
307
307
  </div>
308
308
  </div>
@@ -320,7 +320,7 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
320
320
  </table>
321
321
  </div><div class="memdoc">
322
322
 
323
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00031">31</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
323
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00063">63</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
324
324
 
325
325
  </div>
326
326
  </div>
@@ -338,7 +338,7 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
338
338
  </table>
339
339
  </div><div class="memdoc">
340
340
 
341
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00030">30</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
341
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00062">62</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
342
342
 
343
343
  </div>
344
344
  </div>
@@ -356,7 +356,7 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
356
356
  </table>
357
357
  </div><div class="memdoc">
358
358
 
359
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00029">29</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
359
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00061">61</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
360
360
 
361
361
  </div>
362
362
  </div>
@@ -399,8 +399,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
399
399
 
400
400
  <p>Constructor. </p>
401
401
 
402
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00035">35</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
403
- <div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;: <a class="code" href="classSVF_1_1MutablePTData.html#ab88ea00589ec9353bccf3629a1c4e5d3">BasePTData</a>(reversePT, ty) { }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_ab88ea00589ec9353bccf3629a1c4e5d3"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ab88ea00589ec9353bccf3629a1c4e5d3">SVF::MutablePTData::BasePTData</a></div><div class="ttdeci">PTData&lt; Key, KeySet, Data, DataSet &gt; BasePTData</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00025">MutablePointsToDS.h:25</a></div></div>
402
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00067">67</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
403
+ <div class="fragment"><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;: <a class="code" href="classSVF_1_1MutablePTData.html#ab88ea00589ec9353bccf3629a1c4e5d3">BasePTData</a>(reversePT, ty) { }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_ab88ea00589ec9353bccf3629a1c4e5d3"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ab88ea00589ec9353bccf3629a1c4e5d3">SVF::MutablePTData::BasePTData</a></div><div class="ttdeci">PTData&lt; Key, KeySet, Data, DataSet &gt; BasePTData</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00057">MutablePointsToDS.h:57</a></div></div>
404
404
  </div><!-- fragment -->
405
405
  </div>
406
406
  </div>
@@ -429,8 +429,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
429
429
  </table>
430
430
  </div><div class="memdoc">
431
431
 
432
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00037">37</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
433
- <div class="fragment"><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;{ }</div></div><!-- fragment -->
432
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00069">69</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
433
+ <div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;{ }</div></div><!-- fragment -->
434
434
  </div>
435
435
  </div>
436
436
  <h2 class="groupheader">Member Function Documentation</h2>
@@ -474,11 +474,11 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
474
474
 
475
475
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#ac1b9dc035fb0bdf468c7d14b9f9d437a">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
476
476
 
477
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00062">62</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
478
- <div class="fragment"><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; {</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a4c5d5d5d73db6dc6b721a076bcae3662">addSingleRevPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>[element], dstKey);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#aab4a2eec11e83beca70b016102431ab1">addPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[dstKey], element);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a4c5d5d5d73db6dc6b721a076bcae3662"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a4c5d5d5d73db6dc6b721a076bcae3662">SVF::MutablePTData::addSingleRevPts</a></div><div class="ttdeci">void addSingleRevPts(KeySet &amp;revData, const Key &amp;tgr)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00157">MutablePointsToDS.h:157</a></div></div>
479
- <div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
480
- <div class="ttc" id="classSVF_1_1MutablePTData_html_aab4a2eec11e83beca70b016102431ab1"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#aab4a2eec11e83beca70b016102431ab1">SVF::MutablePTData::addPts</a></div><div class="ttdeci">virtual bool addPts(const Key &amp;dstKey, const Data &amp;element) override</div><div class="ttdoc">Adds element to the points-to set associated with var. </div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00062">MutablePointsToDS.h:62</a></div></div>
481
- <div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00190">MutablePointsToDS.h:190</a></div></div>
477
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00094">94</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
478
+ <div class="fragment"><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a4c5d5d5d73db6dc6b721a076bcae3662">addSingleRevPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>[element], dstKey);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#aab4a2eec11e83beca70b016102431ab1">addPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[dstKey], element);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a4c5d5d5d73db6dc6b721a076bcae3662"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a4c5d5d5d73db6dc6b721a076bcae3662">SVF::MutablePTData::addSingleRevPts</a></div><div class="ttdeci">void addSingleRevPts(KeySet &amp;revData, const Key &amp;tgr)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
479
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
480
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_aab4a2eec11e83beca70b016102431ab1"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#aab4a2eec11e83beca70b016102431ab1">SVF::MutablePTData::addPts</a></div><div class="ttdeci">virtual bool addPts(const Key &amp;dstKey, const Data &amp;element) override</div><div class="ttdoc">Adds element to the points-to set associated with var. </div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00094">MutablePointsToDS.h:94</a></div></div>
481
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00222">MutablePointsToDS.h:222</a></div></div>
482
482
  </div><!-- fragment -->
483
483
  </div>
484
484
  </div>
@@ -518,8 +518,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
518
518
  </table>
519
519
  </div><div class="memdoc">
520
520
 
521
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00153">153</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
522
- <div class="fragment"><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; {</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">return</span> d.test_and_set(e);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; }</div></div><!-- fragment -->
521
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00185">185</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
522
+ <div class="fragment"><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; {</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> d.test_and_set(e);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div></div><!-- fragment -->
523
523
  </div>
524
524
  </div>
525
525
  <a id="ad3175d9c02d8a9f6ad1752ccf3e468cb"></a>
@@ -558,11 +558,11 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
558
558
  </table>
559
559
  </div><div class="memdoc">
560
560
 
561
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00164">164</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
562
- <div class="fragment"><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; {</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">rev</a>)</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; {</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1MutablePTData.html#ae856f07441da3988d6a31eea1e30a7d9">iterator</a> it = ptsData.begin(), eit = ptsData.end(); it!=eit; ++it)</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a4c5d5d5d73db6dc6b721a076bcae3662">addSingleRevPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>[*it], tgr);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a4c5d5d5d73db6dc6b721a076bcae3662"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a4c5d5d5d73db6dc6b721a076bcae3662">SVF::MutablePTData::addSingleRevPts</a></div><div class="ttdeci">void addSingleRevPts(KeySet &amp;revData, const Key &amp;tgr)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00157">MutablePointsToDS.h:157</a></div></div>
563
- <div class="ttc" id="classSVF_1_1MutablePTData_html_ae856f07441da3988d6a31eea1e30a7d9"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ae856f07441da3988d6a31eea1e30a7d9">SVF::MutablePTData::iterator</a></div><div class="ttdeci">DataSet::iterator iterator</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00032">MutablePointsToDS.h:32</a></div></div>
564
- <div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00190">MutablePointsToDS.h:190</a></div></div>
565
- <div class="ttc" id="classSVF_1_1PTData_html_a46fa3ec6462f3dda19549340281bb219"><div class="ttname"><a href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">SVF::PTData::rev</a></div><div class="ttdeci">bool rev</div><div class="ttdoc">Whether we maintain reverse points-to sets or not. </div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00107">AbstractPointsToDS.h:107</a></div></div>
561
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00196">196</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
562
+ <div class="fragment"><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; {</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">rev</a>)</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; {</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1MutablePTData.html#ae856f07441da3988d6a31eea1e30a7d9">iterator</a> it = ptsData.begin(), eit = ptsData.end(); it!=eit; ++it)</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a4c5d5d5d73db6dc6b721a076bcae3662">addSingleRevPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>[*it], tgr);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; }</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a4c5d5d5d73db6dc6b721a076bcae3662"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a4c5d5d5d73db6dc6b721a076bcae3662">SVF::MutablePTData::addSingleRevPts</a></div><div class="ttdeci">void addSingleRevPts(KeySet &amp;revData, const Key &amp;tgr)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
563
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_ae856f07441da3988d6a31eea1e30a7d9"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ae856f07441da3988d6a31eea1e30a7d9">SVF::MutablePTData::iterator</a></div><div class="ttdeci">DataSet::iterator iterator</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00064">MutablePointsToDS.h:64</a></div></div>
564
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00222">MutablePointsToDS.h:222</a></div></div>
565
+ <div class="ttc" id="classSVF_1_1PTData_html_a46fa3ec6462f3dda19549340281bb219"><div class="ttname"><a href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">SVF::PTData::rev</a></div><div class="ttdeci">bool rev</div><div class="ttdoc">Whether we maintain reverse points-to sets or not. </div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00141">AbstractPointsToDS.h:141</a></div></div>
566
566
  </div><!-- fragment -->
567
567
  </div>
568
568
  </div>
@@ -602,9 +602,9 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
602
602
  </table>
603
603
  </div><div class="memdoc">
604
604
 
605
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00157">157</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
606
- <div class="fragment"><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; {</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">rev</a>)</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aeecfaf26800dcebf0b079395126bc7f7">SVFUtil::insertKey</a>(tgr, revData);</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aeecfaf26800dcebf0b079395126bc7f7"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aeecfaf26800dcebf0b079395126bc7f7">SVF::SVFUtil::insertKey</a></div><div class="ttdeci">void insertKey(const Key &amp;key, KeySet &amp;keySet)</div><div class="ttdoc">Inserts an element into a Set/CondSet (with ::insert). </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00307">SVFUtil.h:307</a></div></div>
607
- <div class="ttc" id="classSVF_1_1PTData_html_a46fa3ec6462f3dda19549340281bb219"><div class="ttname"><a href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">SVF::PTData::rev</a></div><div class="ttdeci">bool rev</div><div class="ttdoc">Whether we maintain reverse points-to sets or not. </div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00107">AbstractPointsToDS.h:107</a></div></div>
605
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00189">189</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
606
+ <div class="fragment"><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; {</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">rev</a>)</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; {</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aeecfaf26800dcebf0b079395126bc7f7">SVFUtil::insertKey</a>(tgr, revData);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; }</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; }</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aeecfaf26800dcebf0b079395126bc7f7"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aeecfaf26800dcebf0b079395126bc7f7">SVF::SVFUtil::insertKey</a></div><div class="ttdeci">void insertKey(const Key &amp;key, KeySet &amp;keySet)</div><div class="ttdoc">Inserts an element into a Set/CondSet (with ::insert). </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00307">SVFUtil.h:307</a></div></div>
607
+ <div class="ttc" id="classSVF_1_1PTData_html_a46fa3ec6462f3dda19549340281bb219"><div class="ttname"><a href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">SVF::PTData::rev</a></div><div class="ttdeci">bool rev</div><div class="ttdoc">Whether we maintain reverse points-to sets or not. </div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00141">AbstractPointsToDS.h:141</a></div></div>
608
608
  </div><!-- fragment -->
609
609
  </div>
610
610
  </div>
@@ -635,8 +635,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
635
635
  </div><div class="memdoc">
636
636
  <p>Methods to support type inquiry through isa, cast, and dyn_cast: </p>
637
637
 
638
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00117">117</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
639
- <div class="fragment"><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div></div><!-- fragment -->
638
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00149">149</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
639
+ <div class="fragment"><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div></div><!-- fragment -->
640
640
  </div>
641
641
  </div>
642
642
  <a id="a577a7fce1affd462afeb9fefa4bdb4a8"></a>
@@ -665,8 +665,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
665
665
  </table>
666
666
  </div><div class="memdoc">
667
667
 
668
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00122">122</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
669
- <div class="fragment"><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; {</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">return</span> ptd-&gt;getPTDTY() == PTDataTy::MutBase;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; }</div></div><!-- fragment -->
668
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00154">154</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
669
+ <div class="fragment"><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span> ptd-&gt;getPTDTY() == PTDataTy::MutBase;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div></div><!-- fragment -->
670
670
  </div>
671
671
  </div>
672
672
  <a id="ac8da1a3357c3bc529f6ca85615486951"></a>
@@ -698,9 +698,9 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
698
698
 
699
699
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#ad45879017d8fdeedc987ce35c4eba1a5">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
700
700
 
701
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00045">45</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
702
- <div class="fragment"><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; <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>.clear();</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>.clear();</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
703
- <div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00190">MutablePointsToDS.h:190</a></div></div>
701
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00077">77</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
702
+ <div class="fragment"><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; {</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>.clear();</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>.clear();</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
703
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00222">MutablePointsToDS.h:222</a></div></div>
704
704
  </div><!-- fragment -->
705
705
  </div>
706
706
  </div>
@@ -734,9 +734,9 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
734
734
 
735
735
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#a877888f12d9f8048002cc0e6b83d45ac">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
736
736
 
737
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00091">91</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
738
- <div class="fragment"><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; {</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; DataSet &amp;pts = <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[var];</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a80cb0bdab4aa64d81e3d61405066a0da">clearRevPts</a>(pts, var);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; pts.clear();</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a80cb0bdab4aa64d81e3d61405066a0da"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a80cb0bdab4aa64d81e3d61405066a0da">SVF::MutablePTData::clearRevPts</a></div><div class="ttdeci">void clearRevPts(const DataSet &amp;pts, const Key &amp;k)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00179">MutablePointsToDS.h:179</a></div></div>
739
- <div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
737
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00123">123</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
738
+ <div class="fragment"><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; DataSet &amp;pts = <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[var];</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a80cb0bdab4aa64d81e3d61405066a0da">clearRevPts</a>(pts, var);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; pts.clear();</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a80cb0bdab4aa64d81e3d61405066a0da"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a80cb0bdab4aa64d81e3d61405066a0da">SVF::MutablePTData::clearRevPts</a></div><div class="ttdeci">void clearRevPts(const DataSet &amp;pts, const Key &amp;k)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00211">MutablePointsToDS.h:211</a></div></div>
739
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
740
740
  </div><!-- fragment -->
741
741
  </div>
742
742
  </div>
@@ -780,10 +780,10 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
780
780
 
781
781
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#a03c783b9a1faac0aee3e22361df594ce">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
782
782
 
783
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00085">85</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
784
- <div class="fragment"><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; {</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a5756fb30b7bd405c04defb49a7d688f7">clearSingleRevPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>[element], var);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[var].reset(element);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
785
- <div class="ttc" id="classSVF_1_1MutablePTData_html_a5756fb30b7bd405c04defb49a7d688f7"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5756fb30b7bd405c04defb49a7d688f7">SVF::MutablePTData::clearSingleRevPts</a></div><div class="ttdeci">void clearSingleRevPts(KeySet &amp;revSet, const Key &amp;k)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00172">MutablePointsToDS.h:172</a></div></div>
786
- <div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00190">MutablePointsToDS.h:190</a></div></div>
783
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00117">117</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
784
+ <div class="fragment"><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a5756fb30b7bd405c04defb49a7d688f7">clearSingleRevPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>[element], var);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[var].reset(element);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
785
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_a5756fb30b7bd405c04defb49a7d688f7"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5756fb30b7bd405c04defb49a7d688f7">SVF::MutablePTData::clearSingleRevPts</a></div><div class="ttdeci">void clearSingleRevPts(KeySet &amp;revSet, const Key &amp;k)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00204">MutablePointsToDS.h:204</a></div></div>
786
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00222">MutablePointsToDS.h:222</a></div></div>
787
787
  </div><!-- fragment -->
788
788
  </div>
789
789
  </div>
@@ -823,10 +823,10 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
823
823
  </table>
824
824
  </div><div class="memdoc">
825
825
 
826
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00179">179</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
827
- <div class="fragment"><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; {</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">rev</a>)</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> Data &amp;d : pts) <a class="code" href="classSVF_1_1MutablePTData.html#a5756fb30b7bd405c04defb49a7d688f7">clearSingleRevPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>[d], k);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5756fb30b7bd405c04defb49a7d688f7"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5756fb30b7bd405c04defb49a7d688f7">SVF::MutablePTData::clearSingleRevPts</a></div><div class="ttdeci">void clearSingleRevPts(KeySet &amp;revSet, const Key &amp;k)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00172">MutablePointsToDS.h:172</a></div></div>
828
- <div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00190">MutablePointsToDS.h:190</a></div></div>
829
- <div class="ttc" id="classSVF_1_1PTData_html_a46fa3ec6462f3dda19549340281bb219"><div class="ttname"><a href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">SVF::PTData::rev</a></div><div class="ttdeci">bool rev</div><div class="ttdoc">Whether we maintain reverse points-to sets or not. </div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00107">AbstractPointsToDS.h:107</a></div></div>
826
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00211">211</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
827
+ <div class="fragment"><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; {</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">rev</a>)</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; {</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> Data &amp;d : pts) <a class="code" href="classSVF_1_1MutablePTData.html#a5756fb30b7bd405c04defb49a7d688f7">clearSingleRevPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>[d], k);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; }</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5756fb30b7bd405c04defb49a7d688f7"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5756fb30b7bd405c04defb49a7d688f7">SVF::MutablePTData::clearSingleRevPts</a></div><div class="ttdeci">void clearSingleRevPts(KeySet &amp;revSet, const Key &amp;k)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00204">MutablePointsToDS.h:204</a></div></div>
828
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00222">MutablePointsToDS.h:222</a></div></div>
829
+ <div class="ttc" id="classSVF_1_1PTData_html_a46fa3ec6462f3dda19549340281bb219"><div class="ttname"><a href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">SVF::PTData::rev</a></div><div class="ttdeci">bool rev</div><div class="ttdoc">Whether we maintain reverse points-to sets or not. </div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00141">AbstractPointsToDS.h:141</a></div></div>
830
830
  </div><!-- fragment -->
831
831
  </div>
832
832
  </div>
@@ -866,9 +866,9 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
866
866
  </table>
867
867
  </div><div class="memdoc">
868
868
 
869
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00172">172</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
870
- <div class="fragment"><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; {</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">rev</a>)</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; {</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aee74719d33695e4da6fee5fc83f745d9">SVFUtil::removeKey</a>(k, revSet);</div><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; }</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aee74719d33695e4da6fee5fc83f745d9"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aee74719d33695e4da6fee5fc83f745d9">SVF::SVFUtil::removeKey</a></div><div class="ttdeci">void removeKey(const Key &amp;key, KeySet &amp;keySet)</div><div class="ttdoc">Removes an element from a Set/CondSet (or anything implementing ::erase). </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00320">SVFUtil.h:320</a></div></div>
871
- <div class="ttc" id="classSVF_1_1PTData_html_a46fa3ec6462f3dda19549340281bb219"><div class="ttname"><a href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">SVF::PTData::rev</a></div><div class="ttdeci">bool rev</div><div class="ttdoc">Whether we maintain reverse points-to sets or not. </div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00107">AbstractPointsToDS.h:107</a></div></div>
869
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00204">204</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
870
+ <div class="fragment"><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; {</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">rev</a>)</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; {</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#aee74719d33695e4da6fee5fc83f745d9">SVFUtil::removeKey</a>(k, revSet);</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; }</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; }</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aee74719d33695e4da6fee5fc83f745d9"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aee74719d33695e4da6fee5fc83f745d9">SVF::SVFUtil::removeKey</a></div><div class="ttdeci">void removeKey(const Key &amp;key, KeySet &amp;keySet)</div><div class="ttdoc">Removes an element from a Set/CondSet (or anything implementing ::erase). </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00320">SVFUtil.h:320</a></div></div>
871
+ <div class="ttc" id="classSVF_1_1PTData_html_a46fa3ec6462f3dda19549340281bb219"><div class="ttname"><a href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">SVF::PTData::rev</a></div><div class="ttdeci">bool rev</div><div class="ttdoc">Whether we maintain reverse points-to sets or not. </div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00141">AbstractPointsToDS.h:141</a></div></div>
872
872
  </div><!-- fragment -->
873
873
  </div>
874
874
  </div>
@@ -901,9 +901,9 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
901
901
 
902
902
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#a91b898e3547eecfbf1ab155d183734bf">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
903
903
 
904
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00080">80</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
905
- <div class="fragment"><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; {</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#af08060bb4d450ecc4160cb79ab3dcc77">dumpPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_af08060bb4d450ecc4160cb79ab3dcc77"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#af08060bb4d450ecc4160cb79ab3dcc77">SVF::MutablePTData::dumpPts</a></div><div class="ttdeci">virtual void dumpPts(const PtsMap &amp;ptsSet, OutStream &amp;O=SVFUtil::outs()) const</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00129">MutablePointsToDS.h:129</a></div></div>
906
- <div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
904
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00112">112</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
905
+ <div class="fragment"><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; {</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#af08060bb4d450ecc4160cb79ab3dcc77">dumpPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_af08060bb4d450ecc4160cb79ab3dcc77"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#af08060bb4d450ecc4160cb79ab3dcc77">SVF::MutablePTData::dumpPts</a></div><div class="ttdeci">virtual void dumpPts(const PtsMap &amp;ptsSet, OutStream &amp;O=SVFUtil::outs()) const</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00161">MutablePointsToDS.h:161</a></div></div>
906
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
907
907
  </div><!-- fragment -->
908
908
  </div>
909
909
  </div>
@@ -943,8 +943,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
943
943
  </table>
944
944
  </div><div class="memdoc">
945
945
 
946
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00129">129</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
947
- <div class="fragment"><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1MutablePTData.html#ae9c96f369fbe955a841badcf3fcfcc03">PtsMapConstIter</a> nodeIt = ptsSet.begin(); nodeIt != ptsSet.end(); nodeIt++)</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; {</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">const</span> Key&amp; var = nodeIt-&gt;first;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">const</span> DataSet &amp; pts = nodeIt-&gt;second;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span> (pts.empty())</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; O &lt;&lt; var &lt;&lt; <span class="stringliteral">&quot; ==&gt; { &quot;</span>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">typename</span> DataSet::iterator cit = pts.begin(), ecit=pts.end(); cit!=ecit; ++cit)</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; O &lt;&lt; *cit &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; O &lt;&lt; <span class="stringliteral">&quot;}\n&quot;</span>;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_ae9c96f369fbe955a841badcf3fcfcc03"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ae9c96f369fbe955a841badcf3fcfcc03">SVF::MutablePTData::PtsMapConstIter</a></div><div class="ttdeci">PtsMap::const_iterator PtsMapConstIter</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00031">MutablePointsToDS.h:31</a></div></div>
946
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00161">161</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
947
+ <div class="fragment"><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; {</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1MutablePTData.html#ae9c96f369fbe955a841badcf3fcfcc03">PtsMapConstIter</a> nodeIt = ptsSet.begin(); nodeIt != ptsSet.end(); nodeIt++)</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; {</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keyword">const</span> Key&amp; var = nodeIt-&gt;first;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keyword">const</span> DataSet &amp; pts = nodeIt-&gt;second;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">if</span> (pts.empty())</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; O &lt;&lt; var &lt;&lt; <span class="stringliteral">&quot; ==&gt; { &quot;</span>;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">typename</span> DataSet::iterator cit = pts.begin(), ecit=pts.end(); cit!=ecit; ++cit)</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; O &lt;&lt; *cit &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; O &lt;&lt; <span class="stringliteral">&quot;}\n&quot;</span>;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_ae9c96f369fbe955a841badcf3fcfcc03"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ae9c96f369fbe955a841badcf3fcfcc03">SVF::MutablePTData::PtsMapConstIter</a></div><div class="ttdeci">PtsMap::const_iterator PtsMapConstIter</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00063">MutablePointsToDS.h:63</a></div></div>
948
948
  </div><!-- fragment -->
949
949
  </div>
950
950
  </div>
@@ -977,8 +977,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
977
977
 
978
978
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#adbe2b955f119871b54dc502de84b94c4">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
979
979
 
980
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00103">103</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
981
- <div class="fragment"><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; {</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; Map&lt;DataSet, unsigned&gt; allPts;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">typename</span> PtsMap::value_type ppt : <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>)</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; {</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">const</span> DataSet &amp;pt = ppt.second;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; ++allPts[pt];</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">return</span> allPts;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
980
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00135">135</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
981
+ <div class="fragment"><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; {</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; Map&lt;DataSet, unsigned&gt; allPts;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">typename</span> PtsMap::value_type ppt : <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>)</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keyword">const</span> DataSet &amp;pt = ppt.second;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; ++allPts[pt];</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> allPts;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
982
982
  </div><!-- fragment -->
983
983
  </div>
984
984
  </div>
@@ -1012,8 +1012,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
1012
1012
 
1013
1013
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#a9ae6037637d8b9acb323333f491f4a7d">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
1014
1014
 
1015
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00051">51</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1016
- <div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; {</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[var];</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
1015
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00083">83</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1016
+ <div class="fragment"><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[var];</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
1017
1017
  </div><!-- fragment -->
1018
1018
  </div>
1019
1019
  </div>
@@ -1044,8 +1044,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
1044
1044
 
1045
1045
  <p>Return Points-to map. </p>
1046
1046
 
1047
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00040">40</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1048
- <div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; {</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
1047
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00072">72</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1048
+ <div class="fragment"><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
1049
1049
  </div><!-- fragment -->
1050
1050
  </div>
1051
1051
  </div>
@@ -1079,9 +1079,9 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
1079
1079
 
1080
1080
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#ab6146f5582946c08568f3a8d45e57b03">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
1081
1081
 
1082
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00056">56</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1083
- <div class="fragment"><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; {</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; assert(this-&gt;<a class="code" href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">rev</a> &amp;&amp; <span class="stringliteral">&quot;MutablePTData::getRevPts: constructed without reverse PT support!&quot;</span>);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>[datum];</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00190">MutablePointsToDS.h:190</a></div></div>
1084
- <div class="ttc" id="classSVF_1_1PTData_html_a46fa3ec6462f3dda19549340281bb219"><div class="ttname"><a href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">SVF::PTData::rev</a></div><div class="ttdeci">bool rev</div><div class="ttdoc">Whether we maintain reverse points-to sets or not. </div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00107">AbstractPointsToDS.h:107</a></div></div>
1082
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00088">88</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1083
+ <div class="fragment"><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; {</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; assert(this-&gt;<a class="code" href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">rev</a> &amp;&amp; <span class="stringliteral">&quot;MutablePTData::getRevPts: constructed without reverse PT support!&quot;</span>);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">revPtsMap</a>[datum];</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_ad8c9fc1b290372ed9c68e54687724b64"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad8c9fc1b290372ed9c68e54687724b64">SVF::MutablePTData::revPtsMap</a></div><div class="ttdeci">RevPtsMap revPtsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00222">MutablePointsToDS.h:222</a></div></div>
1084
+ <div class="ttc" id="classSVF_1_1PTData_html_a46fa3ec6462f3dda19549340281bb219"><div class="ttname"><a href="classSVF_1_1PTData.html#a46fa3ec6462f3dda19549340281bb219">SVF::PTData::rev</a></div><div class="ttdeci">bool rev</div><div class="ttdoc">Whether we maintain reverse points-to sets or not. </div><div class="ttdef"><b>Definition:</b> <a href="AbstractPointsToDS_8h_source.html#l00141">AbstractPointsToDS.h:141</a></div></div>
1085
1085
  </div><!-- fragment -->
1086
1086
  </div>
1087
1087
  </div>
@@ -1115,8 +1115,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
1115
1115
 
1116
1116
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#af2f176027169e18730848c7a583aed93">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
1117
1117
 
1118
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00098">98</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1119
- <div class="fragment"><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; {</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">typename</span> PtsMap::value_type &amp;ppt : <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>) ppt.second.checkAndRemap();</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
1118
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00130">130</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1119
+ <div class="fragment"><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; {</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">typename</span> PtsMap::value_type &amp;ppt : <a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>) ppt.second.checkAndRemap();</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
1120
1120
  </div><!-- fragment -->
1121
1121
  </div>
1122
1122
  </div>
@@ -1160,11 +1160,11 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
1160
1160
 
1161
1161
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#af7aa22f11558c12ff16612174e2221dd">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
1162
1162
 
1163
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00068">68</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1164
- <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; <a class="code" href="classSVF_1_1MutablePTData.html#ad3175d9c02d8a9f6ad1752ccf3e468cb">addRevPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[srcKey], dstKey);</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_1MutablePTData.html#a08528faf56bf68fd0ddbb6c5ffa3d24f">unionPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[dstKey], <a class="code" href="classSVF_1_1MutablePTData.html#abe4230f3ba78fc660ea291fda36ffa62">getPts</a>(srcKey));</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_ad3175d9c02d8a9f6ad1752ccf3e468cb"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad3175d9c02d8a9f6ad1752ccf3e468cb">SVF::MutablePTData::addRevPts</a></div><div class="ttdeci">void addRevPts(const DataSet &amp;ptsData, const Key &amp;tgr)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00164">MutablePointsToDS.h:164</a></div></div>
1165
- <div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
1166
- <div class="ttc" id="classSVF_1_1MutablePTData_html_a08528faf56bf68fd0ddbb6c5ffa3d24f"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a08528faf56bf68fd0ddbb6c5ffa3d24f">SVF::MutablePTData::unionPts</a></div><div class="ttdeci">virtual bool unionPts(const Key &amp;dstKey, const Key &amp;srcKey) override</div><div class="ttdoc">Performs pts(dstVar) = pts(dstVar) U pts(srcVar). </div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00068">MutablePointsToDS.h:68</a></div></div>
1167
- <div class="ttc" id="classSVF_1_1MutablePTData_html_abe4230f3ba78fc660ea291fda36ffa62"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#abe4230f3ba78fc660ea291fda36ffa62">SVF::MutablePTData::getPts</a></div><div class="ttdeci">virtual const DataSet &amp; getPts(const Key &amp;var) override</div><div class="ttdoc">Get points-to set of var. </div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00051">MutablePointsToDS.h:51</a></div></div>
1163
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00100">100</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1164
+ <div class="fragment"><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; {</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#ad3175d9c02d8a9f6ad1752ccf3e468cb">addRevPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[srcKey], dstKey);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#a08528faf56bf68fd0ddbb6c5ffa3d24f">unionPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[dstKey], <a class="code" href="classSVF_1_1MutablePTData.html#abe4230f3ba78fc660ea291fda36ffa62">getPts</a>(srcKey));</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_ad3175d9c02d8a9f6ad1752ccf3e468cb"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad3175d9c02d8a9f6ad1752ccf3e468cb">SVF::MutablePTData::addRevPts</a></div><div class="ttdeci">void addRevPts(const DataSet &amp;ptsData, const Key &amp;tgr)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00196">MutablePointsToDS.h:196</a></div></div>
1165
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
1166
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_a08528faf56bf68fd0ddbb6c5ffa3d24f"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a08528faf56bf68fd0ddbb6c5ffa3d24f">SVF::MutablePTData::unionPts</a></div><div class="ttdeci">virtual bool unionPts(const Key &amp;dstKey, const Key &amp;srcKey) override</div><div class="ttdoc">Performs pts(dstVar) = pts(dstVar) U pts(srcVar). </div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00100">MutablePointsToDS.h:100</a></div></div>
1167
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_abe4230f3ba78fc660ea291fda36ffa62"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#abe4230f3ba78fc660ea291fda36ffa62">SVF::MutablePTData::getPts</a></div><div class="ttdeci">virtual const DataSet &amp; getPts(const Key &amp;var) override</div><div class="ttdoc">Get points-to set of var. </div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00083">MutablePointsToDS.h:83</a></div></div>
1168
1168
  </div><!-- fragment -->
1169
1169
  </div>
1170
1170
  </div>
@@ -1208,10 +1208,10 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
1208
1208
 
1209
1209
  <p>Implements <a class="el" href="classSVF_1_1PTData.html#aa8f281fbccfbdb13ab7671094d78a5c0">SVF::PTData&lt; Key, KeySet, Data, DataSet &gt;</a>.</p>
1210
1210
 
1211
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00074">74</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1212
- <div class="fragment"><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; {</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#ad3175d9c02d8a9f6ad1752ccf3e468cb">addRevPts</a>(srcDataSet,dstKey);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#a08528faf56bf68fd0ddbb6c5ffa3d24f">unionPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[dstKey], srcDataSet);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_ad3175d9c02d8a9f6ad1752ccf3e468cb"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad3175d9c02d8a9f6ad1752ccf3e468cb">SVF::MutablePTData::addRevPts</a></div><div class="ttdeci">void addRevPts(const DataSet &amp;ptsData, const Key &amp;tgr)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00164">MutablePointsToDS.h:164</a></div></div>
1213
- <div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00189">MutablePointsToDS.h:189</a></div></div>
1214
- <div class="ttc" id="classSVF_1_1MutablePTData_html_a08528faf56bf68fd0ddbb6c5ffa3d24f"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a08528faf56bf68fd0ddbb6c5ffa3d24f">SVF::MutablePTData::unionPts</a></div><div class="ttdeci">virtual bool unionPts(const Key &amp;dstKey, const Key &amp;srcKey) override</div><div class="ttdoc">Performs pts(dstVar) = pts(dstVar) U pts(srcVar). </div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00068">MutablePointsToDS.h:68</a></div></div>
1211
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00106">106</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1212
+ <div class="fragment"><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; {</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="classSVF_1_1MutablePTData.html#ad3175d9c02d8a9f6ad1752ccf3e468cb">addRevPts</a>(srcDataSet,dstKey);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1MutablePTData.html#a08528faf56bf68fd0ddbb6c5ffa3d24f">unionPts</a>(<a class="code" href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">ptsMap</a>[dstKey], srcDataSet);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div><div class="ttc" id="classSVF_1_1MutablePTData_html_ad3175d9c02d8a9f6ad1752ccf3e468cb"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#ad3175d9c02d8a9f6ad1752ccf3e468cb">SVF::MutablePTData::addRevPts</a></div><div class="ttdeci">void addRevPts(const DataSet &amp;ptsData, const Key &amp;tgr)</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00196">MutablePointsToDS.h:196</a></div></div>
1213
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_a5ee6e307acd4edbf4f7c2b063032d942"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a5ee6e307acd4edbf4f7c2b063032d942">SVF::MutablePTData::ptsMap</a></div><div class="ttdeci">PtsMap ptsMap</div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00221">MutablePointsToDS.h:221</a></div></div>
1214
+ <div class="ttc" id="classSVF_1_1MutablePTData_html_a08528faf56bf68fd0ddbb6c5ffa3d24f"><div class="ttname"><a href="classSVF_1_1MutablePTData.html#a08528faf56bf68fd0ddbb6c5ffa3d24f">SVF::MutablePTData::unionPts</a></div><div class="ttdeci">virtual bool unionPts(const Key &amp;dstKey, const Key &amp;srcKey) override</div><div class="ttdoc">Performs pts(dstVar) = pts(dstVar) U pts(srcVar). </div><div class="ttdef"><b>Definition:</b> <a href="MutablePointsToDS_8h_source.html#l00100">MutablePointsToDS.h:100</a></div></div>
1215
1215
  </div><!-- fragment -->
1216
1216
  </div>
1217
1217
  </div>
@@ -1252,8 +1252,8 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
1252
1252
  </div><div class="memdoc">
1253
1253
  <p>Internal union/add points-to helper methods. </p>
1254
1254
 
1255
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00149">149</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1256
- <div class="fragment"><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> dstDataSet |= srcDataSet;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }</div></div><!-- fragment -->
1255
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00181">181</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1256
+ <div class="fragment"><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> dstDataSet |= srcDataSet;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div></div><!-- fragment -->
1257
1257
  </div>
1258
1258
  </div>
1259
1259
  <h2 class="groupheader">Friends And Related Function Documentation</h2>
@@ -1279,7 +1279,7 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
1279
1279
  </table>
1280
1280
  </div><div class="memdoc">
1281
1281
 
1282
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00023">23</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1282
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00055">55</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1283
1283
 
1284
1284
  </div>
1285
1285
  </div>
@@ -1306,7 +1306,7 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
1306
1306
  </table>
1307
1307
  </div><div class="memdoc">
1308
1308
 
1309
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00189">189</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1309
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00221">221</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1310
1310
 
1311
1311
  </div>
1312
1312
  </div>
@@ -1332,7 +1332,7 @@ template&lt;typename Key, typename KeySet, typename Data, typename DataSet&gt; <
1332
1332
  </table>
1333
1333
  </div><div class="memdoc">
1334
1334
 
1335
- <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00190">190</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1335
+ <p class="definition">Definition at line <a class="el" href="MutablePointsToDS_8h_source.html#l00222">222</a> of file <a class="el" href="MutablePointsToDS_8h_source.html">MutablePointsToDS.h</a>.</p>
1336
1336
 
1337
1337
  </div>
1338
1338
  </div>