svf-tools 1.0.310 → 1.0.314

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 (447) hide show
  1. package/SVF-doxygen/html/html/AndersenHCD_8cpp_source.html +3 -3
  2. package/SVF-doxygen/html/html/AndersenHLCD_8cpp_source.html +2 -2
  3. package/SVF-doxygen/html/html/AndersenLCD_8cpp_source.html +3 -3
  4. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +3 -3
  5. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +6 -6
  6. package/SVF-doxygen/html/html/AndersenSFR_8h_source.html +6 -6
  7. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +21 -21
  8. package/SVF-doxygen/html/html/AndersenWaveDiffWithType_8cpp_source.html +4 -4
  9. package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +4 -4
  10. package/SVF-doxygen/html/html/Andersen_8cpp.html +1 -0
  11. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +58 -56
  12. package/SVF-doxygen/html/html/Andersen_8h_source.html +118 -118
  13. package/SVF-doxygen/html/html/CHG_8cpp.html +3 -3
  14. package/SVF-doxygen/html/html/CHG_8cpp_source.html +49 -50
  15. package/SVF-doxygen/html/html/CHG_8h_source.html +3 -3
  16. package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +17 -16
  17. package/SVF-doxygen/html/html/CPPUtil_8h_source.html +16 -16
  18. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +5 -5
  19. package/SVF-doxygen/html/html/CallGraphBuilder_8h_source.html +1 -1
  20. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +5 -5
  21. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +10 -10
  22. package/SVF-doxygen/html/html/ConsG_8h_source.html +7 -7
  23. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +8 -8
  24. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +5 -5
  25. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +13 -13
  26. package/SVF-doxygen/html/html/DCHG_8h_source.html +2 -2
  27. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +7 -7
  28. package/SVF-doxygen/html/html/DDAClient_8h_source.html +2 -2
  29. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +5 -5
  30. package/SVF-doxygen/html/html/DDAPass_8h_source.html +1 -1
  31. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +4 -4
  32. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +10 -10
  33. package/SVF-doxygen/html/html/DoubleFreeChecker_8h_source.html +1 -1
  34. package/SVF-doxygen/html/html/ExternalPAG_8cpp.html +1 -1
  35. package/SVF-doxygen/html/html/ExternalPAG_8cpp_source.html +8 -8
  36. package/SVF-doxygen/html/html/ExternalPAG_8h_source.html +1 -1
  37. package/SVF-doxygen/html/html/FSMPTA_8cpp_source.html +10 -10
  38. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +1 -1
  39. package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
  40. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +3 -3
  41. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +3 -3
  42. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +9 -9
  43. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +11 -11
  44. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +7 -7
  45. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +5 -5
  46. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +82 -81
  47. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +4 -4
  48. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +4 -4
  49. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
  50. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +1 -1
  51. package/SVF-doxygen/html/html/ICFGStat_8h_source.html +3 -3
  52. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +6 -6
  53. package/SVF-doxygen/html/html/ICFG_8h_source.html +6 -6
  54. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +4 -4
  55. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +2 -2
  56. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +2 -2
  57. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +1 -1
  58. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +4 -4
  59. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +1 -1
  60. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +1 -1
  61. package/SVF-doxygen/html/html/LocationSet_8h_source.html +1 -2
  62. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +6 -6
  63. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +1 -1
  64. package/SVF-doxygen/html/html/MHP_8cpp_source.html +13 -13
  65. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +4 -4
  66. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +1 -1
  67. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +1 -1
  68. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +1 -1
  69. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +5 -5
  70. package/SVF-doxygen/html/html/MTA_8cpp_source.html +5 -5
  71. package/SVF-doxygen/html/html/MTA_8h_source.html +1 -1
  72. package/SVF-doxygen/html/html/MemModelBuilder_8cpp.html +90 -0
  73. package/SVF-doxygen/html/html/MemModelBuilder_8cpp_source.html +205 -0
  74. package/SVF-doxygen/html/html/MemModelBuilder_8h.html +97 -0
  75. package/SVF-doxygen/html/html/MemModelBuilder_8h_source.html +105 -0
  76. package/SVF-doxygen/html/html/MemModel_8cpp_source.html +9 -53
  77. package/SVF-doxygen/html/html/MemModel_8h_source.html +44 -44
  78. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +17 -17
  79. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +3 -3
  80. package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +13 -13
  81. package/SVF-doxygen/html/html/NodeIDAllocator_8h_source.html +12 -12
  82. package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +2 -2
  83. package/SVF-doxygen/html/html/Options_8cpp_source.html +1 -2
  84. package/SVF-doxygen/html/html/Options_8h_source.html +2 -2
  85. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +1 -1
  86. package/SVF-doxygen/html/html/PAGBuilder_8cpp_source.html +25 -25
  87. package/SVF-doxygen/html/html/PAGBuilder_8h_source.html +1 -1
  88. package/SVF-doxygen/html/html/PAGEdge_8h_source.html +2 -2
  89. package/SVF-doxygen/html/html/PAGNode_8h_source.html +11 -11
  90. package/SVF-doxygen/html/html/PAG_8cpp_source.html +34 -34
  91. package/SVF-doxygen/html/html/PAG_8h_source.html +41 -41
  92. package/SVF-doxygen/html/html/PCG_8cpp_source.html +8 -8
  93. package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
  94. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +8 -8
  95. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +2 -2
  96. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +24 -24
  97. package/SVF-doxygen/html/html/PTAType_8h_source.html +4 -4
  98. package/SVF-doxygen/html/html/PathCondAllocator_8cpp_source.html +1 -1
  99. package/SVF-doxygen/html/html/PathCondAllocator_8h_source.html +1 -1
  100. package/SVF-doxygen/html/html/PersistentPointsToCache_8h_source.html +34 -33
  101. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +7 -7
  102. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +15 -15
  103. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +66 -66
  104. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +15 -15
  105. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +7 -7
  106. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +3 -3
  107. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +4 -4
  108. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
  109. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +10 -10
  110. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +8 -8
  111. package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +5 -5
  112. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +9 -9
  113. package/SVF-doxygen/html/html/SVFG_8h_source.html +7 -7
  114. package/SVF-doxygen/html/html/SVFModule_8cpp.html +1 -1
  115. package/SVF-doxygen/html/html/SVFModule_8cpp_source.html +6 -5
  116. package/SVF-doxygen/html/html/SVFModule_8h.html +3 -0
  117. package/SVF-doxygen/html/html/SVFModule_8h_source.html +53 -46
  118. package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +1 -1
  119. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +8 -8
  120. package/SVF-doxygen/html/html/SrcSnkDDA_8cpp_source.html +6 -6
  121. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
  122. package/SVF-doxygen/html/html/Steensgaard_8cpp_source.html +1 -1
  123. package/SVF-doxygen/html/html/Steensgaard_8h_source.html +2 -2
  124. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +5 -55
  125. package/SVF-doxygen/html/html/SymbolTableInfo_8h.html +0 -4
  126. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +88 -101
  127. package/SVF-doxygen/html/html/TCT_8cpp_source.html +11 -11
  128. package/SVF-doxygen/html/html/TCT_8h_source.html +10 -10
  129. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +5 -5
  130. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +1 -1
  131. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +3 -3
  132. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +8 -8
  133. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +7 -7
  134. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8h_source.html +2 -2
  135. package/SVF-doxygen/html/html/VFGNode_8h_source.html +2 -2
  136. package/SVF-doxygen/html/html/VFG_8cpp_source.html +6 -6
  137. package/SVF-doxygen/html/html/VFG_8h_source.html +6 -6
  138. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +7 -7
  139. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +13 -13
  140. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +11 -11
  141. package/SVF-doxygen/html/html/WPAPass_8h_source.html +1 -1
  142. package/SVF-doxygen/html/html/annotated.html +135 -136
  143. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
  144. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
  145. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +1 -1
  146. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +1 -1
  147. package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +2 -2
  148. package/SVF-doxygen/html/html/classSVF_1_1AddrPE.html +1 -1
  149. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +1 -1
  150. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +2 -2
  151. package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +1 -1
  152. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +228 -228
  153. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +1 -1
  154. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +60 -58
  155. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD-members.html +1 -1
  156. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +43 -43
  157. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD-members.html +1 -1
  158. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +23 -23
  159. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD-members.html +1 -1
  160. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +52 -52
  161. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +1 -1
  162. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +38 -38
  163. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +1 -1
  164. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +17 -17
  165. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +31 -31
  166. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +1 -1
  167. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +38 -38
  168. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiffWithType-members.html +1 -1
  169. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiffWithType.html +31 -31
  170. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +1 -1
  171. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +73 -72
  172. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPPE.html +1 -1
  173. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
  174. package/SVF-doxygen/html/html/classSVF_1_1CHGraph-members.html +1 -1
  175. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +123 -120
  176. package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode.html +1 -1
  177. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +3 -3
  178. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  179. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjPN.html +1 -1
  180. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjPN.html +1 -1
  181. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjPN.html +1 -1
  182. package/SVF-doxygen/html/html/classSVF_1_1CmpPE.html +1 -1
  183. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
  184. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +115 -115
  185. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +15 -15
  186. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +18 -18
  187. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +13 -13
  188. package/SVF-doxygen/html/html/classSVF_1_1CopyPE.html +1 -1
  189. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +1 -1
  190. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +22 -22
  191. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +3 -3
  192. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +9 -9
  193. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +4 -4
  194. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +3 -3
  195. package/SVF-doxygen/html/html/classSVF_1_1DummyObjPN.html +1 -1
  196. package/SVF-doxygen/html/html/classSVF_1_1DummyValPN.html +1 -1
  197. package/SVF-doxygen/html/html/classSVF_1_1ExternalPAG.html +8 -8
  198. package/SVF-doxygen/html/html/classSVF_1_1FIObjPN.html +1 -1
  199. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +2 -2
  200. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +10 -10
  201. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +44 -44
  202. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +24 -24
  203. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +32 -32
  204. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +5 -5
  205. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +1 -1
  206. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +1 -1
  207. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
  208. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
  209. package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode.html +1 -1
  210. package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode.html +1 -1
  211. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +5 -5
  212. package/SVF-doxygen/html/html/classSVF_1_1GenericGraph.html +47 -47
  213. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +58 -57
  214. package/SVF-doxygen/html/html/classSVF_1_1GepObjPN.html +5 -5
  215. package/SVF-doxygen/html/html/classSVF_1_1GepPE.html +1 -1
  216. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +1 -1
  217. package/SVF-doxygen/html/html/classSVF_1_1GepValPN.html +1 -1
  218. package/SVF-doxygen/html/html/classSVF_1_1GlobalBlockNode.html +1 -1
  219. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +13 -13
  220. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +3 -3
  221. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
  222. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +6 -6
  223. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +2 -2
  224. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +3 -3
  225. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
  226. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  227. package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode.html +1 -1
  228. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +1 -1
  229. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  230. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +17 -17
  231. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +3 -3
  232. package/SVF-doxygen/html/html/classSVF_1_1LoadPE.html +1 -1
  233. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +1 -1
  234. package/SVF-doxygen/html/html/classSVF_1_1LocObjTypeInfo.html +1 -1
  235. package/SVF-doxygen/html/html/classSVF_1_1LocSymTableInfo.html +2 -2
  236. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +1 -1
  237. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +8 -8
  238. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +1 -1
  239. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +15 -15
  240. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +24 -24
  241. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
  242. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +1 -1
  243. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +5 -5
  244. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +3 -3
  245. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +4 -4
  246. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +21 -21
  247. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +5 -5
  248. package/SVF-doxygen/html/html/classSVF_1_1MemModelBuilder-members.html +95 -0
  249. package/SVF-doxygen/html/html/classSVF_1_1MemModelBuilder.html +711 -0
  250. package/SVF-doxygen/html/html/classSVF_1_1MemObj-members.html +7 -10
  251. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +92 -199
  252. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +3 -3
  253. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator-members.html +1 -1
  254. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator.html +7 -7
  255. package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +34 -34
  256. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +3 -3
  257. package/SVF-doxygen/html/html/classSVF_1_1ObjPN.html +3 -3
  258. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo-members.html +8 -10
  259. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +68 -168
  260. package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +1 -1
  261. package/SVF-doxygen/html/html/classSVF_1_1Options.html +5 -5
  262. package/SVF-doxygen/html/html/classSVF_1_1PAG.html +67 -67
  263. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilder.html +41 -41
  264. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +3 -3
  265. package/SVF-doxygen/html/html/classSVF_1_1PAGEdge.html +5 -5
  266. package/SVF-doxygen/html/html/classSVF_1_1PAGNode.html +10 -10
  267. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +15 -15
  268. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
  269. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +16 -16
  270. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +4 -4
  271. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +32 -32
  272. package/SVF-doxygen/html/html/classSVF_1_1PersistentDFPTData.html +6 -6
  273. package/SVF-doxygen/html/html/classSVF_1_1PersistentDiffPTData.html +5 -5
  274. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +10 -10
  275. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache-members.html +39 -38
  276. package/SVF-doxygen/html/html/classSVF_1_1PersistentPointsToCache.html +153 -116
  277. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +21 -21
  278. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +3 -3
  279. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +2 -2
  280. package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode.html +1 -1
  281. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  282. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +2 -2
  283. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +8 -8
  284. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +4 -4
  285. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +35 -35
  286. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +7 -7
  287. package/SVF-doxygen/html/html/classSVF_1_1SVFModule-members.html +1 -0
  288. package/SVF-doxygen/html/html/classSVF_1_1SVFModule.html +113 -80
  289. package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +3 -3
  290. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +16 -16
  291. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +5 -5
  292. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +1 -1
  293. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +14 -14
  294. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +2 -2
  295. package/SVF-doxygen/html/html/classSVF_1_1StorePE.html +1 -1
  296. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +1 -1
  297. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo-members.html +49 -55
  298. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +300 -587
  299. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +28 -28
  300. package/SVF-doxygen/html/html/classSVF_1_1TCTNode.html +1 -1
  301. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +1 -1
  302. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +3 -3
  303. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +3 -3
  304. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +1 -1
  305. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +11 -11
  306. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +8 -8
  307. package/SVF-doxygen/html/html/classSVF_1_1TypeSystem.html +1 -1
  308. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPPE.html +1 -1
  309. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
  310. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +14 -14
  311. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
  312. package/SVF-doxygen/html/html/classSVF_1_1ValPN.html +2 -2
  313. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +2 -2
  314. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +35 -35
  315. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +11 -11
  316. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive_1_1SCC.html +3 -3
  317. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +11 -11
  318. package/SVF-doxygen/html/html/classes.html +91 -91
  319. package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
  320. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  321. package/SVF-doxygen/html/html/dir_5840dc76920ee0f379cd88b55fa041fd.html +1 -1
  322. package/SVF-doxygen/html/html/dir_770a542efe75a1b68c109cb4e4290224.html +1 -1
  323. package/SVF-doxygen/html/html/files.html +2 -2
  324. package/SVF-doxygen/html/html/functions_0x7e.html +5 -8
  325. package/SVF-doxygen/html/html/functions_a.html +13 -10
  326. package/SVF-doxygen/html/html/functions_b.html +1 -1
  327. package/SVF-doxygen/html/html/functions_c.html +38 -36
  328. package/SVF-doxygen/html/html/functions_e.html +1 -1
  329. package/SVF-doxygen/html/html/functions_f.html +3 -3
  330. package/SVF-doxygen/html/html/functions_func.html +12 -9
  331. package/SVF-doxygen/html/html/functions_func_0x7e.html +5 -8
  332. package/SVF-doxygen/html/html/functions_func_b.html +1 -1
  333. package/SVF-doxygen/html/html/functions_func_c.html +28 -26
  334. package/SVF-doxygen/html/html/functions_func_e.html +1 -1
  335. package/SVF-doxygen/html/html/functions_func_g.html +11 -13
  336. package/SVF-doxygen/html/html/functions_func_h.html +3 -3
  337. package/SVF-doxygen/html/html/functions_func_i.html +8 -7
  338. package/SVF-doxygen/html/html/functions_func_l.html +2 -8
  339. package/SVF-doxygen/html/html/functions_func_m.html +4 -1
  340. package/SVF-doxygen/html/html/functions_func_p.html +1 -1
  341. package/SVF-doxygen/html/html/functions_func_s.html +8 -5
  342. package/SVF-doxygen/html/html/functions_func_v.html +0 -3
  343. package/SVF-doxygen/html/html/functions_g.html +6 -8
  344. package/SVF-doxygen/html/html/functions_h.html +3 -3
  345. package/SVF-doxygen/html/html/functions_i.html +15 -14
  346. package/SVF-doxygen/html/html/functions_l.html +6 -10
  347. package/SVF-doxygen/html/html/functions_m.html +5 -1
  348. package/SVF-doxygen/html/html/functions_n.html +4 -4
  349. package/SVF-doxygen/html/html/functions_o.html +3 -3
  350. package/SVF-doxygen/html/html/functions_p.html +13 -9
  351. package/SVF-doxygen/html/html/functions_r.html +1 -1
  352. package/SVF-doxygen/html/html/functions_rela.html +3 -0
  353. package/SVF-doxygen/html/html/functions_s.html +20 -14
  354. package/SVF-doxygen/html/html/functions_t.html +4 -4
  355. package/SVF-doxygen/html/html/functions_u.html +3 -3
  356. package/SVF-doxygen/html/html/functions_v.html +2 -5
  357. package/SVF-doxygen/html/html/functions_vars_l.html +1 -1
  358. package/SVF-doxygen/html/html/functions_vars_s.html +2 -1
  359. package/SVF-doxygen/html/html/functions_w.html +3 -1
  360. package/SVF-doxygen/html/html/hierarchy.html +127 -128
  361. package/SVF-doxygen/html/html/mta_8cpp.html +1 -1
  362. package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
  363. package/SVF-doxygen/html/html/namespaceSVF.html +1 -3
  364. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +1 -1
  365. package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +40 -39
  366. package/SVF-doxygen/html/html/saber_8cpp.html +1 -1
  367. package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
  368. package/SVF-doxygen/html/html/search/all_1.js +3 -2
  369. package/SVF-doxygen/html/html/search/all_10.js +9 -9
  370. package/SVF-doxygen/html/html/search/all_12.js +2 -2
  371. package/SVF-doxygen/html/html/search/all_13.js +9 -8
  372. package/SVF-doxygen/html/html/search/all_14.js +6 -6
  373. package/SVF-doxygen/html/html/search/all_15.js +2 -2
  374. package/SVF-doxygen/html/html/search/all_16.js +0 -1
  375. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  376. package/SVF-doxygen/html/html/search/all_1b.js +3 -4
  377. package/SVF-doxygen/html/html/search/all_2.js +1 -1
  378. package/SVF-doxygen/html/html/search/all_3.js +11 -10
  379. package/SVF-doxygen/html/html/search/all_5.js +1 -1
  380. package/SVF-doxygen/html/html/search/all_6.js +1 -1
  381. package/SVF-doxygen/html/html/search/all_7.js +2 -2
  382. package/SVF-doxygen/html/html/search/all_8.js +3 -3
  383. package/SVF-doxygen/html/html/search/all_9.js +4 -3
  384. package/SVF-doxygen/html/html/search/all_c.js +4 -7
  385. package/SVF-doxygen/html/html/search/all_d.js +4 -1
  386. package/SVF-doxygen/html/html/search/all_e.js +2 -2
  387. package/SVF-doxygen/html/html/search/all_f.js +1 -1
  388. package/SVF-doxygen/html/html/search/classes_9.js +1 -3
  389. package/SVF-doxygen/html/html/search/classes_a.js +1 -0
  390. package/SVF-doxygen/html/html/search/files_8.js +1 -3
  391. package/SVF-doxygen/html/html/search/files_9.js +2 -0
  392. package/SVF-doxygen/html/html/search/functions_0.js +3 -2
  393. package/SVF-doxygen/html/html/search/functions_1.js +1 -1
  394. package/SVF-doxygen/html/html/search/functions_10.js +1 -0
  395. package/SVF-doxygen/html/html/search/functions_13.js +0 -1
  396. package/SVF-doxygen/html/html/search/functions_16.js +3 -4
  397. package/SVF-doxygen/html/html/search/functions_2.js +10 -9
  398. package/SVF-doxygen/html/html/search/functions_4.js +1 -1
  399. package/SVF-doxygen/html/html/search/functions_6.js +2 -2
  400. package/SVF-doxygen/html/html/search/functions_7.js +3 -3
  401. package/SVF-doxygen/html/html/search/functions_8.js +2 -1
  402. package/SVF-doxygen/html/html/search/functions_a.js +1 -3
  403. package/SVF-doxygen/html/html/search/functions_b.js +2 -1
  404. package/SVF-doxygen/html/html/search/functions_e.js +1 -1
  405. package/SVF-doxygen/html/html/search/related_3.js +1 -0
  406. package/SVF-doxygen/html/html/search/variables_13.js +1 -1
  407. package/SVF-doxygen/html/html/search/variables_14.js +2 -2
  408. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  409. package/SVF-doxygen/html/html/search/variables_c.js +1 -1
  410. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  411. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CHGraph_01_5_01_4.html +12 -12
  412. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  413. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01OfflineConsG_01_5_01_4.html +1 -1
  414. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PAG_01_5_01_4.html +17 -17
  415. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +2 -2
  416. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01TCT_01_5_01_4.html +1 -1
  417. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_4_01_4.html +14 -14
  418. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1GenericGraph_3_01NodeTy_00_01EdgeTy_01_4_01_5_4.html +20 -20
  419. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1GenericNode_3_01NodeTy_00_01EdgeTy_01_4_01_5_01_4.html +16 -16
  420. package/SVF-doxygen/html/html/svf-ex_8cpp.html +8 -7
  421. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +6 -5
  422. package/SVF-doxygen/html/html/wpa_8cpp.html +1 -1
  423. package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
  424. package/include/Graphs/GenericGraph.h +5 -8
  425. package/include/MemoryModel/MemModel.h +5 -21
  426. package/include/MemoryModel/PersistentPointsToCache.h +13 -7
  427. package/include/MemoryModel/PointerAnalysisImpl.h +1 -0
  428. package/include/SVF-FE/CHG.h +1 -1
  429. package/include/SVF-FE/MemModelBuilder.h +102 -0
  430. package/include/SVF-FE/SymbolTableInfo.h +12 -79
  431. package/include/Util/NodeIDAllocator.h +1 -1
  432. package/include/Util/SVFModule.h +16 -0
  433. package/include/WPA/Andersen.h +2 -7
  434. package/lib/Graphs/PAG.cpp +3 -10
  435. package/lib/MemoryModel/MemModel.cpp +10 -436
  436. package/lib/SVF-FE/CHG.cpp +0 -6
  437. package/lib/SVF-FE/CPPUtil.cpp +2 -0
  438. package/lib/SVF-FE/MemModelBuilder.cpp +616 -0
  439. package/lib/SVF-FE/SymbolTableInfo.cpp +10 -453
  440. package/lib/Util/NodeIDAllocator.cpp +2 -1
  441. package/lib/Util/Options.cpp +2 -10
  442. package/lib/Util/SVFModule.cpp +3 -2
  443. package/lib/WPA/Andersen.cpp +13 -1
  444. package/package.json +1 -1
  445. package/tools/Example/svf-ex.cpp +6 -3
  446. package/include/SVF-FE/LocMemModel.h +0 -35
  447. package/lib/SVF-FE/LocMemModel.cpp +0 -31
@@ -348,7 +348,7 @@ $(function() {
348
348
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a25c68f9d2b88437778e854ff0d741d1b">writeToFile</a>(const std::string &amp;filename)</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
349
349
  <tr><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#aa0ca07204a31004fb876c6e18d1ac1ca">writeToModule</a>()</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
350
350
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1Andersen.html#a15218a84e653baf2cd7f1dc95ccfb77d">~Andersen</a>()</td><td class="entry"><a class="el" href="classSVF_1_1Andersen.html">SVF::Andersen</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
351
- <tr><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html#abd9b91b2cfe1e30ab3bdb6ac26466c1f">~AndersenBase</a>()</td><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html">SVF::AndersenBase</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
351
+ <tr><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html#a8da8746b38c55561d3f6904e8fd0a9aa">~AndersenBase</a>() override</td><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html">SVF::AndersenBase</a></td><td class="entry"></td></tr>
352
352
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a06f211184d3e75f0ca351a4b8092a478">~BVDataPTAImpl</a>()</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
353
353
  <tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a4aeca84393c5586eea7a480737daf17c">~PointerAnalysis</a>()</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
354
354
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#ac88ef07e88b453a1b35684b59a7dd04a">~WPASolver</a>()</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver&lt; GraphType &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
@@ -149,9 +149,9 @@ Public Member Functions</h2></td></tr>
149
149
  <tr class="memitem:a16f177cfcb4a203a55c954c05125f267 inherit pub_methods_classSVF_1_1AndersenBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AndersenBase.html#a16f177cfcb4a203a55c954c05125f267">AndersenBase</a> (<a class="el" href="classSVF_1_1PAG.html">PAG</a> *_pag, <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a> type=<a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a9a25374fb6d2218c6c59de0482548f49">Andersen_BASE</a>, bool alias_check=true)</td></tr>
150
150
  <tr class="memdesc:a16f177cfcb4a203a55c954c05125f267 inherit pub_methods_classSVF_1_1AndersenBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <a href="classSVF_1_1AndersenBase.html#a16f177cfcb4a203a55c954c05125f267">More...</a><br /></td></tr>
151
151
  <tr class="separator:a16f177cfcb4a203a55c954c05125f267 inherit pub_methods_classSVF_1_1AndersenBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
152
- <tr class="memitem:abd9b91b2cfe1e30ab3bdb6ac26466c1f inherit pub_methods_classSVF_1_1AndersenBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AndersenBase.html#abd9b91b2cfe1e30ab3bdb6ac26466c1f">~AndersenBase</a> ()</td></tr>
153
- <tr class="memdesc:abd9b91b2cfe1e30ab3bdb6ac26466c1f inherit pub_methods_classSVF_1_1AndersenBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <a href="classSVF_1_1AndersenBase.html#abd9b91b2cfe1e30ab3bdb6ac26466c1f">More...</a><br /></td></tr>
154
- <tr class="separator:abd9b91b2cfe1e30ab3bdb6ac26466c1f inherit pub_methods_classSVF_1_1AndersenBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
152
+ <tr class="memitem:a8da8746b38c55561d3f6904e8fd0a9aa inherit pub_methods_classSVF_1_1AndersenBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AndersenBase.html#a8da8746b38c55561d3f6904e8fd0a9aa">~AndersenBase</a> () override</td></tr>
153
+ <tr class="memdesc:a8da8746b38c55561d3f6904e8fd0a9aa inherit pub_methods_classSVF_1_1AndersenBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <a href="classSVF_1_1AndersenBase.html#a8da8746b38c55561d3f6904e8fd0a9aa">More...</a><br /></td></tr>
154
+ <tr class="separator:a8da8746b38c55561d3f6904e8fd0a9aa inherit pub_methods_classSVF_1_1AndersenBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
155
155
  <tr class="memitem:a944966086ecb716184c8cdcc43db5751 inherit pub_methods_classSVF_1_1AndersenBase"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AndersenBase.html#a944966086ecb716184c8cdcc43db5751">analyze</a> () override</td></tr>
156
156
  <tr class="memdesc:a944966086ecb716184c8cdcc43db5751 inherit pub_methods_classSVF_1_1AndersenBase"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classSVF_1_1Andersen.html">Andersen</a> analysis. <a href="classSVF_1_1AndersenBase.html#a944966086ecb716184c8cdcc43db5751">More...</a><br /></td></tr>
157
157
  <tr class="separator:a944966086ecb716184c8cdcc43db5751 inherit pub_methods_classSVF_1_1AndersenBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -803,7 +803,7 @@ Additional Inherited Members</h2></td></tr>
803
803
  <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
804
804
  <div class="textblock"><p>Wave propagation with diff points-to set. </p>
805
805
 
806
- <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00425">425</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
806
+ <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00420">420</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
807
807
  </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
808
808
  <a id="a6a8a801ecca92785ec937cebc8732bd1"></a>
809
809
  <h2 class="memtitle"><span class="permalink"><a href="#a6a8a801ecca92785ec937cebc8732bd1">&#9670;&nbsp;</a></span>AndersenWaveDiff()</h2>
@@ -845,8 +845,8 @@ Additional Inherited Members</h2></td></tr>
845
845
  </table>
846
846
  </div><div class="memdoc">
847
847
 
848
- <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00433">433</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
849
- <div class="fragment"><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;: <a class="code" href="classSVF_1_1Andersen.html#aed87dd498ba5daf263624a74118ef007">Andersen</a>(_pag, type, alias_check) {}</div><div class="ttc" id="classSVF_1_1Andersen_html_aed87dd498ba5daf263624a74118ef007"><div class="ttname"><a href="classSVF_1_1Andersen.html#aed87dd498ba5daf263624a74118ef007">SVF::Andersen::Andersen</a></div><div class="ttdeci">Andersen(PAG *_pag, PTATY type=Andersen_WPA, bool alias_check=true)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00164">Andersen.h:164</a></div></div>
848
+ <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00428">428</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
849
+ <div class="fragment"><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;: <a class="code" href="classSVF_1_1Andersen.html#aed87dd498ba5daf263624a74118ef007">Andersen</a>(_pag, type, alias_check) {}</div><div class="ttc" id="classSVF_1_1Andersen_html_aed87dd498ba5daf263624a74118ef007"><div class="ttname"><a href="classSVF_1_1Andersen.html#aed87dd498ba5daf263624a74118ef007">SVF::Andersen::Andersen</a></div><div class="ttdeci">Andersen(PAG *_pag, PTATY type=Andersen_WPA, bool alias_check=true)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00159">Andersen.h:159</a></div></div>
850
850
  </div><!-- fragment -->
851
851
  </div>
852
852
  </div>
@@ -877,10 +877,10 @@ Additional Inherited Members</h2></td></tr>
877
877
 
878
878
  <p>Create an singleton instance directly instead of invoking llvm pass manager. </p>
879
879
 
880
- <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00436">436</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
881
- <div class="fragment"><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; {</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>==<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; {</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1AndersenWaveDiff.html#a6a8a801ecca92785ec937cebc8732bd1">AndersenWaveDiff</a>(_pag, <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">AndersenWaveDiff_WPA</a>, <span class="keyword">false</span>);</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>-&gt;<a class="code" href="classSVF_1_1AndersenBase.html#a944966086ecb716184c8cdcc43db5751">analyze</a>();</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; }</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>;</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; }</div><div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_a6a8a801ecca92785ec937cebc8732bd1"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#a6a8a801ecca92785ec937cebc8732bd1">SVF::AndersenWaveDiff::AndersenWaveDiff</a></div><div class="ttdeci">AndersenWaveDiff(PAG *_pag, PTATY type=AndersenWaveDiff_WPA, bool alias_check=true)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00433">Andersen.h:433</a></div></div>
882
- <div class="ttc" id="classSVF_1_1AndersenBase_html_a944966086ecb716184c8cdcc43db5751"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#a944966086ecb716184c8cdcc43db5751">SVF::AndersenBase::analyze</a></div><div class="ttdeci">virtual void analyze() override</div><div class="ttdoc">Andersen analysis. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00094">Andersen.cpp:94</a></div></div>
883
- <div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_add4dcb6d74a8ce8747bcac5f740cd672"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">SVF::AndersenWaveDiff::diffWave</a></div><div class="ttdeci">static AndersenWaveDiff * diffWave</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00430">Andersen.h:430</a></div></div>
880
+ <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00431">431</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
881
+ <div class="fragment"><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; {</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>==<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; {</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a> = <span class="keyword">new</span> <a class="code" href="classSVF_1_1AndersenWaveDiff.html#a6a8a801ecca92785ec937cebc8732bd1">AndersenWaveDiff</a>(_pag, <a class="code" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">AndersenWaveDiff_WPA</a>, <span class="keyword">false</span>);</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>-&gt;<a class="code" href="classSVF_1_1AndersenBase.html#a944966086ecb716184c8cdcc43db5751">analyze</a>();</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>;</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>;</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; }</div><div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_a6a8a801ecca92785ec937cebc8732bd1"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#a6a8a801ecca92785ec937cebc8732bd1">SVF::AndersenWaveDiff::AndersenWaveDiff</a></div><div class="ttdeci">AndersenWaveDiff(PAG *_pag, PTATY type=AndersenWaveDiff_WPA, bool alias_check=true)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00428">Andersen.h:428</a></div></div>
882
+ <div class="ttc" id="classSVF_1_1AndersenBase_html_a944966086ecb716184c8cdcc43db5751"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#a944966086ecb716184c8cdcc43db5751">SVF::AndersenBase::analyze</a></div><div class="ttdeci">virtual void analyze() override</div><div class="ttdoc">Andersen analysis. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00106">Andersen.cpp:106</a></div></div>
883
+ <div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_add4dcb6d74a8ce8747bcac5f740cd672"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">SVF::AndersenWaveDiff::diffWave</a></div><div class="ttdeci">static AndersenWaveDiff * diffWave</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00425">Andersen.h:425</a></div></div>
884
884
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">SVF::PointerAnalysis::AndersenWaveDiff_WPA</a></div><div class="ttdoc">Diff wave propagation andersen-style WPA. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00072">PointerAnalysis.h:72</a></div></div>
885
885
  </div><!-- fragment -->
886
886
  </div>
@@ -913,7 +913,7 @@ Additional Inherited Members</h2></td></tr>
913
913
  <p>Reimplemented from <a class="el" href="classSVF_1_1Andersen.html#ab069683dd6ca563113efbde2813ab35e">SVF::Andersen</a>.</p>
914
914
 
915
915
  <p class="definition">Definition at line <a class="el" href="AndersenWaveDiff_8cpp_source.html#l00136">136</a> of file <a class="el" href="AndersenWaveDiff_8cpp_source.html">AndersenWaveDiff.cpp</a>.</p>
916
- <div class="fragment"><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;{</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId = node-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="classSVF_1_1Andersen.html#a7e26ac6fb40684694f7ff2aadfde8bc7">computeDiffPts</a>(nodeId);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1Andersen.html#a106691684d8e7a69157d423393d83d66">getDiffPts</a>(nodeId).<a class="code" href="cuddInt_8c.html#a5beb39637a978181c7c17714ac96672e">empty</a>())</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; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1ConstraintEdge.html">ConstraintEdge</a>* edge : node-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#ab77173aa8af6155b569f20ff0cdcec72">getCopyOutEdges</a>())</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CopyCGEdge.html">CopyCGEdge</a>* copyEdge = SVFUtil::dyn_cast&lt;CopyCGEdge&gt;(edge))</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#a3a5b952c0c2fe2be1b9a6fcfeeba2c37">processCopy</a>(nodeId, copyEdge);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1ConstraintEdge.html">ConstraintEdge</a>* edge : node-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a19d3d2c996ba821227a836717e5443c8">getGepOutEdges</a>())</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1GepCGEdge.html">GepCGEdge</a>* gepEdge = SVFUtil::dyn_cast&lt;GepCGEdge&gt;(edge))</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="classSVF_1_1Andersen.html#aa697d4a6fe09dd6e50abb09228b3567f">processGep</a>(nodeId, gepEdge);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;}</div><div class="ttc" id="classSVF_1_1Andersen_html_a106691684d8e7a69157d423393d83d66"><div class="ttname"><a href="classSVF_1_1Andersen.html#a106691684d8e7a69157d423393d83d66">SVF::Andersen::getDiffPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getDiffPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00282">Andersen.h:282</a></div></div>
916
+ <div class="fragment"><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;{</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId = node-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>();</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="classSVF_1_1Andersen.html#a7e26ac6fb40684694f7ff2aadfde8bc7">computeDiffPts</a>(nodeId);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1Andersen.html#a106691684d8e7a69157d423393d83d66">getDiffPts</a>(nodeId).<a class="code" href="cuddInt_8c.html#a5beb39637a978181c7c17714ac96672e">empty</a>())</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; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1ConstraintEdge.html">ConstraintEdge</a>* edge : node-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#ab77173aa8af6155b569f20ff0cdcec72">getCopyOutEdges</a>())</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1CopyCGEdge.html">CopyCGEdge</a>* copyEdge = SVFUtil::dyn_cast&lt;CopyCGEdge&gt;(edge))</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#a3a5b952c0c2fe2be1b9a6fcfeeba2c37">processCopy</a>(nodeId, copyEdge);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1ConstraintEdge.html">ConstraintEdge</a>* edge : node-&gt;<a class="code" href="classSVF_1_1ConstraintNode.html#a19d3d2c996ba821227a836717e5443c8">getGepOutEdges</a>())</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1GepCGEdge.html">GepCGEdge</a>* gepEdge = SVFUtil::dyn_cast&lt;GepCGEdge&gt;(edge))</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="classSVF_1_1Andersen.html#aa697d4a6fe09dd6e50abb09228b3567f">processGep</a>(nodeId, gepEdge);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; }</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;}</div><div class="ttc" id="classSVF_1_1Andersen_html_a106691684d8e7a69157d423393d83d66"><div class="ttname"><a href="classSVF_1_1Andersen.html#a106691684d8e7a69157d423393d83d66">SVF::Andersen::getDiffPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getDiffPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00277">Andersen.h:277</a></div></div>
917
917
  <div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
918
918
  <div class="ttc" id="classSVF_1_1GepCGEdge_html"><div class="ttname"><a href="classSVF_1_1GepCGEdge.html">SVF::GepCGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00225">ConsGEdge.h:225</a></div></div>
919
919
  <div class="ttc" id="cuddInt_8c_html_a5beb39637a978181c7c17714ac96672e"><div class="ttname"><a href="cuddInt_8c.html#a5beb39637a978181c7c17714ac96672e">empty</a></div><div class="ttdeci">static DdNode * empty</div><div class="ttdef"><b>Definition:</b> <a href="cuddInt_8c_source.html#l28567">cuddInt.c:28567</a></div></div>
@@ -921,10 +921,10 @@ Additional Inherited Members</h2></td></tr>
921
921
  <div class="ttc" id="classSVF_1_1CopyCGEdge_html"><div class="ttname"><a href="classSVF_1_1CopyCGEdge.html">SVF::CopyCGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00124">ConsGEdge.h:124</a></div></div>
922
922
  <div class="ttc" id="classSVF_1_1ConstraintNode_html_ab77173aa8af6155b569f20ff0cdcec72"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#ab77173aa8af6155b569f20ff0cdcec72">SVF::ConstraintNode::getCopyOutEdges</a></div><div class="ttdeci">const ConstraintEdge::ConstraintEdgeSetTy &amp; getCopyOutEdges() const</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00128">ConsGNode.h:128</a></div></div>
923
923
  <div class="ttc" id="classSVF_1_1ConstraintNode_html_a19d3d2c996ba821227a836717e5443c8"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#a19d3d2c996ba821227a836717e5443c8">SVF::ConstraintNode::getGepOutEdges</a></div><div class="ttdeci">const ConstraintEdge::ConstraintEdgeSetTy &amp; getGepOutEdges() const</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00136">ConsGNode.h:136</a></div></div>
924
- <div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00164">GenericGraph.h:164</a></div></div>
925
- <div class="ttc" id="classSVF_1_1Andersen_html_a7e26ac6fb40684694f7ff2aadfde8bc7"><div class="ttname"><a href="classSVF_1_1Andersen.html#a7e26ac6fb40684694f7ff2aadfde8bc7">SVF::Andersen::computeDiffPts</a></div><div class="ttdeci">virtual void computeDiffPts(NodeID id)</div><div class="ttdoc">Handle diff points-to set. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00274">Andersen.h:274</a></div></div>
924
+ <div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00165">GenericGraph.h:165</a></div></div>
925
+ <div class="ttc" id="classSVF_1_1Andersen_html_a7e26ac6fb40684694f7ff2aadfde8bc7"><div class="ttname"><a href="classSVF_1_1Andersen.html#a7e26ac6fb40684694f7ff2aadfde8bc7">SVF::Andersen::computeDiffPts</a></div><div class="ttdeci">virtual void computeDiffPts(NodeID id)</div><div class="ttdoc">Handle diff points-to set. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00269">Andersen.h:269</a></div></div>
926
926
  <div class="ttc" id="classSVF_1_1ConstraintEdge_html"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html">SVF::ConstraintEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00048">ConsGEdge.h:48</a></div></div>
927
- <div class="ttc" id="classSVF_1_1Andersen_html_aa697d4a6fe09dd6e50abb09228b3567f"><div class="ttname"><a href="classSVF_1_1Andersen.html#aa697d4a6fe09dd6e50abb09228b3567f">SVF::Andersen::processGep</a></div><div class="ttdeci">virtual bool processGep(NodeID node, const GepCGEdge *edge)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00372">Andersen.cpp:372</a></div></div>
927
+ <div class="ttc" id="classSVF_1_1Andersen_html_aa697d4a6fe09dd6e50abb09228b3567f"><div class="ttname"><a href="classSVF_1_1Andersen.html#aa697d4a6fe09dd6e50abb09228b3567f">SVF::Andersen::processGep</a></div><div class="ttdeci">virtual bool processGep(NodeID node, const GepCGEdge *edge)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00384">Andersen.cpp:384</a></div></div>
928
928
  </div><!-- fragment -->
929
929
  </div>
930
930
  </div>
@@ -964,9 +964,9 @@ Additional Inherited Members</h2></td></tr>
964
964
  <p>Handle load </p>
965
965
 
966
966
  <p class="definition">Definition at line <a class="el" href="AndersenWaveDiff_8cpp_source.html#l00155">155</a> of file <a class="el" href="AndersenWaveDiff_8cpp_source.html">AndersenWaveDiff.cpp</a>.</p>
967
- <div class="fragment"><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;{</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> piter = <a class="code" href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">getPts</a>(nodeId).begin(), epiter = <a class="code" href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">getPts</a>(nodeId).end();</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; piter != epiter; ++piter)</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; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Andersen.html#abc20264231658b99998bc4af1f03a4de">processLoad</a>(*piter, edge))</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; changed = <span class="keyword">true</span>;</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; }</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;}</div><div class="ttc" id="classSVF_1_1Andersen_html_a187285a5bdf9422d9188b2b11b667639"><div class="ttname"><a href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">SVF::Andersen::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdoc">Operation of points-to set. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00222">Andersen.h:222</a></div></div>
967
+ <div class="fragment"><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;{</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> piter = <a class="code" href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">getPts</a>(nodeId).begin(), epiter = <a class="code" href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">getPts</a>(nodeId).end();</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; piter != epiter; ++piter)</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; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Andersen.html#abc20264231658b99998bc4af1f03a4de">processLoad</a>(*piter, edge))</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; changed = <span class="keyword">true</span>;</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; }</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;}</div><div class="ttc" id="classSVF_1_1Andersen_html_a187285a5bdf9422d9188b2b11b667639"><div class="ttname"><a href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">SVF::Andersen::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdoc">Operation of points-to set. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00217">Andersen.h:217</a></div></div>
968
968
  <div class="ttc" id="classSVF_1_1PointsTo_1_1PointsToIterator_html"><div class="ttname"><a href="classSVF_1_1PointsTo_1_1PointsToIterator.html">SVF::PointsTo::PointsToIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00174">PointsTo.h:174</a></div></div>
969
- <div class="ttc" id="classSVF_1_1Andersen_html_abc20264231658b99998bc4af1f03a4de"><div class="ttname"><a href="classSVF_1_1Andersen.html#abc20264231658b99998bc4af1f03a4de">SVF::Andersen::processLoad</a></div><div class="ttdeci">virtual bool processLoad(NodeID node, const ConstraintEdge *load)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00312">Andersen.cpp:312</a></div></div>
969
+ <div class="ttc" id="classSVF_1_1Andersen_html_abc20264231658b99998bc4af1f03a4de"><div class="ttname"><a href="classSVF_1_1Andersen.html#abc20264231658b99998bc4af1f03a4de">SVF::Andersen::processLoad</a></div><div class="ttdeci">virtual bool processLoad(NodeID node, const ConstraintEdge *load)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00324">Andersen.cpp:324</a></div></div>
970
970
  </div><!-- fragment -->
971
971
  </div>
972
972
  </div>
@@ -1006,9 +1006,9 @@ Additional Inherited Members</h2></td></tr>
1006
1006
  <p>Handle store </p>
1007
1007
 
1008
1008
  <p class="definition">Definition at line <a class="el" href="AndersenWaveDiff_8cpp_source.html#l00172">172</a> of file <a class="el" href="AndersenWaveDiff_8cpp_source.html">AndersenWaveDiff.cpp</a>.</p>
1009
- <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="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> piter = <a class="code" href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">getPts</a>(nodeId).begin(), epiter = <a class="code" href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">getPts</a>(nodeId).end();</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; piter != epiter; ++piter)</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; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Andersen.html#ac262d42d45dc6130cb031d5b0ed1f024">processStore</a>(*piter, edge))</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; {</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; }</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; }</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;}</div><div class="ttc" id="classSVF_1_1Andersen_html_a187285a5bdf9422d9188b2b11b667639"><div class="ttname"><a href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">SVF::Andersen::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdoc">Operation of points-to set. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00222">Andersen.h:222</a></div></div>
1009
+ <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="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> piter = <a class="code" href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">getPts</a>(nodeId).begin(), epiter = <a class="code" href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">getPts</a>(nodeId).end();</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; piter != epiter; ++piter)</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; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Andersen.html#ac262d42d45dc6130cb031d5b0ed1f024">processStore</a>(*piter, edge))</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; {</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; }</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; }</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;}</div><div class="ttc" id="classSVF_1_1Andersen_html_a187285a5bdf9422d9188b2b11b667639"><div class="ttname"><a href="classSVF_1_1Andersen.html#a187285a5bdf9422d9188b2b11b667639">SVF::Andersen::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdoc">Operation of points-to set. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00217">Andersen.h:217</a></div></div>
1010
1010
  <div class="ttc" id="classSVF_1_1PointsTo_1_1PointsToIterator_html"><div class="ttname"><a href="classSVF_1_1PointsTo_1_1PointsToIterator.html">SVF::PointsTo::PointsToIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00174">PointsTo.h:174</a></div></div>
1011
- <div class="ttc" id="classSVF_1_1Andersen_html_ac262d42d45dc6130cb031d5b0ed1f024"><div class="ttname"><a href="classSVF_1_1Andersen.html#ac262d42d45dc6130cb031d5b0ed1f024">SVF::Andersen::processStore</a></div><div class="ttdeci">virtual bool processStore(NodeID node, const ConstraintEdge *load)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00332">Andersen.cpp:332</a></div></div>
1011
+ <div class="ttc" id="classSVF_1_1Andersen_html_ac262d42d45dc6130cb031d5b0ed1f024"><div class="ttname"><a href="classSVF_1_1Andersen.html#ac262d42d45dc6130cb031d5b0ed1f024">SVF::Andersen::processStore</a></div><div class="ttdeci">virtual bool processStore(NodeID node, const ConstraintEdge *load)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00344">Andersen.cpp:344</a></div></div>
1012
1012
  </div><!-- fragment -->
1013
1013
  </div>
1014
1014
  </div>
@@ -1056,8 +1056,8 @@ Additional Inherited Members</h2></td></tr>
1056
1056
  <p>Reimplemented from <a class="el" href="classSVF_1_1Andersen.html#a36729160041bc3a3e2b0a92b29062848">SVF::Andersen</a>.</p>
1057
1057
 
1058
1058
  <p class="definition">Definition at line <a class="el" href="AndersenWaveDiff_8cpp_source.html#l00210">210</a> of file <a class="el" href="AndersenWaveDiff_8cpp_source.html">AndersenWaveDiff.cpp</a>.</p>
1059
- <div class="fragment"><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;{</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">if</span>(nodeId==newRepId)</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="classSVF_1_1Andersen.html#a4baa6fc95d52afa370fc0fabffd42018">updatePropaPts</a>(newRepId, nodeId);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="classSVF_1_1Andersen.html#a36729160041bc3a3e2b0a92b29062848">Andersen::mergeNodeToRep</a>(nodeId, newRepId);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;}</div><div class="ttc" id="classSVF_1_1Andersen_html_a4baa6fc95d52afa370fc0fabffd42018"><div class="ttname"><a href="classSVF_1_1Andersen.html#a4baa6fc95d52afa370fc0fabffd42018">SVF::Andersen::updatePropaPts</a></div><div class="ttdeci">void updatePropaPts(NodeID dstId, NodeID srcId)</div><div class="ttdoc">Handle propagated points-to set. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00292">Andersen.h:292</a></div></div>
1060
- <div class="ttc" id="classSVF_1_1Andersen_html_a36729160041bc3a3e2b0a92b29062848"><div class="ttname"><a href="classSVF_1_1Andersen.html#a36729160041bc3a3e2b0a92b29062848">SVF::Andersen::mergeNodeToRep</a></div><div class="ttdeci">virtual void mergeNodeToRep(NodeID nodeId, NodeID newRepId)</div><div class="ttdoc">Merge sub node to its rep. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00795">Andersen.cpp:795</a></div></div>
1059
+ <div class="fragment"><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;{</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">if</span>(nodeId==newRepId)</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="classSVF_1_1Andersen.html#a4baa6fc95d52afa370fc0fabffd42018">updatePropaPts</a>(newRepId, nodeId);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="classSVF_1_1Andersen.html#a36729160041bc3a3e2b0a92b29062848">Andersen::mergeNodeToRep</a>(nodeId, newRepId);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;}</div><div class="ttc" id="classSVF_1_1Andersen_html_a4baa6fc95d52afa370fc0fabffd42018"><div class="ttname"><a href="classSVF_1_1Andersen.html#a4baa6fc95d52afa370fc0fabffd42018">SVF::Andersen::updatePropaPts</a></div><div class="ttdeci">void updatePropaPts(NodeID dstId, NodeID srcId)</div><div class="ttdoc">Handle propagated points-to set. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00287">Andersen.h:287</a></div></div>
1060
+ <div class="ttc" id="classSVF_1_1Andersen_html_a36729160041bc3a3e2b0a92b29062848"><div class="ttname"><a href="classSVF_1_1Andersen.html#a36729160041bc3a3e2b0a92b29062848">SVF::Andersen::mergeNodeToRep</a></div><div class="ttdeci">virtual void mergeNodeToRep(NodeID nodeId, NodeID newRepId)</div><div class="ttdoc">Merge sub node to its rep. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00807">Andersen.cpp:807</a></div></div>
1061
1061
  </div><!-- fragment -->
1062
1062
  </div>
1063
1063
  </div>
@@ -1099,8 +1099,8 @@ Additional Inherited Members</h2></td></tr>
1099
1099
  <div class="ttc" id="classSVF_1_1ConstraintNode_html"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html">SVF::ConstraintNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00040">ConsGNode.h:40</a></div></div>
1100
1100
  <div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00176">SVFBasicTypes.h:176</a></div></div>
1101
1101
  <div class="ttc" id="classSVF_1_1ConstraintNode_html_af69c7e623ab5a36644b6aeabaa1a1e28"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html#af69c7e623ab5a36644b6aeabaa1a1e28">SVF::ConstraintNode::outgoingLoadsBegin</a></div><div class="ttdeci">const_iterator outgoingLoadsBegin() const</div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00258">ConsGNode.h:258</a></div></div>
1102
- <div class="ttc" id="classSVF_1_1AndersenBase_html_ae21e38a06a4397d11cdd17b0f8f282fd"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#ae21e38a06a4397d11cdd17b0f8f282fd">SVF::AndersenBase::consCG</a></div><div class="ttdeci">ConstraintGraph * consCG</div><div class="ttdoc">Constraint Graph. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00149">Andersen.h:149</a></div></div>
1103
- <div class="ttc" id="classSVF_1_1AndersenBase_html_a9fe738f1e11c80006d540f246a80bfdf"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#a9fe738f1e11c80006d540f246a80bfdf">SVF::AndersenBase::timeOfProcessLoadStore</a></div><div class="ttdeci">static double timeOfProcessLoadStore</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00143">Andersen.h:143</a></div></div>
1102
+ <div class="ttc" id="classSVF_1_1AndersenBase_html_ae21e38a06a4397d11cdd17b0f8f282fd"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#ae21e38a06a4397d11cdd17b0f8f282fd">SVF::AndersenBase::consCG</a></div><div class="ttdeci">ConstraintGraph * consCG</div><div class="ttdoc">Constraint Graph. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00144">Andersen.h:144</a></div></div>
1103
+ <div class="ttc" id="classSVF_1_1AndersenBase_html_a9fe738f1e11c80006d540f246a80bfdf"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#a9fe738f1e11c80006d540f246a80bfdf">SVF::AndersenBase::timeOfProcessLoadStore</a></div><div class="ttdeci">static double timeOfProcessLoadStore</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00138">Andersen.h:138</a></div></div>
1104
1104
  <div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
1105
1105
  </div><!-- fragment -->
1106
1106
  </div>
@@ -1133,8 +1133,8 @@ Additional Inherited Members</h2></td></tr>
1133
1133
 
1134
1134
  <p>Reimplemented in <a class="el" href="classSVF_1_1AndersenWaveDiffWithType.html#a77cfe9b8370d1bfcdf920162c09b7d00">SVF::AndersenWaveDiffWithType</a>.</p>
1135
1135
 
1136
- <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00465">465</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
1137
- <div class="fragment"><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; {</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; }</div></div><!-- fragment -->
1136
+ <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00460">460</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
1137
+ <div class="fragment"><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; {</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; }</div></div><!-- fragment -->
1138
1138
  </div>
1139
1139
  </div>
1140
1140
  <a id="a3a5b952c0c2fe2be1b9a6fcfeeba2c37"></a>
@@ -1176,13 +1176,13 @@ Additional Inherited Members</h2></td></tr>
1176
1176
 
1177
1177
  <p class="definition">Definition at line <a class="el" href="AndersenWaveDiff_8cpp_source.html#l00189">189</a> of file <a class="el" href="AndersenWaveDiff_8cpp_source.html">AndersenWaveDiff.cpp</a>.</p>
1178
1178
  <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; <a class="code" href="classSVF_1_1AndersenBase.html#a9d7b6e602e1764f76583824dddebf985">numOfProcessedCopy</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; <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a>((SVFUtil::isa&lt;CopyCGEdge&gt;(edge)) &amp;&amp; <span class="stringliteral">&quot;not copy/call/ret ??&quot;</span>);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> dst = edge-&gt;<a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>();</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; srcDiffPts = <a class="code" href="classSVF_1_1Andersen.html#a106691684d8e7a69157d423393d83d66">getDiffPts</a>(node);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#a57c7c12ebcf06f2912e93c802c6cdd02">processCast</a>(edge);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1Andersen.html#ab7dadfd4d810be4863f03ed996b3b3c4">unionPts</a>(dst,srcDiffPts))</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; changed = <span class="keyword">true</span>;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="classSVF_1_1WPASolver.html#a4af1c3e72f5af96c4facff672108da58">pushIntoWorklist</a>(dst);</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="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">return</span> changed;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;}</div><div class="ttc" id="classSVF_1_1WPASolver_html_a4af1c3e72f5af96c4facff672108da58"><div class="ttname"><a href="classSVF_1_1WPASolver.html#a4af1c3e72f5af96c4facff672108da58">SVF::WPASolver::pushIntoWorklist</a></div><div class="ttdeci">virtual void pushIntoWorklist(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="WPASolver_8h_source.html#l00162">WPASolver.h:162</a></div></div>
1179
- <div class="ttc" id="classSVF_1_1Andersen_html_a106691684d8e7a69157d423393d83d66"><div class="ttname"><a href="classSVF_1_1Andersen.html#a106691684d8e7a69157d423393d83d66">SVF::Andersen::getDiffPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getDiffPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00282">Andersen.h:282</a></div></div>
1180
- <div class="ttc" id="classSVF_1_1Andersen_html_ab7dadfd4d810be4863f03ed996b3b3c4"><div class="ttname"><a href="classSVF_1_1Andersen.html#ab7dadfd4d810be4863f03ed996b3b3c4">SVF::Andersen::unionPts</a></div><div class="ttdeci">virtual bool unionPts(NodeID id, const PointsTo &amp;target)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00226">Andersen.h:226</a></div></div>
1179
+ <div class="ttc" id="classSVF_1_1Andersen_html_a106691684d8e7a69157d423393d83d66"><div class="ttname"><a href="classSVF_1_1Andersen.html#a106691684d8e7a69157d423393d83d66">SVF::Andersen::getDiffPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getDiffPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00277">Andersen.h:277</a></div></div>
1180
+ <div class="ttc" id="classSVF_1_1Andersen_html_ab7dadfd4d810be4863f03ed996b3b3c4"><div class="ttname"><a href="classSVF_1_1Andersen.html#ab7dadfd4d810be4863f03ed996b3b3c4">SVF::Andersen::unionPts</a></div><div class="ttdeci">virtual bool unionPts(NodeID id, const PointsTo &amp;target)</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00221">Andersen.h:221</a></div></div>
1181
1181
  <div class="ttc" id="classSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00077">GenericGraph.h:77</a></div></div>
1182
1182
  <div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
1183
1183
  <div class="ttc" id="util_8h_html_a07d17d6d5d1074c0969bc5d3c3d1d84a"><div class="ttname"><a href="util_8h.html#a07d17d6d5d1074c0969bc5d3c3d1d84a">assert</a></div><div class="ttdeci">#define assert(ex)</div><div class="ttdef"><b>Definition:</b> <a href="util_8h_source.html#l00141">util.h:141</a></div></div>
1184
- <div class="ttc" id="classSVF_1_1AndersenBase_html_a9d7b6e602e1764f76583824dddebf985"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#a9d7b6e602e1764f76583824dddebf985">SVF::AndersenBase::numOfProcessedCopy</a></div><div class="ttdeci">static Size_t numOfProcessedCopy</div><div class="ttdoc">Number of processed Addr edge. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00129">Andersen.h:129</a></div></div>
1185
- <div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_a57c7c12ebcf06f2912e93c802c6cdd02"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#a57c7c12ebcf06f2912e93c802c6cdd02">SVF::AndersenWaveDiff::processCast</a></div><div class="ttdeci">virtual void processCast(const ConstraintEdge *)</div><div class="ttdoc">process &quot;bitcast&quot; CopyCGEdge </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00465">Andersen.h:465</a></div></div>
1184
+ <div class="ttc" id="classSVF_1_1AndersenBase_html_a9d7b6e602e1764f76583824dddebf985"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#a9d7b6e602e1764f76583824dddebf985">SVF::AndersenBase::numOfProcessedCopy</a></div><div class="ttdeci">static Size_t numOfProcessedCopy</div><div class="ttdoc">Number of processed Addr edge. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00124">Andersen.h:124</a></div></div>
1185
+ <div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_a57c7c12ebcf06f2912e93c802c6cdd02"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#a57c7c12ebcf06f2912e93c802c6cdd02">SVF::AndersenWaveDiff::processCast</a></div><div class="ttdeci">virtual void processCast(const ConstraintEdge *)</div><div class="ttdoc">process &quot;bitcast&quot; CopyCGEdge </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00460">Andersen.h:460</a></div></div>
1186
1186
  <div class="ttc" id="classSVF_1_1PointsTo_html"><div class="ttname"><a href="classSVF_1_1PointsTo.html">SVF::PointsTo</a></div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00027">PointsTo.h:27</a></div></div>
1187
1187
  </div><!-- fragment -->
1188
1188
  </div>
@@ -1215,14 +1215,14 @@ Additional Inherited Members</h2></td></tr>
1215
1215
  <p>Reimplemented from <a class="el" href="classSVF_1_1Andersen.html#a1caa6fa0740f4fa789d960a5a6fcb9c1">SVF::Andersen</a>.</p>
1216
1216
 
1217
1217
  <p class="definition">Definition at line <a class="el" href="AndersenWaveDiff_8cpp_source.html#l00091">91</a> of file <a class="el" href="AndersenWaveDiff_8cpp_source.html">AndersenWaveDiff.cpp</a>.</p>
1218
- <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; <span class="comment">// This node may be merged during collapseNodePts() which means it is no longer a rep node</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="comment">// in the graph. Only rep node needs to be handled.</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Andersen.html#aad706e332847e6b0892350a05028ba30">sccRepNode</a>(nodeId) != nodeId)</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordtype">double</span> propStart = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">getClk</a>();</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a>* node = <a class="code" href="classSVF_1_1AndersenBase.html#ae21e38a06a4397d11cdd17b0f8f282fd">consCG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">getConstraintNode</a>(nodeId);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#ad5c85a28967cc3f62e663dc00a8aa8c9">handleCopyGep</a>(node);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">double</span> propEnd = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">getClk</a>();</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classSVF_1_1AndersenBase.html#aae14de6fbca9280d8d0290326aa493f0">timeOfProcessCopyGep</a> += (propEnd - propStart) / <a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;}</div><div class="ttc" id="classSVF_1_1AndersenBase_html_aae14de6fbca9280d8d0290326aa493f0"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#aae14de6fbca9280d8d0290326aa493f0">SVF::AndersenBase::timeOfProcessCopyGep</a></div><div class="ttdeci">static double timeOfProcessCopyGep</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00142">Andersen.h:142</a></div></div>
1218
+ <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; <span class="comment">// This node may be merged during collapseNodePts() which means it is no longer a rep node</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="comment">// in the graph. Only rep node needs to be handled.</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Andersen.html#aad706e332847e6b0892350a05028ba30">sccRepNode</a>(nodeId) != nodeId)</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordtype">double</span> propStart = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">getClk</a>();</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a>* node = <a class="code" href="classSVF_1_1AndersenBase.html#ae21e38a06a4397d11cdd17b0f8f282fd">consCG</a>-&gt;<a class="code" href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">getConstraintNode</a>(nodeId);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#ad5c85a28967cc3f62e663dc00a8aa8c9">handleCopyGep</a>(node);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">double</span> propEnd = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">getClk</a>();</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classSVF_1_1AndersenBase.html#aae14de6fbca9280d8d0290326aa493f0">timeOfProcessCopyGep</a> += (propEnd - propStart) / <a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;}</div><div class="ttc" id="classSVF_1_1AndersenBase_html_aae14de6fbca9280d8d0290326aa493f0"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#aae14de6fbca9280d8d0290326aa493f0">SVF::AndersenBase::timeOfProcessCopyGep</a></div><div class="ttdeci">static double timeOfProcessCopyGep</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00137">Andersen.h:137</a></div></div>
1219
1219
  <div class="ttc" id="classSVF_1_1ConstraintGraph_html_a26722666cc8f2fce61bed73f086a0e87"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html#a26722666cc8f2fce61bed73f086a0e87">SVF::ConstraintGraph::getConstraintNode</a></div><div class="ttdeci">ConstraintNode * getConstraintNode(NodeID id) const</div><div class="ttdoc">Get/add/remove constraint node. </div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00107">ConsG.h:107</a></div></div>
1220
1220
  <div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_ad5c85a28967cc3f62e663dc00a8aa8c9"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#ad5c85a28967cc3f62e663dc00a8aa8c9">SVF::AndersenWaveDiff::handleCopyGep</a></div><div class="ttdeci">virtual void handleCopyGep(ConstraintNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="AndersenWaveDiff_8cpp_source.html#l00136">AndersenWaveDiff.cpp:136</a></div></div>
1221
1221
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a5ec3d9bf1fc81346c9df29638daedc0f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">SVF::PointerAnalysis::stat</a></div><div class="ttdeci">PTAStat * stat</div><div class="ttdoc">Statistics. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00155">PointerAnalysis.h:155</a></div></div>
1222
1222
  <div class="ttc" id="classSVF_1_1ConstraintNode_html"><div class="ttname"><a href="classSVF_1_1ConstraintNode.html">SVF::ConstraintNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsGNode_8h_source.html#l00040">ConsGNode.h:40</a></div></div>
1223
1223
  <div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00176">SVFBasicTypes.h:176</a></div></div>
1224
- <div class="ttc" id="classSVF_1_1AndersenBase_html_ae21e38a06a4397d11cdd17b0f8f282fd"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#ae21e38a06a4397d11cdd17b0f8f282fd">SVF::AndersenBase::consCG</a></div><div class="ttdeci">ConstraintGraph * consCG</div><div class="ttdoc">Constraint Graph. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00149">Andersen.h:149</a></div></div>
1225
- <div class="ttc" id="classSVF_1_1Andersen_html_aad706e332847e6b0892350a05028ba30"><div class="ttname"><a href="classSVF_1_1Andersen.html#aad706e332847e6b0892350a05028ba30">SVF::Andersen::sccRepNode</a></div><div class="ttdeci">NodeID sccRepNode(NodeID id) const</div><div class="ttdoc">SCC methods. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00211">Andersen.h:211</a></div></div>
1224
+ <div class="ttc" id="classSVF_1_1AndersenBase_html_ae21e38a06a4397d11cdd17b0f8f282fd"><div class="ttname"><a href="classSVF_1_1AndersenBase.html#ae21e38a06a4397d11cdd17b0f8f282fd">SVF::AndersenBase::consCG</a></div><div class="ttdeci">ConstraintGraph * consCG</div><div class="ttdoc">Constraint Graph. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00144">Andersen.h:144</a></div></div>
1225
+ <div class="ttc" id="classSVF_1_1Andersen_html_aad706e332847e6b0892350a05028ba30"><div class="ttname"><a href="classSVF_1_1Andersen.html#aad706e332847e6b0892350a05028ba30">SVF::Andersen::sccRepNode</a></div><div class="ttdeci">NodeID sccRepNode(NodeID id) const</div><div class="ttdoc">SCC methods. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00206">Andersen.h:206</a></div></div>
1226
1226
  <div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
1227
1227
  </div><!-- fragment -->
1228
1228
  </div>
@@ -1250,8 +1250,8 @@ Additional Inherited Members</h2></td></tr>
1250
1250
  </table>
1251
1251
  </div><div class="memdoc">
1252
1252
 
1253
- <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00446">446</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
1254
- <div class="fragment"><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>)</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keyword">delete</span> <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a> = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; }</div><div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_add4dcb6d74a8ce8747bcac5f740cd672"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">SVF::AndersenWaveDiff::diffWave</a></div><div class="ttdeci">static AndersenWaveDiff * diffWave</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00430">Andersen.h:430</a></div></div>
1253
+ <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00441">441</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
1254
+ <div class="fragment"><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; {</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>)</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keyword">delete</span> <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a>;</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">diffWave</a> = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; }</div><div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_add4dcb6d74a8ce8747bcac5f740cd672"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#add4dcb6d74a8ce8747bcac5f740cd672">SVF::AndersenWaveDiff::diffWave</a></div><div class="ttdeci">static AndersenWaveDiff * diffWave</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00425">Andersen.h:425</a></div></div>
1255
1255
  </div><!-- fragment -->
1256
1256
  </div>
1257
1257
  </div>
@@ -1287,12 +1287,12 @@ Additional Inherited Members</h2></td></tr>
1287
1287
  <div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
1288
1288
  <div class="ttc" id="namespaceSVF_html_a1811127aebdb9c926e39d155e20b3dc0"><div class="ttname"><a href="namespaceSVF.html#a1811127aebdb9c926e39d155e20b3dc0">SVF::NodeStack</a></div><div class="ttdeci">std::stack&lt; NodeID &gt; NodeStack</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00119">SVFBasicTypes.h:119</a></div></div>
1289
1289
  <div class="ttc" id="classSVF_1_1WPASolver_html_a992b105a0ec126050a123e24db3bd45b"><div class="ttname"><a href="classSVF_1_1WPASolver.html#a992b105a0ec126050a123e24db3bd45b">SVF::WPASolver::isWorklistEmpty</a></div><div class="ttdeci">bool isWorklistEmpty()</div><div class="ttdef"><b>Definition:</b> <a href="WPASolver_8h_source.html#l00166">WPASolver.h:166</a></div></div>
1290
- <div class="ttc" id="classSVF_1_1Andersen_html_ac22a6946de30bc5887b9e4ec9259764f"><div class="ttname"><a href="classSVF_1_1Andersen.html#ac22a6946de30bc5887b9e4ec9259764f">SVF::Andersen::collapseFields</a></div><div class="ttdeci">void collapseFields()</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00457">Andersen.cpp:457</a></div></div>
1290
+ <div class="ttc" id="classSVF_1_1Andersen_html_ac22a6946de30bc5887b9e4ec9259764f"><div class="ttname"><a href="classSVF_1_1Andersen.html#ac22a6946de30bc5887b9e4ec9259764f">SVF::Andersen::collapseFields</a></div><div class="ttdeci">void collapseFields()</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00469">Andersen.cpp:469</a></div></div>
1291
1291
  <div class="ttc" id="classSVF_1_1WPASolver_html_a20a14ac31fe23d4fe67da15f5cc498df"><div class="ttname"><a href="classSVF_1_1WPASolver.html#a20a14ac31fe23d4fe67da15f5cc498df">SVF::WPASolver::popFromWorklist</a></div><div class="ttdeci">NodeID popFromWorklist()</div><div class="ttdoc">Worklist operations. </div><div class="ttdef"><b>Definition:</b> <a href="WPASolver_8h_source.html#l00157">WPASolver.h:157</a></div></div>
1292
1292
  <div class="ttc" id="classSVF_1_1AndersenWaveDiff_html_aa0659a2787c1f9b1b6ec62900313475e"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html#aa0659a2787c1f9b1b6ec62900313475e">SVF::AndersenWaveDiff::postProcessNode</a></div><div class="ttdeci">virtual void postProcessNode(NodeID nodeId)</div><div class="ttdef"><b>Definition:</b> <a href="AndersenWaveDiff_8cpp_source.html#l00108">AndersenWaveDiff.cpp:108</a></div></div>
1293
- <div class="ttc" id="classSVF_1_1Andersen_html_ae79bff0e9c49f15e7db00ed605824d98"><div class="ttname"><a href="classSVF_1_1Andersen.html#ae79bff0e9c49f15e7db00ed605824d98">SVF::Andersen::collapsePWCNode</a></div><div class="ttdeci">void collapsePWCNode(NodeID nodeId)</div><div class="ttdoc">Collapse a field object into its base for field insensitive anlaysis. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00448">Andersen.cpp:448</a></div></div>
1294
- <div class="ttc" id="classSVF_1_1Andersen_html_a44d62658bbd2efcef5ff479930b5dce9"><div class="ttname"><a href="classSVF_1_1Andersen.html#a44d62658bbd2efcef5ff479930b5dce9">SVF::Andersen::mergePWC</a></div><div class="ttdeci">bool mergePWC() const</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00250">Andersen.h:250</a></div></div>
1295
- <div class="ttc" id="classSVF_1_1Andersen_html_a31ea24432ff42ab86a4728f2bde571bc"><div class="ttname"><a href="classSVF_1_1Andersen.html#a31ea24432ff42ab86a4728f2bde571bc">SVF::Andersen::SCCDetect</a></div><div class="ttdeci">virtual NodeStack &amp; SCCDetect()</div><div class="ttdoc">SCC detection. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00595">Andersen.cpp:595</a></div></div>
1293
+ <div class="ttc" id="classSVF_1_1Andersen_html_ae79bff0e9c49f15e7db00ed605824d98"><div class="ttname"><a href="classSVF_1_1Andersen.html#ae79bff0e9c49f15e7db00ed605824d98">SVF::Andersen::collapsePWCNode</a></div><div class="ttdeci">void collapsePWCNode(NodeID nodeId)</div><div class="ttdoc">Collapse a field object into its base for field insensitive anlaysis. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00460">Andersen.cpp:460</a></div></div>
1294
+ <div class="ttc" id="classSVF_1_1Andersen_html_a44d62658bbd2efcef5ff479930b5dce9"><div class="ttname"><a href="classSVF_1_1Andersen.html#a44d62658bbd2efcef5ff479930b5dce9">SVF::Andersen::mergePWC</a></div><div class="ttdeci">bool mergePWC() const</div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00245">Andersen.h:245</a></div></div>
1295
+ <div class="ttc" id="classSVF_1_1Andersen_html_a31ea24432ff42ab86a4728f2bde571bc"><div class="ttname"><a href="classSVF_1_1Andersen.html#a31ea24432ff42ab86a4728f2bde571bc">SVF::Andersen::SCCDetect</a></div><div class="ttdeci">virtual NodeStack &amp; SCCDetect()</div><div class="ttdoc">SCC detection. </div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8cpp_source.html#l00607">Andersen.cpp:607</a></div></div>
1296
1296
  </div><!-- fragment -->
1297
1297
  </div>
1298
1298
  </div>
@@ -1317,7 +1317,7 @@ Additional Inherited Members</h2></td></tr>
1317
1317
  </table>
1318
1318
  </div><div class="memdoc">
1319
1319
 
1320
- <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00430">430</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
1320
+ <p class="definition">Definition at line <a class="el" href="Andersen_8h_source.html#l00425">425</a> of file <a class="el" href="Andersen_8h_source.html">Andersen.h</a>.</p>
1321
1321
 
1322
1322
  </div>
1323
1323
  </div>
@@ -357,7 +357,7 @@ $(function() {
357
357
  <tr><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a25c68f9d2b88437778e854ff0d741d1b">writeToFile</a>(const std::string &amp;filename)</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
358
358
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#aa0ca07204a31004fb876c6e18d1ac1ca">writeToModule</a>()</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
359
359
  <tr><td class="entry"><a class="el" href="classSVF_1_1Andersen.html#a15218a84e653baf2cd7f1dc95ccfb77d">~Andersen</a>()</td><td class="entry"><a class="el" href="classSVF_1_1Andersen.html">SVF::Andersen</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
360
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html#abd9b91b2cfe1e30ab3bdb6ac26466c1f">~AndersenBase</a>()</td><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html">SVF::AndersenBase</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
360
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html#a8da8746b38c55561d3f6904e8fd0a9aa">~AndersenBase</a>() override</td><td class="entry"><a class="el" href="classSVF_1_1AndersenBase.html">SVF::AndersenBase</a></td><td class="entry"></td></tr>
361
361
  <tr><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a06f211184d3e75f0ca351a4b8092a478">~BVDataPTAImpl</a>()</td><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
362
362
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a4aeca84393c5586eea7a480737daf17c">~PointerAnalysis</a>()</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
363
363
  <tr><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#ac88ef07e88b453a1b35684b59a7dd04a">~WPASolver</a>()</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver&lt; GraphType &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>