svf-tools 1.0.320 → 1.0.324

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 (460) hide show
  1. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +1 -1
  2. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +7 -7
  3. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +3 -3
  4. package/SVF-doxygen/html/html/Andersen_8h_source.html +2 -2
  5. package/SVF-doxygen/html/html/CHG_8h_source.html +1 -1
  6. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +5 -5
  7. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +8 -8
  8. package/SVF-doxygen/html/html/ConsG_8h_source.html +15 -15
  9. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +6 -6
  10. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +2 -2
  11. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
  12. package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
  13. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
  14. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +3 -3
  15. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +8 -8
  16. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +1 -1
  17. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +2 -2
  18. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +2 -2
  19. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +8 -8
  20. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +5 -5
  21. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +2 -2
  22. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +2 -2
  23. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +4 -4
  24. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +4 -4
  25. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +4 -4
  26. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +2 -2
  27. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +3 -3
  28. package/SVF-doxygen/html/html/IRGraph_8h_source.html +7 -7
  29. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +6 -6
  30. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +9 -9
  31. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +6 -6
  32. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +24 -24
  33. package/SVF-doxygen/html/html/MemRegion_8h_source.html +13 -13
  34. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +13 -13
  35. package/SVF-doxygen/html/html/MemSSA_8h_source.html +13 -13
  36. package/SVF-doxygen/html/html/OfflineConsG_8cpp_source.html +2 -2
  37. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +3 -3
  38. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +8 -8
  39. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +8 -8
  40. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +3 -3
  41. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +7 -7
  42. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +17 -17
  43. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +3 -3
  44. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +18 -18
  45. package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
  46. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +5 -5
  47. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +42 -42
  48. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +58 -58
  49. package/SVF-doxygen/html/html/SVFIR_8h_source.html +153 -154
  50. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +22 -22
  51. package/SVF-doxygen/html/html/SVFStatements_8h.html +11 -11
  52. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +133 -132
  53. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +9 -9
  54. package/SVF-doxygen/html/html/SVFVariables_8h.html +9 -9
  55. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +78 -78
  56. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +6 -6
  57. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
  58. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +3 -3
  59. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
  60. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +13 -13
  61. package/SVF-doxygen/html/html/VFGNode_8h_source.html +17 -17
  62. package/SVF-doxygen/html/html/VFG_8cpp_source.html +48 -48
  63. package/SVF-doxygen/html/html/VFG_8h_source.html +35 -35
  64. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +5 -5
  65. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +5 -5
  66. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +1 -1
  67. package/SVF-doxygen/html/html/annotated.html +21 -21
  68. package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +2 -2
  69. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt-members.html +137 -0
  70. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +500 -0
  71. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.png +0 -0
  72. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode-members.html +1 -1
  73. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +7 -7
  74. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +3 -3
  75. package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +4 -4
  76. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +34 -34
  77. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +4 -4
  78. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +12 -12
  79. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD-members.html +4 -4
  80. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +8 -8
  81. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD-members.html +4 -4
  82. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +8 -8
  83. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD-members.html +4 -4
  84. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +8 -8
  85. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +4 -4
  86. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +8 -8
  87. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +4 -4
  88. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +11 -11
  89. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +9 -9
  90. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +4 -4
  91. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +8 -8
  92. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +4 -4
  93. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +26 -26
  94. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt-members.html +155 -0
  95. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +756 -0
  96. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.png +0 -0
  97. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt-members.html +20 -19
  98. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +33 -31
  99. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +3 -3
  100. package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode-members.html +8 -8
  101. package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode.html +6 -6
  102. package/SVF-doxygen/html/html/classSVF_1_1CallPE-members.html +20 -19
  103. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +24 -22
  104. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar-members.html +169 -0
  105. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +537 -0
  106. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.png +0 -0
  107. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar-members.html +169 -0
  108. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +547 -0
  109. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.png +0 -0
  110. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar-members.html +172 -0
  111. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +556 -0
  112. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.png +0 -0
  113. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt-members.html +75 -22
  114. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +479 -93
  115. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.png +0 -0
  116. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl-members.html +4 -4
  117. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +11 -11
  118. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph-members.html +5 -5
  119. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +46 -46
  120. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode-members.html +26 -26
  121. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +43 -43
  122. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA-members.html +4 -4
  123. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +17 -17
  124. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt-members.html +57 -21
  125. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +253 -89
  126. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.png +0 -0
  127. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode-members.html +1 -1
  128. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +7 -7
  129. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +1 -1
  130. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +3 -3
  131. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +10 -10
  132. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG-members.html +19 -19
  133. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +27 -27
  134. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar-members.html +167 -0
  135. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +531 -0
  136. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.png +0 -0
  137. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar-members.html +165 -0
  138. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +502 -0
  139. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.png +0 -0
  140. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar-members.html +167 -0
  141. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +577 -0
  142. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.png +0 -0
  143. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +4 -4
  144. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +8 -8
  145. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA-members.html +4 -4
  146. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +15 -15
  147. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +4 -4
  148. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +25 -25
  149. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +8 -8
  150. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC-members.html +8 -8
  151. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +26 -26
  152. package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode-members.html +6 -6
  153. package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode.html +6 -6
  154. package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode-members.html +6 -6
  155. package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode.html +6 -6
  156. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
  157. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.html +6 -6
  158. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.png +0 -0
  159. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +23 -22
  160. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
  161. package/SVF-doxygen/html/html/classSVF_1_1GepObjPN-members.html +12 -12
  162. package/SVF-doxygen/html/html/classSVF_1_1GepObjPN.html +61 -61
  163. package/SVF-doxygen/html/html/classSVF_1_1GepObjPN.png +0 -0
  164. package/SVF-doxygen/html/html/classSVF_1_1GepStmt-members.html +57 -22
  165. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +259 -118
  166. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.png +0 -0
  167. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode-members.html +1 -1
  168. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +7 -7
  169. package/SVF-doxygen/html/html/classSVF_1_1GepValVar-members.html +170 -0
  170. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +752 -0
  171. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.png +0 -0
  172. package/SVF-doxygen/html/html/classSVF_1_1GlobalBlockNode-members.html +6 -6
  173. package/SVF-doxygen/html/html/classSVF_1_1GlobalBlockNode.html +6 -6
  174. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode-members.html +6 -6
  175. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +22 -22
  176. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +6 -6
  177. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +1 -1
  178. package/SVF-doxygen/html/html/classSVF_1_1IRGraph-members.html +8 -8
  179. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +43 -43
  180. package/SVF-doxygen/html/html/classSVF_1_1InterBlockNode-members.html +6 -6
  181. package/SVF-doxygen/html/html/classSVF_1_1InterBlockNode.html +6 -6
  182. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG-members.html +20 -20
  183. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +27 -27
  184. package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode-members.html +6 -6
  185. package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode.html +6 -6
  186. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG-members.html +20 -20
  187. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +27 -27
  188. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +6 -6
  189. package/SVF-doxygen/html/html/classSVF_1_1LoadMU-members.html +3 -3
  190. package/SVF-doxygen/html/html/classSVF_1_1LoadMU.html +20 -20
  191. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt-members.html +57 -21
  192. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +253 -89
  193. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.png +0 -0
  194. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode-members.html +1 -1
  195. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +7 -7
  196. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator-members.html +23 -23
  197. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +147 -147
  198. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +6 -6
  199. package/SVF-doxygen/html/html/classSVF_1_1MemSSA-members.html +25 -25
  200. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +102 -102
  201. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt-members.html +24 -23
  202. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +36 -34
  203. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.png +0 -0
  204. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt-members.html +142 -0
  205. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt.html +649 -0
  206. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt.png +0 -0
  207. package/SVF-doxygen/html/html/classSVF_1_1ObjVar-members.html +165 -0
  208. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +644 -0
  209. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.png +0 -0
  210. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG-members.html +5 -5
  211. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +13 -13
  212. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +15 -15
  213. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +8 -8
  214. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt-members.html +74 -22
  215. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +447 -98
  216. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.png +0 -0
  217. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis-members.html +4 -4
  218. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +53 -53
  219. package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode-members.html +7 -7
  220. package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode.html +6 -6
  221. package/SVF-doxygen/html/html/classSVF_1_1RetPE-members.html +20 -19
  222. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +24 -22
  223. package/SVF-doxygen/html/html/classSVF_1_1RetPN-members.html +8 -8
  224. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +24 -24
  225. package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +56 -56
  226. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +58 -58
  227. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +68 -68
  228. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +36 -36
  229. package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +132 -133
  230. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +730 -748
  231. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +12 -12
  232. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +180 -180
  233. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt-members.html +23 -22
  234. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +57 -39
  235. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.png +0 -0
  236. package/SVF-doxygen/html/html/classSVF_1_1SVFVar-members.html +8 -8
  237. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +82 -82
  238. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.png +0 -0
  239. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +9 -9
  240. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +1 -1
  241. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +4 -4
  242. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +8 -8
  243. package/SVF-doxygen/html/html/classSVF_1_1StoreCHI-members.html +3 -3
  244. package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +20 -20
  245. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt-members.html +57 -21
  246. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +260 -89
  247. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.png +0 -0
  248. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode-members.html +1 -1
  249. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +7 -7
  250. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE-members.html +23 -22
  251. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +18 -16
  252. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE-members.html +23 -22
  253. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +18 -16
  254. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +3 -3
  255. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +4 -4
  256. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +10 -10
  257. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +28 -28
  258. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt-members.html +147 -0
  259. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +794 -0
  260. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.png +0 -0
  261. package/SVF-doxygen/html/html/classSVF_1_1VFG-members.html +42 -42
  262. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +145 -145
  263. package/SVF-doxygen/html/html/classSVF_1_1ValVar-members.html +163 -0
  264. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +521 -0
  265. package/SVF-doxygen/html/html/classSVF_1_1ValVar.png +0 -0
  266. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN-members.html +8 -8
  267. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +24 -24
  268. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt-members.html +139 -0
  269. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt.html +544 -0
  270. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt.png +0 -0
  271. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +4 -4
  272. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +16 -16
  273. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +4 -4
  274. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +3 -3
  275. package/SVF-doxygen/html/html/classes.html +18 -18
  276. package/SVF-doxygen/html/html/functions_a.html +55 -55
  277. package/SVF-doxygen/html/html/functions_b.html +2 -2
  278. package/SVF-doxygen/html/html/functions_c.html +52 -57
  279. package/SVF-doxygen/html/html/functions_d.html +4 -4
  280. package/SVF-doxygen/html/html/functions_f.html +5 -5
  281. package/SVF-doxygen/html/html/functions_func.html +54 -54
  282. package/SVF-doxygen/html/html/functions_func_b.html +2 -2
  283. package/SVF-doxygen/html/html/functions_func_c.html +30 -30
  284. package/SVF-doxygen/html/html/functions_func_d.html +4 -4
  285. package/SVF-doxygen/html/html/functions_func_f.html +2 -2
  286. package/SVF-doxygen/html/html/functions_func_g.html +107 -105
  287. package/SVF-doxygen/html/html/functions_func_h.html +6 -6
  288. package/SVF-doxygen/html/html/functions_func_l.html +3 -3
  289. package/SVF-doxygen/html/html/functions_func_n.html +2 -2
  290. package/SVF-doxygen/html/html/functions_func_o.html +15 -15
  291. package/SVF-doxygen/html/html/functions_func_p.html +2 -2
  292. package/SVF-doxygen/html/html/functions_func_s.html +4 -4
  293. package/SVF-doxygen/html/html/functions_func_t.html +20 -20
  294. package/SVF-doxygen/html/html/functions_func_u.html +2 -2
  295. package/SVF-doxygen/html/html/functions_func_v.html +5 -5
  296. package/SVF-doxygen/html/html/functions_g.html +123 -121
  297. package/SVF-doxygen/html/html/functions_h.html +6 -6
  298. package/SVF-doxygen/html/html/functions_i.html +15 -15
  299. package/SVF-doxygen/html/html/functions_k.html +9 -0
  300. package/SVF-doxygen/html/html/functions_l.html +11 -11
  301. package/SVF-doxygen/html/html/functions_m.html +1 -1
  302. package/SVF-doxygen/html/html/functions_n.html +2 -2
  303. package/SVF-doxygen/html/html/functions_o.html +32 -35
  304. package/SVF-doxygen/html/html/functions_p.html +34 -51
  305. package/SVF-doxygen/html/html/functions_r.html +1 -1
  306. package/SVF-doxygen/html/html/functions_s.html +32 -16
  307. package/SVF-doxygen/html/html/functions_t.html +24 -24
  308. package/SVF-doxygen/html/html/functions_type_c.html +1 -4
  309. package/SVF-doxygen/html/html/functions_type_f.html +2 -2
  310. package/SVF-doxygen/html/html/functions_type_g.html +2 -2
  311. package/SVF-doxygen/html/html/functions_type_i.html +3 -3
  312. package/SVF-doxygen/html/html/functions_type_k.html +3 -0
  313. package/SVF-doxygen/html/html/functions_type_l.html +3 -3
  314. package/SVF-doxygen/html/html/functions_type_p.html +3 -19
  315. package/SVF-doxygen/html/html/functions_type_s.html +19 -3
  316. package/SVF-doxygen/html/html/functions_type_v.html +1 -1
  317. package/SVF-doxygen/html/html/functions_u.html +2 -2
  318. package/SVF-doxygen/html/html/functions_v.html +10 -10
  319. package/SVF-doxygen/html/html/functions_vars_f.html +1 -1
  320. package/SVF-doxygen/html/html/functions_vars_g.html +8 -8
  321. package/SVF-doxygen/html/html/functions_vars_i.html +9 -9
  322. package/SVF-doxygen/html/html/functions_vars_k.html +6 -0
  323. package/SVF-doxygen/html/html/functions_vars_l.html +2 -2
  324. package/SVF-doxygen/html/html/functions_vars_m.html +1 -1
  325. package/SVF-doxygen/html/html/functions_vars_o.html +3 -4
  326. package/SVF-doxygen/html/html/functions_vars_p.html +4 -7
  327. package/SVF-doxygen/html/html/functions_w.html +5 -9
  328. package/SVF-doxygen/html/html/hierarchy.html +65 -65
  329. package/SVF-doxygen/html/html/namespaceSVF.html +24 -24
  330. package/SVF-doxygen/html/html/search/all_1.js +39 -39
  331. package/SVF-doxygen/html/html/search/all_10.js +12 -17
  332. package/SVF-doxygen/html/html/search/all_12.js +1 -1
  333. package/SVF-doxygen/html/html/search/all_13.js +15 -11
  334. package/SVF-doxygen/html/html/search/all_14.js +7 -7
  335. package/SVF-doxygen/html/html/search/all_15.js +1 -1
  336. package/SVF-doxygen/html/html/search/all_16.js +4 -4
  337. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  338. package/SVF-doxygen/html/html/search/all_2.js +1 -1
  339. package/SVF-doxygen/html/html/search/all_3.js +8 -9
  340. package/SVF-doxygen/html/html/search/all_4.js +2 -2
  341. package/SVF-doxygen/html/html/search/all_6.js +4 -4
  342. package/SVF-doxygen/html/html/search/all_7.js +54 -53
  343. package/SVF-doxygen/html/html/search/all_8.js +2 -2
  344. package/SVF-doxygen/html/html/search/all_9.js +4 -4
  345. package/SVF-doxygen/html/html/search/all_b.js +3 -0
  346. package/SVF-doxygen/html/html/search/all_c.js +7 -7
  347. package/SVF-doxygen/html/html/search/all_d.js +1 -1
  348. package/SVF-doxygen/html/html/search/all_e.js +4 -4
  349. package/SVF-doxygen/html/html/search/all_f.js +6 -6
  350. package/SVF-doxygen/html/html/search/classes_0.js +1 -1
  351. package/SVF-doxygen/html/html/search/classes_1.js +1 -1
  352. package/SVF-doxygen/html/html/search/classes_11.js +1 -1
  353. package/SVF-doxygen/html/html/search/classes_12.js +2 -2
  354. package/SVF-doxygen/html/html/search/classes_2.js +5 -5
  355. package/SVF-doxygen/html/html/search/classes_3.js +2 -2
  356. package/SVF-doxygen/html/html/search/classes_5.js +1 -1
  357. package/SVF-doxygen/html/html/search/classes_6.js +2 -2
  358. package/SVF-doxygen/html/html/search/classes_9.js +1 -1
  359. package/SVF-doxygen/html/html/search/classes_b.js +1 -1
  360. package/SVF-doxygen/html/html/search/classes_c.js +1 -1
  361. package/SVF-doxygen/html/html/search/classes_d.js +1 -1
  362. package/SVF-doxygen/html/html/search/classes_f.js +1 -1
  363. package/SVF-doxygen/html/html/search/functions_0.js +39 -39
  364. package/SVF-doxygen/html/html/search/functions_1.js +1 -1
  365. package/SVF-doxygen/html/html/search/functions_10.js +4 -4
  366. package/SVF-doxygen/html/html/search/functions_11.js +1 -1
  367. package/SVF-doxygen/html/html/search/functions_12.js +1 -1
  368. package/SVF-doxygen/html/html/search/functions_13.js +2 -2
  369. package/SVF-doxygen/html/html/search/functions_2.js +7 -7
  370. package/SVF-doxygen/html/html/search/functions_3.js +2 -2
  371. package/SVF-doxygen/html/html/search/functions_5.js +1 -1
  372. package/SVF-doxygen/html/html/search/functions_6.js +49 -48
  373. package/SVF-doxygen/html/html/search/functions_7.js +2 -2
  374. package/SVF-doxygen/html/html/search/functions_a.js +3 -3
  375. package/SVF-doxygen/html/html/search/functions_c.js +1 -1
  376. package/SVF-doxygen/html/html/search/functions_d.js +2 -2
  377. package/SVF-doxygen/html/html/search/functions_e.js +1 -1
  378. package/SVF-doxygen/html/html/search/typedefs_11.js +7 -3
  379. package/SVF-doxygen/html/html/search/typedefs_14.js +1 -1
  380. package/SVF-doxygen/html/html/search/typedefs_2.js +1 -2
  381. package/SVF-doxygen/html/html/search/typedefs_5.js +2 -2
  382. package/SVF-doxygen/html/html/search/typedefs_6.js +1 -1
  383. package/SVF-doxygen/html/html/search/typedefs_8.js +1 -1
  384. package/SVF-doxygen/html/html/search/typedefs_a.js +2 -1
  385. package/SVF-doxygen/html/html/search/typedefs_b.js +3 -3
  386. package/SVF-doxygen/html/html/search/typedefs_f.js +3 -7
  387. package/SVF-doxygen/html/html/search/variables_10.js +2 -3
  388. package/SVF-doxygen/html/html/search/variables_14.js +4 -4
  389. package/SVF-doxygen/html/html/search/variables_6.js +1 -1
  390. package/SVF-doxygen/html/html/search/variables_7.js +4 -4
  391. package/SVF-doxygen/html/html/search/variables_9.js +4 -4
  392. package/SVF-doxygen/html/html/search/variables_b.js +3 -1
  393. package/SVF-doxygen/html/html/search/variables_c.js +1 -1
  394. package/SVF-doxygen/html/html/search/variables_d.js +1 -1
  395. package/SVF-doxygen/html/html/search/variables_e.js +2 -2
  396. package/SVF-doxygen/html/html/search/variables_f.js +2 -2
  397. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +2 -2
  398. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +2 -2
  399. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +4 -4
  400. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01OfflineConsG_01_5_01_4.html +2 -2
  401. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +1 -1
  402. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +1 -1
  403. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  404. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  405. package/include/DDA/ContextDDA.h +1 -1
  406. package/include/DDA/FlowDDA.h +1 -1
  407. package/include/Graphs/CHG.h +2 -2
  408. package/include/Graphs/ConsG.h +10 -10
  409. package/include/Graphs/ICFGNode.h +4 -4
  410. package/include/Graphs/IRGraph.h +7 -7
  411. package/include/Graphs/VFG.h +13 -13
  412. package/include/Graphs/VFGNode.h +6 -6
  413. package/include/MSSA/MSSAMuChi.h +6 -6
  414. package/include/MSSA/MemRegion.h +11 -11
  415. package/include/MSSA/MemSSA.h +11 -11
  416. package/include/MemoryModel/PointerAnalysis.h +9 -9
  417. package/include/MemoryModel/PointerAnalysisImpl.h +4 -4
  418. package/include/MemoryModel/SVFIR.h +82 -83
  419. package/include/MemoryModel/SVFStatements.h +97 -92
  420. package/include/MemoryModel/SVFVariables.h +71 -71
  421. package/include/SVF-FE/SVFIRBuilder.h +24 -24
  422. package/include/Util/IRAnnotator.h +1 -1
  423. package/include/Util/TypeBasedHeapCloning.h +2 -2
  424. package/include/WPA/Andersen.h +1 -1
  425. package/include/WPA/FlowSensitiveTBHC.h +1 -1
  426. package/lib/DDA/ContextDDA.cpp +6 -6
  427. package/lib/DDA/DDAClient.cpp +6 -6
  428. package/lib/DDA/DDAStat.cpp +2 -2
  429. package/lib/DDA/FlowDDA.cpp +4 -4
  430. package/lib/Graphs/ConsG.cpp +34 -34
  431. package/lib/Graphs/ICFG.cpp +4 -4
  432. package/lib/Graphs/IRGraph.cpp +21 -21
  433. package/lib/Graphs/OfflineConsG.cpp +8 -8
  434. package/lib/Graphs/SVFG.cpp +14 -14
  435. package/lib/Graphs/ThreadCallGraph.cpp +2 -2
  436. package/lib/Graphs/VFG.cpp +52 -52
  437. package/lib/MSSA/MemRegion.cpp +23 -23
  438. package/lib/MSSA/MemSSA.cpp +15 -15
  439. package/lib/MTA/MTAAnnotator.cpp +5 -5
  440. package/lib/MemoryModel/PAGBuilderFromFile.cpp +13 -13
  441. package/lib/MemoryModel/PointerAnalysis.cpp +9 -9
  442. package/lib/MemoryModel/PointerAnalysisImpl.cpp +14 -14
  443. package/lib/MemoryModel/SVFIR.cpp +95 -95
  444. package/lib/MemoryModel/SVFStatements.cpp +24 -24
  445. package/lib/MemoryModel/SVFVariables.cpp +19 -19
  446. package/lib/SABER/LeakChecker.cpp +2 -2
  447. package/lib/SABER/SaberSVFGBuilder.cpp +5 -5
  448. package/lib/SVF-FE/Graph2Json.cpp +3 -3
  449. package/lib/SVF-FE/SVFIRBuilder.cpp +22 -22
  450. package/lib/Util/PTAStat.cpp +8 -8
  451. package/lib/Util/TypeBasedHeapCloning.cpp +22 -22
  452. package/lib/WPA/Andersen.cpp +13 -13
  453. package/lib/WPA/AndersenSFR.cpp +2 -2
  454. package/lib/WPA/AndersenStat.cpp +6 -6
  455. package/lib/WPA/FlowSensitive.cpp +8 -8
  456. package/lib/WPA/FlowSensitiveStat.cpp +4 -4
  457. package/lib/WPA/FlowSensitiveTBHC.cpp +9 -9
  458. package/lib/WPA/VersionedFlowSensitive.cpp +2 -2
  459. package/lib/WPA/VersionedFlowSensitiveStat.cpp +1 -1
  460. package/package.json +1 -1
@@ -436,12 +436,13 @@ Additional Inherited Members</h2></td></tr>
436
436
  <p>Add actual parameter SVFGNode for 1st argument of a deallocation like external function In order to path sensitive leak detection </p>
437
437
 
438
438
  <p class="definition">Definition at line <a class="el" href="SaberSVFGBuilder_8cpp_source.html#l00252">252</a> of file <a class="el" href="SaberSVFGBuilder_8cpp_source.html">SaberSVFGBuilder.cpp</a>.</p>
439
- <div class="fragment"><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;{</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = <a class="code" href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVFIR::getPAG</a>();</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">for</span>(SVFIR::CSToArgsListMap::iterator it = pag-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a346b9300ad16ef65e3ab4e11f88193a7">getCallSiteArgsMap</a>().begin(),</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; eit = pag-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a346b9300ad16ef65e3ab4e11f88193a7">getCallSiteArgsMap</a>().end(); it!=eit; ++it)</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; {</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <a class="code" href="classSVF_1_1PTACallGraph.html#a5f5a5ec7e707a21994d301cc07d32a5a">PTACallGraph::FunctionSet</a> callees;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; callgraph-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#a486f79252c216eb5a9f4c09261a24ae2">getCallees</a>(it-&gt;first, callees);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">for</span> (PTACallGraph::FunctionSet::const_iterator cit = callees.begin(),</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; ecit = callees.end(); cit != ecit; cit++)</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; {</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun = *cit;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SaberCheckerAPI.html#acf41a2b6de063da9ed492ef0da129036">SaberCheckerAPI::getCheckerAPI</a>()-&gt;<a class="code" href="classSVF_1_1SaberCheckerAPI.html#ab6d9c2435bdb1c01542cc75e9eef0a4e">isMemDealloc</a>(fun)</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; || <a class="code" href="classSVF_1_1SaberCheckerAPI.html#acf41a2b6de063da9ed492ef0da129036">SaberCheckerAPI::getCheckerAPI</a>()-&gt;<a class="code" href="classSVF_1_1SaberCheckerAPI.html#a970676d884d66da9fce00fe5b60c96ba">isFClose</a>(fun))</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; {</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <a class="code" href="classSVF_1_1SVFIR.html#a64cee36354a14aae6b64f8b9d3edbd96">SVFIR::PAGNodeList</a>&amp; arglist = it-&gt;second;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">for</span>(SVFIR::PAGNodeList::const_iterator ait = arglist.begin(), aeit = arglist.end(); ait!=aeit; ++ait){</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a> *pagNode = *ait;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">if</span> (pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#a3b61042079a6c9dc395f38925c6a1271">isPointer</a>()) {</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#ac6a3fe78d1459a79055703ea4afa14c6">addActualParmVFGNode</a>(pagNode, it-&gt;first);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-&gt;<a class="code" href="classSVF_1_1VFG.html#a3c97d77bc0348471d6c098d5655f15b2">addIntraDirectVFEdge</a>(<a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-&gt;<a class="code" href="classSVF_1_1SVFG.html#a8e7a945f4266e8dc7dcfff2ad6494bfb">getDefSVFGNode</a>(pagNode)-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>(), <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-&gt;<a class="code" href="classSVF_1_1VFG.html#a01b8694a5ab7acf8df0213225550791b">getActualParmVFGNode</a>(pagNode, it-&gt;first)-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; }</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; }</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; }</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; }</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFG_html_a8e7a945f4266e8dc7dcfff2ad6494bfb"><div class="ttname"><a href="classSVF_1_1SVFG.html#a8e7a945f4266e8dc7dcfff2ad6494bfb">SVF::SVFG::getDefSVFGNode</a></div><div class="ttdeci">const SVFGNode * getDefSVFGNode(const PAGNode *pagNode) const</div><div class="ttdoc">Given a pagNode, return its definition site. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00171">SVFG.h:171</a></div></div>
439
+ <div class="fragment"><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;{</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = <a class="code" href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVFIR::getPAG</a>();</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">for</span>(SVFIR::CSToArgsListMap::iterator it = pag-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a346b9300ad16ef65e3ab4e11f88193a7">getCallSiteArgsMap</a>().begin(),</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; eit = pag-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a346b9300ad16ef65e3ab4e11f88193a7">getCallSiteArgsMap</a>().end(); it!=eit; ++it)</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; {</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <a class="code" href="classSVF_1_1PTACallGraph.html#a5f5a5ec7e707a21994d301cc07d32a5a">PTACallGraph::FunctionSet</a> callees;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; callgraph-&gt;<a class="code" href="classSVF_1_1PTACallGraph.html#a486f79252c216eb5a9f4c09261a24ae2">getCallees</a>(it-&gt;first, callees);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">for</span> (PTACallGraph::FunctionSet::const_iterator cit = callees.begin(),</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; ecit = callees.end(); cit != ecit; cit++)</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; {</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* fun = *cit;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1SaberCheckerAPI.html#acf41a2b6de063da9ed492ef0da129036">SaberCheckerAPI::getCheckerAPI</a>()-&gt;<a class="code" href="classSVF_1_1SaberCheckerAPI.html#ab6d9c2435bdb1c01542cc75e9eef0a4e">isMemDealloc</a>(fun)</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; || <a class="code" href="classSVF_1_1SaberCheckerAPI.html#acf41a2b6de063da9ed492ef0da129036">SaberCheckerAPI::getCheckerAPI</a>()-&gt;<a class="code" href="classSVF_1_1SaberCheckerAPI.html#a970676d884d66da9fce00fe5b60c96ba">isFClose</a>(fun))</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; {</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <a class="code" href="classSVF_1_1SVFIR.html#a64939d7ecfd8e2cf862782954a56596b">SVFIR::SVFVarList</a>&amp; arglist = it-&gt;second;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">for</span>(SVFIR::SVFVarList::const_iterator ait = arglist.begin(), aeit = arglist.end(); ait!=aeit; ++ait){</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a> *pagNode = *ait;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">if</span> (pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#a3b61042079a6c9dc395f38925c6a1271">isPointer</a>()) {</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#ac6a3fe78d1459a79055703ea4afa14c6">addActualParmVFGNode</a>(pagNode, it-&gt;first);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-&gt;<a class="code" href="classSVF_1_1VFG.html#a3c97d77bc0348471d6c098d5655f15b2">addIntraDirectVFEdge</a>(<a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-&gt;<a class="code" href="classSVF_1_1SVFG.html#a8e7a945f4266e8dc7dcfff2ad6494bfb">getDefSVFGNode</a>(pagNode)-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>(), <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-&gt;<a class="code" href="classSVF_1_1VFG.html#a01b8694a5ab7acf8df0213225550791b">getActualParmVFGNode</a>(pagNode, it-&gt;first)-&gt;<a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; }</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; }</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; }</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; }</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;}</div><div class="ttc" id="classSVF_1_1SVFIR_html_a64939d7ecfd8e2cf862782954a56596b"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a64939d7ecfd8e2cf862782954a56596b">SVF::SVFIR::SVFVarList</a></div><div class="ttdeci">std::vector&lt; const SVFVar * &gt; SVFVarList</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00057">SVFIR.h:57</a></div></div>
440
+ <div class="ttc" id="classSVF_1_1SVFG_html_a8e7a945f4266e8dc7dcfff2ad6494bfb"><div class="ttname"><a href="classSVF_1_1SVFG.html#a8e7a945f4266e8dc7dcfff2ad6494bfb">SVF::SVFG::getDefSVFGNode</a></div><div class="ttdeci">const SVFGNode * getDefSVFGNode(const PAGNode *pagNode) const</div><div class="ttdoc">Given a pagNode, return its definition site. </div><div class="ttdef"><b>Definition:</b> <a href="SVFG_8h_source.html#l00171">SVFG.h:171</a></div></div>
440
441
  <div class="ttc" id="classSVF_1_1PTACallGraph_html_a5f5a5ec7e707a21994d301cc07d32a5a"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html#a5f5a5ec7e707a21994d301cc07d32a5a">SVF::PTACallGraph::FunctionSet</a></div><div class="ttdeci">Set&lt; const SVFFunction * &gt; FunctionSet</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00228">PTACallGraph.h:228</a></div></div>
441
442
  <div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00233">BasicTypes.h:233</a></div></div>
442
443
  <div class="ttc" id="classSVF_1_1SVFVar_html"><div class="ttname"><a href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00046">SVFVariables.h:46</a></div></div>
443
- <div class="ttc" id="classSVF_1_1SVFIR_html_a346b9300ad16ef65e3ab4e11f88193a7"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a346b9300ad16ef65e3ab4e11f88193a7">SVF::SVFIR::getCallSiteArgsMap</a></div><div class="ttdeci">CSToArgsListMap &amp; getCallSiteArgsMap()</div><div class="ttdoc">Get callsite argument list. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00238">SVFIR.h:238</a></div></div>
444
- <div class="ttc" id="classSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00107">SVFIR.h:107</a></div></div>
444
+ <div class="ttc" id="classSVF_1_1SVFIR_html_a346b9300ad16ef65e3ab4e11f88193a7"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a346b9300ad16ef65e3ab4e11f88193a7">SVF::SVFIR::getCallSiteArgsMap</a></div><div class="ttdeci">CSToArgsListMap &amp; getCallSiteArgsMap()</div><div class="ttdoc">Get callsite argument list. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00237">SVFIR.h:237</a></div></div>
445
+ <div class="ttc" id="classSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00106">SVFIR.h:106</a></div></div>
445
446
  <div class="ttc" id="classSVF_1_1SaberCheckerAPI_html_acf41a2b6de063da9ed492ef0da129036"><div class="ttname"><a href="classSVF_1_1SaberCheckerAPI.html#acf41a2b6de063da9ed492ef0da129036">SVF::SaberCheckerAPI::getCheckerAPI</a></div><div class="ttdeci">static SaberCheckerAPI * getCheckerAPI()</div><div class="ttdoc">Return a static reference. </div><div class="ttdef"><b>Definition:</b> <a href="SaberCheckerAPI_8h_source.html#l00089">SaberCheckerAPI.h:89</a></div></div>
446
447
  <div class="ttc" id="classSVF_1_1SVFVar_html_a3b61042079a6c9dc395f38925c6a1271"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3b61042079a6c9dc395f38925c6a1271">SVF::SVFVar::isPointer</a></div><div class="ttdeci">virtual bool isPointer() const</div><div class="ttdoc">Whether it is a pointer. </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00115">SVFVariables.h:115</a></div></div>
447
448
  <div class="ttc" id="classSVF_1_1SaberCheckerAPI_html_ab6d9c2435bdb1c01542cc75e9eef0a4e"><div class="ttname"><a href="classSVF_1_1SaberCheckerAPI.html#ab6d9c2435bdb1c01542cc75e9eef0a4e">SVF::SaberCheckerAPI::isMemDealloc</a></div><div class="ttdeci">bool isMemDealloc(const SVFFunction *fun) const</div><div class="ttdoc">Return true if this call is a memory deallocation. </div><div class="ttdef"><b>Definition:</b> <a href="SaberCheckerAPI_8h_source.html#l00116">SaberCheckerAPI.h:116</a></div></div>
@@ -452,7 +453,6 @@ Additional Inherited Members</h2></td></tr>
452
453
  <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>
453
454
  <div class="ttc" id="classSVF_1_1SVFIR_html"><div class="ttname"><a href="classSVF_1_1SVFIR.html">SVF::SVFIR</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00043">SVFIR.h:43</a></div></div>
454
455
  <div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00119">SVFGBuilder.h:119</a></div></div>
455
- <div class="ttc" id="classSVF_1_1SVFIR_html_a64cee36354a14aae6b64f8b9d3edbd96"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a64cee36354a14aae6b64f8b9d3edbd96">SVF::SVFIR::PAGNodeList</a></div><div class="ttdeci">std::vector&lt; const SVFVar * &gt; PAGNodeList</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00057">SVFIR.h:57</a></div></div>
456
456
  <div class="ttc" id="classSVF_1_1SaberSVFGBuilder_html_ac6a3fe78d1459a79055703ea4afa14c6"><div class="ttname"><a href="classSVF_1_1SaberSVFGBuilder.html#ac6a3fe78d1459a79055703ea4afa14c6">SVF::SaberSVFGBuilder::addActualParmVFGNode</a></div><div class="ttdeci">void addActualParmVFGNode(const PAGNode *pagNode, const CallBlockNode *cs)</div><div class="ttdoc">Add ActualParmVFGNode. </div><div class="ttdef"><b>Definition:</b> <a href="SaberSVFGBuilder_8h_source.html#l00060">SaberSVFGBuilder.h:60</a></div></div>
457
457
  </div><!-- fragment -->
458
458
  </div>
@@ -532,7 +532,7 @@ Additional Inherited Members</h2></td></tr>
532
532
  <p>Recursively collect global memory objects </p>
533
533
 
534
534
  <p class="definition">Definition at line <a class="el" href="SaberSVFGBuilder_8cpp_source.html#l00066">66</a> of file <a class="el" href="SaberSVFGBuilder_8cpp_source.html">SaberSVFGBuilder.cpp</a>.</p>
535
- <div class="fragment"><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;{</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-&gt;<a class="code" href="classSVF_1_1VFG.html#a7622e381fbc1601b3f9a8384df2751bd">getPAG</a>();</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="namespaceSVF.html#a39d27055a14d9d6363c668ee215a4676">NodeVector</a> worklist;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVFIR::iterator</a> it = pag-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(), eit = pag-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>(); it!=eit; it++)</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a>* pagNode = it-&gt;second;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span>(SVFUtil::isa&lt;DummyValPN&gt;(pagNode) || SVFUtil::isa&lt;DummyObjPN&gt;(pagNode))</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1GepObjPN.html">GepObjPN</a>* gepobj = SVFUtil::dyn_cast&lt;GepObjPN&gt;(pagNode)) {</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">if</span>(SVFUtil::isa&lt;DummyObjPN&gt;(pag-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(gepobj-&gt;getBaseNode())))</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* val = pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#afaa33caa8d2a306f6741d9d066243e40">getValue</a>())</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; {</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span>(SVFUtil::isa&lt;GlobalVariable&gt;(val))</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; worklist.push_back(it-&gt;first);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a4cb1f607e33d106dfa178e822c5ab7e1">NodeToPTSSMap</a> cachedPtsMap;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">while</span>(!worklist.empty())</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; {</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span> = worklist.back();</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; worklist.pop_back();</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a967dba864a6032e448222525aedb1f2a">globs</a>.<a class="code" href="classSVF_1_1PointsTo.html#ab196d86cfb48d1c5d27a0c03c7497afa">set</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts = pta-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> it = pts.<a class="code" href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">begin</a>(), eit = pts.<a class="code" href="classSVF_1_1PointsTo.html#a8f741cdffbf3c5fe0f602cdca677dee6">end</a>(); it!=eit; ++it)</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a967dba864a6032e448222525aedb1f2a">globs</a> |= <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a411e168e2a6c27e15186c609c5e216b3">CollectPtsChain</a>(pta,*it,cachedPtsMap);</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; }</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00361">GenericGraph.h:361</a></div></div>
535
+ <div class="fragment"><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;{</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-&gt;<a class="code" href="classSVF_1_1VFG.html#a7622e381fbc1601b3f9a8384df2751bd">getPAG</a>();</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="namespaceSVF.html#a39d27055a14d9d6363c668ee215a4676">NodeVector</a> worklist;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVFIR::iterator</a> it = pag-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(), eit = pag-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>(); it!=eit; it++)</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a>* pagNode = it-&gt;second;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span>(SVFUtil::isa&lt;DummyValVar&gt;(pagNode) || SVFUtil::isa&lt;DummyObjVar&gt;(pagNode))</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1GepObjPN.html">GepObjPN</a>* gepobj = SVFUtil::dyn_cast&lt;GepObjPN&gt;(pagNode)) {</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">if</span>(SVFUtil::isa&lt;DummyObjVar&gt;(pag-&gt;<a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(gepobj-&gt;getBaseNode())))</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">if</span>(<span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a>* val = pagNode-&gt;<a class="code" href="classSVF_1_1SVFVar.html#afaa33caa8d2a306f6741d9d066243e40">getValue</a>())</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; {</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span>(SVFUtil::isa&lt;GlobalVariable&gt;(val))</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; worklist.push_back(it-&gt;first);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a4cb1f607e33d106dfa178e822c5ab7e1">NodeToPTSSMap</a> cachedPtsMap;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">while</span>(!worklist.empty())</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; {</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span> = worklist.back();</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; worklist.pop_back();</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a967dba864a6032e448222525aedb1f2a">globs</a>.<a class="code" href="classSVF_1_1PointsTo.html#ab196d86cfb48d1c5d27a0c03c7497afa">set</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts = pta-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> it = pts.<a class="code" href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">begin</a>(), eit = pts.<a class="code" href="classSVF_1_1PointsTo.html#a8f741cdffbf3c5fe0f602cdca677dee6">end</a>(); it!=eit; ++it)</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a967dba864a6032e448222525aedb1f2a">globs</a> |= <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a411e168e2a6c27e15186c609c5e216b3">CollectPtsChain</a>(pta,*it,cachedPtsMap);</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; }</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;}</div><div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00361">GenericGraph.h:361</a></div></div>
536
536
  <div class="ttc" id="classSVF_1_1SaberSVFGBuilder_html_a4cb1f607e33d106dfa178e822c5ab7e1"><div class="ttname"><a href="classSVF_1_1SaberSVFGBuilder.html#a4cb1f607e33d106dfa178e822c5ab7e1">SVF::SaberSVFGBuilder::NodeToPTSSMap</a></div><div class="ttdeci">Map&lt; NodeID, PointsTo &gt; NodeToPTSSMap</div><div class="ttdef"><b>Definition:</b> <a href="SaberSVFGBuilder_8h_source.html#l00045">SaberSVFGBuilder.h:45</a></div></div>
537
537
  <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>
538
538
  <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>
@@ -600,9 +600,10 @@ Additional Inherited Members</h2></td></tr>
600
600
  <p>Collect objects along points-to chains. </p>
601
601
 
602
602
  <p class="definition">Definition at line <a class="el" href="SaberSVFGBuilder_8cpp_source.html#l00101">101</a> of file <a class="el" href="SaberSVFGBuilder_8cpp_source.html">SaberSVFGBuilder.cpp</a>.</p>
603
- <div class="fragment"><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;{</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-&gt;<a class="code" href="classSVF_1_1VFG.html#a7622e381fbc1601b3f9a8384df2751bd">getPAG</a>();</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> baseId = pag-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a4720426ab75f8d07e780995ffad7d51a">getBaseObjNode</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; NodeToPTSSMap::iterator it = cachedPtsMap.find(baseId);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">if</span>(it!=cachedPtsMap.end())</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> it-&gt;second;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts = cachedPtsMap[baseId];</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; pts |= pag-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a42d1e2f0213fb6e54c56cc0695b57cb0">getFieldsAfterCollapse</a>(baseId);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a8e07c6afc4ae6e2792431065c2948039">WorkList</a> worklist;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> it = pts.begin(), eit = pts.end(); it!=eit; ++it)</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; worklist.<a class="code" href="classSVF_1_1FIFOWorkList.html#ad4c6a48b60c870d63049fe7272cc7eb8">push</a>(*it);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">while</span>(!worklist.empty())</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; {</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId = worklist.pop();</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; tmp = pta-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(nodeId);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> it = tmp.<a class="code" href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">begin</a>(), eit = tmp.<a class="code" href="classSVF_1_1PointsTo.html#a8f741cdffbf3c5fe0f602cdca677dee6">end</a>(); it!=eit; ++it)</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; {</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; pts |= <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a411e168e2a6c27e15186c609c5e216b3">CollectPtsChain</a>(pta,*it,cachedPtsMap);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; }</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; }</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">return</span> pts;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
603
+ <div class="fragment"><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;{</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = <a class="code" href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">svfg</a>-&gt;<a class="code" href="classSVF_1_1VFG.html#a7622e381fbc1601b3f9a8384df2751bd">getPAG</a>();</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> baseId = pag-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a77a6bb9335aa12d29825af1b5ea07e08">getBaseObjVar</a>(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; NodeToPTSSMap::iterator it = cachedPtsMap.find(baseId);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">if</span>(it!=cachedPtsMap.end())</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> it-&gt;second;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; pts = cachedPtsMap[baseId];</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; pts |= pag-&gt;<a class="code" href="classSVF_1_1SVFIR.html#a42d1e2f0213fb6e54c56cc0695b57cb0">getFieldsAfterCollapse</a>(baseId);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a8e07c6afc4ae6e2792431065c2948039">WorkList</a> worklist;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> it = pts.begin(), eit = pts.end(); it!=eit; ++it)</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; worklist.<a class="code" href="classSVF_1_1FIFOWorkList.html#ad4c6a48b60c870d63049fe7272cc7eb8">push</a>(*it);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">while</span>(!worklist.empty())</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; {</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId = worklist.pop();</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; tmp = pta-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(nodeId);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> it = tmp.<a class="code" href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">begin</a>(), eit = tmp.<a class="code" href="classSVF_1_1PointsTo.html#a8f741cdffbf3c5fe0f602cdca677dee6">end</a>(); it!=eit; ++it)</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; {</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; pts |= <a class="code" href="classSVF_1_1SaberSVFGBuilder.html#a411e168e2a6c27e15186c609c5e216b3">CollectPtsChain</a>(pta,*it,cachedPtsMap);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; }</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; }</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">return</span> pts;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;}</div><div class="ttc" id="namespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="MTAResultValidator_8h_source.html#l00018">MTAResultValidator.h:18</a></div></div>
604
604
  <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>
605
605
  <div class="ttc" id="classSVF_1_1SaberSVFGBuilder_html_a8e07c6afc4ae6e2792431065c2948039"><div class="ttname"><a href="classSVF_1_1SaberSVFGBuilder.html#a8e07c6afc4ae6e2792431065c2948039">SVF::SaberSVFGBuilder::WorkList</a></div><div class="ttdeci">FIFOWorkList&lt; NodeID &gt; WorkList</div><div class="ttdef"><b>Definition:</b> <a href="SaberSVFGBuilder_8h_source.html#l00046">SaberSVFGBuilder.h:46</a></div></div>
606
+ <div class="ttc" id="classSVF_1_1SVFIR_html_a77a6bb9335aa12d29825af1b5ea07e08"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a77a6bb9335aa12d29825af1b5ea07e08">SVF::SVFIR::getBaseObjVar</a></div><div class="ttdeci">NodeID getBaseObjVar(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00442">SVFIR.h:442</a></div></div>
606
607
  <div class="ttc" id="classSVF_1_1VFG_html_a7622e381fbc1601b3f9a8384df2751bd"><div class="ttname"><a href="classSVF_1_1VFG.html#a7622e381fbc1601b3f9a8384df2751bd">SVF::VFG::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdoc">Return SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="VFG_8h_source.html#l00133">VFG.h:133</a></div></div>
607
608
  <div class="ttc" id="classSVF_1_1PointsTo_html_aa53962e561399bf493d1f2b9137356f6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">SVF::PointsTo::begin</a></div><div class="ttdeci">const_iterator begin(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00127">PointsTo.h:127</a></div></div>
608
609
  <div class="ttc" id="classSVF_1_1FIFOWorkList_html_ad4c6a48b60c870d63049fe7272cc7eb8"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#ad4c6a48b60c870d63049fe7272cc7eb8">SVF::FIFOWorkList::push</a></div><div class="ttdeci">bool push(Data data)</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00159">WorkList.h:159</a></div></div>
@@ -612,7 +613,6 @@ Additional Inherited Members</h2></td></tr>
612
613
  <div class="ttc" id="classSVF_1_1SVFGBuilder_html_a26bc3b9c07472e454bc567cd8746caef"><div class="ttname"><a href="classSVF_1_1SVFGBuilder.html#a26bc3b9c07472e454bc567cd8746caef">SVF::SVFGBuilder::svfg</a></div><div class="ttdeci">SVFG * svfg</div><div class="ttdef"><b>Definition:</b> <a href="SVFGBuilder_8h_source.html#l00119">SVFGBuilder.h:119</a></div></div>
613
614
  <div class="ttc" id="classSVF_1_1SVFIR_html_a42d1e2f0213fb6e54c56cc0695b57cb0"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a42d1e2f0213fb6e54c56cc0695b57cb0">SVF::SVFIR::getFieldsAfterCollapse</a></div><div class="ttdeci">NodeBS getFieldsAfterCollapse(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8cpp_source.html#l00480">SVFIR.cpp:480</a></div></div>
614
615
  <div class="ttc" id="classSVF_1_1PointsTo_html_a8f741cdffbf3c5fe0f602cdca677dee6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#a8f741cdffbf3c5fe0f602cdca677dee6">SVF::PointsTo::end</a></div><div class="ttdeci">const_iterator end(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00128">PointsTo.h:128</a></div></div>
615
- <div class="ttc" id="classSVF_1_1SVFIR_html_a4720426ab75f8d07e780995ffad7d51a"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a4720426ab75f8d07e780995ffad7d51a">SVF::SVFIR::getBaseObjNode</a></div><div class="ttdeci">NodeID getBaseObjNode(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00443">SVFIR.h:443</a></div></div>
616
616
  <div class="ttc" id="classSVF_1_1SaberSVFGBuilder_html_a411e168e2a6c27e15186c609c5e216b3"><div class="ttname"><a href="classSVF_1_1SaberSVFGBuilder.html#a411e168e2a6c27e15186c609c5e216b3">SVF::SaberSVFGBuilder::CollectPtsChain</a></div><div class="ttdeci">PointsTo &amp; CollectPtsChain(BVDataPTAImpl *pta, NodeID id, NodeToPTSSMap &amp;cachedPtsMap)</div><div class="ttdoc">Collect objects along points-to chains. </div><div class="ttdef"><b>Definition:</b> <a href="SaberSVFGBuilder_8cpp_source.html#l00101">SaberSVFGBuilder.cpp:101</a></div></div>
617
617
  </div><!-- fragment -->
618
618
  </div>
@@ -692,9 +692,9 @@ Additional Inherited Members</h2></td></tr>
692
692
 
693
693
  <p class="definition">Definition at line <a class="el" href="SaberSVFGBuilder_8cpp_source.html#l00187">187</a> of file <a class="el" href="SaberSVFGBuilder_8cpp_source.html">SaberSVFGBuilder.cpp</a>.</p>
694
694
  <div class="fragment"><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;{</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordtype">bool</span> isSU = <span class="keyword">false</span>;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classSVF_1_1StoreVFGNode.html">StoreSVFGNode</a>* store = SVFUtil::dyn_cast&lt;StoreSVFGNode&gt;(node))</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1PointsTo.html">PointsTo</a>&amp; dstCPSet = pta-&gt;<a class="code" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a>(store-&gt;getPAGDstNodeID());</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">if</span> (dstCPSet.<a class="code" href="classSVF_1_1PointsTo.html#a879783ba6629e500af9aa7dfcda2563d">count</a>() == 1)</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; {</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <a class="code" href="classSVF_1_1PointsTo_1_1PointsToIterator.html">PointsTo::iterator</a> it = dstCPSet.<a class="code" href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">begin</a>();</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; singleton = *it;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="comment">// Strong update can be made if this points-to target is not heap, array or field-insensitive.</span></div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">if</span> (!pta-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361">isHeapMemObj</a>(singleton) &amp;&amp; !pta-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73">isArrayMemObj</a>(singleton)</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; &amp;&amp; <a class="code" href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVFIR::getPAG</a>()-&gt;<a class="code" href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">getBaseObj</a>(singleton)-&gt;<a class="code" href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">isFieldInsensitive</a>() == <span class="keyword">false</span></div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; &amp;&amp; !pta-&gt;<a class="code" href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">isLocalVarInRecursiveFun</a>(singleton))</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; isSU = <span class="keyword">true</span>;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; }</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; }</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keywordflow">return</span> isSU;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;}</div><div class="ttc" id="classSVF_1_1StoreVFGNode_html"><div class="ttname"><a href="classSVF_1_1StoreVFGNode.html">SVF::StoreVFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00235">VFGNode.h:235</a></div></div>
695
- <div class="ttc" id="classSVF_1_1SVFIR_html_af76a55c3b8255a81a566bdce35ffc749"><div class="ttname"><a href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">SVF::SVFIR::getBaseObj</a></div><div class="ttdeci">const MemObj * getBaseObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00447">SVFIR.h:447</a></div></div>
695
+ <div class="ttc" id="classSVF_1_1SVFIR_html_af76a55c3b8255a81a566bdce35ffc749"><div class="ttname"><a href="classSVF_1_1SVFIR.html#af76a55c3b8255a81a566bdce35ffc749">SVF::SVFIR::getBaseObj</a></div><div class="ttdeci">const MemObj * getBaseObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00446">SVFIR.h:446</a></div></div>
696
696
  <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>
697
- <div class="ttc" id="classSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00107">SVFIR.h:107</a></div></div>
697
+ <div class="ttc" id="classSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00106">SVFIR.h:106</a></div></div>
698
698
  <div class="ttc" id="classSVF_1_1PointsTo_html_aa53962e561399bf493d1f2b9137356f6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">SVF::PointsTo::begin</a></div><div class="ttdeci">const_iterator begin(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00127">PointsTo.h:127</a></div></div>
699
699
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a89dfeedf8e3e91603a1e9c73e3608a73"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73">SVF::PointerAnalysis::isArrayMemObj</a></div><div class="ttdeci">bool isArrayMemObj(NodeID id) const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00335">PointerAnalysis.h:335</a></div></div>
700
700
  <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_aee289e298e421448caaa604b7eb34fcb"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">SVF::BVDataPTAImpl::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8h_source.html#l00099">PointerAnalysisImpl.h:99</a></div></div>
@@ -1299,7 +1299,7 @@ Private Attributes</h2></td></tr>
1299
1299
  <p>Get <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a>. </p>
1300
1300
 
1301
1301
  <p class="definition">Definition at line <a class="el" href="SrcSnkDDA_8h_source.html#l00114">114</a> of file <a class="el" href="SrcSnkDDA_8h_source.html">SrcSnkDDA.h</a>.</p>
1302
- <div class="fragment"><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVFIR::getPAG</a>();</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00107">SVFIR.h:107</a></div></div>
1302
+ <div class="fragment"><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVFIR::getPAG</a>();</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00106">SVFIR.h:106</a></div></div>
1303
1303
  </div><!-- fragment -->
1304
1304
  </div>
1305
1305
  </div>
@@ -160,10 +160,10 @@ $(function() {
160
160
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a088dda60195ab259693977af8414f203">FSTBHC_WPA</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
161
161
  <tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"></td></tr>
162
162
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html#ab7de73aabfa092b51b8dbe7b091e4c57">GEDGE</a> typedef</td><td class="entry"><a class="el" href="classSVF_1_1WPASolver.html">SVF::WPASolver&lt; GraphType &gt;</a></td><td class="entry"></td></tr>
163
- <tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#aeec490de5955497af1a2a9cd429f0d5d">getAllFieldsObjNode</a>(NodeID id)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
163
+ <tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a5dddd53b4ca9d7cc23d88ed9f3de9fde">getAllFieldsObjVars</a>(NodeID id)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
164
164
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a60b111647e000cc983aa52513f90afbc">getAllValidPtrs</a>()</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
165
165
  <tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac23f71c1307cda9cba44acc40059f0a3">getAnalysisTy</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
166
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a8008bdef087708de961a37a8bf458fc7">getBaseObjNode</a>(NodeID id)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
166
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a9f1c599cb9f6e2ae83e29bb84ef6831c">getBaseObjVar</a>(NodeID id)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
167
167
  <tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0bddf297a2d8cd59ce9a232f0229f248">getCallGraphSCC</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
168
168
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a>(NodeID id) const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
169
169
  <tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae2cc7cd0803dbd90639140e71b06b1b5">getCHGraph</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
@@ -171,9 +171,9 @@ $(function() {
171
171
  <tr><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a642613e98982259183d3f34a97f05502">getDFPTDataTy</a>() const</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">protected</span></td></tr>
172
172
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ab9c0bb439f98ae11dd178148109697ab">getDiffPTDataTy</a>() const</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">protected</span></td></tr>
173
173
  <tr><td class="entry"><a class="el" href="classSVF_1_1Steensgaard.html#af2afffc0617d588a68fdfa4fcfd24b70">getEC</a>(NodeID id) const</td><td class="entry"><a class="el" href="classSVF_1_1Steensgaard.html">SVF::Steensgaard</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
174
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a15494d0aa074ae2e89470b3c9f407cc4">getFIObjNode</a>(NodeID id)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
174
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">getFIObjVar</a>(NodeID id)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
175
175
  <tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a74df51017ceaa389de2c2f33f3522fc3">getFunPtr</a>(const CallBlockNode *cs) const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
176
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a6423e0d1bc9a5ee6bfea27a4a358574f">getGepObjNode</a>(NodeID id, const LocationSet &amp;ls)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
176
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#acbbc0934af9bc0145389dc41430c6d8b">getGepObjVar</a>(NodeID id, const LocationSet &amp;ls)</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
177
177
  <tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ade879ee99cae01632d567d3736dcad9e">getICFG</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
178
178
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac0f821cfe4fb9c9c8816e7a1b1bc0c5e">getImplTy</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
179
179
  <tr><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a>()</td><td class="entry"><a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
@@ -425,14 +425,14 @@ Public Member Functions</h2></td></tr>
425
425
  <tr class="separator:a89dfeedf8e3e91603a1e9c73e3608a73 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
426
426
  <tr class="memitem:af90d2ccb01402c5ca9d7a059f345c816 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#af90d2ccb01402c5ca9d7a059f345c816">isFIObjNode</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id) const</td></tr>
427
427
  <tr class="separator:af90d2ccb01402c5ca9d7a059f345c816 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
428
- <tr class="memitem:a8008bdef087708de961a37a8bf458fc7 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a8008bdef087708de961a37a8bf458fc7">getBaseObjNode</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
429
- <tr class="separator:a8008bdef087708de961a37a8bf458fc7 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
430
- <tr class="memitem:a15494d0aa074ae2e89470b3c9f407cc4 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a15494d0aa074ae2e89470b3c9f407cc4">getFIObjNode</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
431
- <tr class="separator:a15494d0aa074ae2e89470b3c9f407cc4 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
432
- <tr class="memitem:a6423e0d1bc9a5ee6bfea27a4a358574f inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a6423e0d1bc9a5ee6bfea27a4a358574f">getGepObjNode</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id, const <a class="el" href="classSVF_1_1LocationSet.html">LocationSet</a> &amp;ls)</td></tr>
433
- <tr class="separator:a6423e0d1bc9a5ee6bfea27a4a358574f inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
434
- <tr class="memitem:aeec490de5955497af1a2a9cd429f0d5d inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#aeec490de5955497af1a2a9cd429f0d5d">getAllFieldsObjNode</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
435
- <tr class="separator:aeec490de5955497af1a2a9cd429f0d5d inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
428
+ <tr class="memitem:a9f1c599cb9f6e2ae83e29bb84ef6831c inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a9f1c599cb9f6e2ae83e29bb84ef6831c">getBaseObjVar</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
429
+ <tr class="separator:a9f1c599cb9f6e2ae83e29bb84ef6831c inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
430
+ <tr class="memitem:a68b05bc02c5473c1e0d39ac4f4454bac inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">getFIObjVar</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
431
+ <tr class="separator:a68b05bc02c5473c1e0d39ac4f4454bac inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
432
+ <tr class="memitem:acbbc0934af9bc0145389dc41430c6d8b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#acbbc0934af9bc0145389dc41430c6d8b">getGepObjVar</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id, const <a class="el" href="classSVF_1_1LocationSet.html">LocationSet</a> &amp;ls)</td></tr>
433
+ <tr class="separator:acbbc0934af9bc0145389dc41430c6d8b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
434
+ <tr class="memitem:a5dddd53b4ca9d7cc23d88ed9f3de9fde inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="namespaceSVF.html#a740396763e377643790c8b803ab3e4ea">NodeBS</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a5dddd53b4ca9d7cc23d88ed9f3de9fde">getAllFieldsObjVars</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
435
+ <tr class="separator:a5dddd53b4ca9d7cc23d88ed9f3de9fde inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
436
436
  <tr class="memitem:ac5683fe2e24b393ccc5cb6d8bc92cf2b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b">setObjFieldInsensitive</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
437
437
  <tr class="separator:ac5683fe2e24b393ccc5cb6d8bc92cf2b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
438
438
  <tr class="memitem:a0f71e4cd0948b294c7d33a690bde7dbe inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe">isFieldInsensitive</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id) const</td></tr>
@@ -83,9 +83,9 @@ $(function() {
83
83
  <tr><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html#ab3070e4293ceb5ca9c25702f76ac427c">getMR</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html">SVF::MSSADEF</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
84
84
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MSSACHI.html#a7af6f73ff1432d4adb5ee8493fbe73fb">getOpVer</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MSSACHI.html">SVF::MSSACHI&lt; Cond &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
85
85
  <tr><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html#a21cb532396180e0b6bab515c52bec282">getResVer</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html">SVF::MSSADEF</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
86
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html#ab86317f542f22cf46a6376c9811becf7">getStoreInst</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html">SVF::StoreCHI&lt; Cond &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
86
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html#aead80cf9aad5818f16ad61d7a83b7c79">getStoreInst</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html">SVF::StoreCHI&lt; Cond &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
87
87
  <tr><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html#a4cabef62b821efb0c88efb304fd0a70c">getType</a>() const</td><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html">SVF::MSSADEF</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
88
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html#a787017e8aab6f713a409cdec76549293">inst</a></td><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html">SVF::StoreCHI&lt; Cond &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
88
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html#a6e58e7cde1f417ec3feaef98f6f74be2">inst</a></td><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html">SVF::StoreCHI&lt; Cond &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
89
89
  <tr><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html#a01bc47f779d20fa8e3be182ceab12780">mr</a></td><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html">SVF::MSSADEF</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
90
90
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MSSACHI.html#af9ecdf852667bd23fe4805ba04c3e815">MSSACHI</a>(CHITYPE t, const MemRegion *m, Cond c)</td><td class="entry"><a class="el" href="classSVF_1_1MSSACHI.html">SVF::MSSACHI&lt; Cond &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
91
91
  <tr><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html#a1b1c7cbc293182a5ded43efa522990de">MSSADEF</a>(DEFTYPE t, const MemRegion *m)</td><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html">SVF::MSSADEF</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
@@ -95,7 +95,7 @@ $(function() {
95
95
  <tr><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html#a343eb4c9515dfbbbdadaacf5500e5f05">setResVer</a>(MRVer *v)</td><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html">SVF::MSSADEF</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
96
96
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html#a32682e20c9c08d2bdd5abc62ea17af18aeebaf47309ac06cd04ae69979f4c2580">SSACHI</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html">SVF::MSSADEF</a></td><td class="entry"></td></tr>
97
97
  <tr><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html#a32682e20c9c08d2bdd5abc62ea17af18ae2cdc3b8aae7005f6d7495d2f200a736">SSAPHI</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html">SVF::MSSADEF</a></td><td class="entry"></td></tr>
98
- <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html#aa220094176013de75a81c0bfa974b99b">StoreCHI</a>(const BasicBlock *b, const StorePE *i, const MemRegion *m, Cond c=true)</td><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html">SVF::StoreCHI&lt; Cond &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
98
+ <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html#a34433e6e437d302014fd06b5fb624a79">StoreCHI</a>(const BasicBlock *b, const StoreStmt *i, const MemRegion *m, Cond c=true)</td><td class="entry"><a class="el" href="classSVF_1_1StoreCHI.html">SVF::StoreCHI&lt; Cond &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
99
99
  <tr><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html#a32682e20c9c08d2bdd5abc62ea17af18ac9b53519d32443a72c04e771489aba43">StoreMSSACHI</a> enum value</td><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html">SVF::MSSADEF</a></td><td class="entry"></td></tr>
100
100
  <tr class="even"><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html#a9e8a03dc2c2f76ef6bc095f21911f5b6">type</a></td><td class="entry"><a class="el" href="classSVF_1_1MSSADEF.html">SVF::MSSADEF</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
101
101
  <tr><td class="entry"><a class="el" href="classSVF_1_1MSSACHI.html#a01cdeb7ac96e0809d1d56c9da56c4b97">~MSSACHI</a>()</td><td class="entry"><a class="el" href="classSVF_1_1MSSACHI.html">SVF::MSSACHI&lt; Cond &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
@@ -88,16 +88,16 @@ Public Member Functions</h2></td></tr>
88
88
  <tr class="memitem:a85eb84312c003a57b2c9c4ed7df7c239"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1StoreCHI.html#a85eb84312c003a57b2c9c4ed7df7c239">getBasicBlock</a> () const</td></tr>
89
89
  <tr class="memdesc:a85eb84312c003a57b2c9c4ed7df7c239"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get basic block. <a href="#a85eb84312c003a57b2c9c4ed7df7c239">More...</a><br /></td></tr>
90
90
  <tr class="separator:a85eb84312c003a57b2c9c4ed7df7c239"><td class="memSeparator" colspan="2">&#160;</td></tr>
91
- <tr class="memitem:ab86317f542f22cf46a6376c9811becf7"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1StorePE.html">StorePE</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1StoreCHI.html#ab86317f542f22cf46a6376c9811becf7">getStoreInst</a> () const</td></tr>
92
- <tr class="memdesc:ab86317f542f22cf46a6376c9811becf7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get store instruction. <a href="#ab86317f542f22cf46a6376c9811becf7">More...</a><br /></td></tr>
93
- <tr class="separator:ab86317f542f22cf46a6376c9811becf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
91
+ <tr class="memitem:aead80cf9aad5818f16ad61d7a83b7c79"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1StoreStmt.html">StoreStmt</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1StoreCHI.html#aead80cf9aad5818f16ad61d7a83b7c79">getStoreInst</a> () const</td></tr>
92
+ <tr class="memdesc:aead80cf9aad5818f16ad61d7a83b7c79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get store instruction. <a href="#aead80cf9aad5818f16ad61d7a83b7c79">More...</a><br /></td></tr>
93
+ <tr class="separator:aead80cf9aad5818f16ad61d7a83b7c79"><td class="memSeparator" colspan="2">&#160;</td></tr>
94
94
  <tr class="memitem:af889bd9b729182e20ca7598ad4167bb8"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1StoreCHI.html#af889bd9b729182e20ca7598ad4167bb8">dump</a> ()</td></tr>
95
95
  <tr class="memdesc:af889bd9b729182e20ca7598ad4167bb8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print CHI. <a href="#af889bd9b729182e20ca7598ad4167bb8">More...</a><br /></td></tr>
96
96
  <tr class="separator:af889bd9b729182e20ca7598ad4167bb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
97
97
  <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
98
- <tr class="memitem:aa220094176013de75a81c0bfa974b99b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1StoreCHI.html#aa220094176013de75a81c0bfa974b99b">StoreCHI</a> (const <a class="el" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a> *b, const <a class="el" href="classSVF_1_1StorePE.html">StorePE</a> *i, const <a class="el" href="classSVF_1_1MemRegion.html">MemRegion</a> *m, Cond c=true)</td></tr>
99
- <tr class="memdesc:aa220094176013de75a81c0bfa974b99b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructors for <a class="el" href="classSVF_1_1StoreCHI.html">StoreCHI</a>. <a href="#aa220094176013de75a81c0bfa974b99b">More...</a><br /></td></tr>
100
- <tr class="separator:aa220094176013de75a81c0bfa974b99b"><td class="memSeparator" colspan="2">&#160;</td></tr>
98
+ <tr class="memitem:a34433e6e437d302014fd06b5fb624a79"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1StoreCHI.html#a34433e6e437d302014fd06b5fb624a79">StoreCHI</a> (const <a class="el" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a> *b, const <a class="el" href="classSVF_1_1StoreStmt.html">StoreStmt</a> *i, const <a class="el" href="classSVF_1_1MemRegion.html">MemRegion</a> *m, Cond c=true)</td></tr>
99
+ <tr class="memdesc:a34433e6e437d302014fd06b5fb624a79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructors for <a class="el" href="classSVF_1_1StoreCHI.html">StoreCHI</a>. <a href="#a34433e6e437d302014fd06b5fb624a79">More...</a><br /></td></tr>
100
+ <tr class="separator:a34433e6e437d302014fd06b5fb624a79"><td class="memSeparator" colspan="2">&#160;</td></tr>
101
101
  <tr class="memitem:a95f30699dd8622ff60d4aba7e51d0ecf"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1StoreCHI.html#a95f30699dd8622ff60d4aba7e51d0ecf">~StoreCHI</a> ()</td></tr>
102
102
  <tr class="separator:a95f30699dd8622ff60d4aba7e51d0ecf"><td class="memSeparator" colspan="2">&#160;</td></tr>
103
103
  <tr class="inherit_header pub_methods_classSVF_1_1MSSACHI"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classSVF_1_1MSSACHI')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classSVF_1_1MSSACHI.html">SVF::MSSACHI&lt; Cond &gt;</a></td></tr>
@@ -158,8 +158,8 @@ Static Public Member Functions</h2></td></tr>
158
158
  Private Attributes</h2></td></tr>
159
159
  <tr class="memitem:a3b1bcd4535e2199b57adc67fc283fb3f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1StoreCHI.html#a3b1bcd4535e2199b57adc67fc283fb3f">bb</a></td></tr>
160
160
  <tr class="separator:a3b1bcd4535e2199b57adc67fc283fb3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
161
- <tr class="memitem:a787017e8aab6f713a409cdec76549293"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1StorePE.html">StorePE</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1StoreCHI.html#a787017e8aab6f713a409cdec76549293">inst</a></td></tr>
162
- <tr class="separator:a787017e8aab6f713a409cdec76549293"><td class="memSeparator" colspan="2">&#160;</td></tr>
161
+ <tr class="memitem:a6e58e7cde1f417ec3feaef98f6f74be2"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1StoreStmt.html">StoreStmt</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1StoreCHI.html#a6e58e7cde1f417ec3feaef98f6f74be2">inst</a></td></tr>
162
+ <tr class="separator:a6e58e7cde1f417ec3feaef98f6f74be2"><td class="memSeparator" colspan="2">&#160;</td></tr>
163
163
  </table><table class="memberdecls">
164
164
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
165
165
  Additional Inherited Members</h2></td></tr>
@@ -193,8 +193,8 @@ class SVF::StoreCHI&lt; Cond &gt;</h3>
193
193
 
194
194
  <p class="definition">Definition at line <a class="el" href="MSSAMuChi_8h_source.html#l00461">461</a> of file <a class="el" href="MSSAMuChi_8h_source.html">MSSAMuChi.h</a>.</p>
195
195
  </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
196
- <a id="aa220094176013de75a81c0bfa974b99b"></a>
197
- <h2 class="memtitle"><span class="permalink"><a href="#aa220094176013de75a81c0bfa974b99b">&#9670;&nbsp;</a></span>StoreCHI()</h2>
196
+ <a id="a34433e6e437d302014fd06b5fb624a79"></a>
197
+ <h2 class="memtitle"><span class="permalink"><a href="#a34433e6e437d302014fd06b5fb624a79">&#9670;&nbsp;</a></span>StoreCHI()</h2>
198
198
 
199
199
  <div class="memitem">
200
200
  <div class="memproto">
@@ -213,7 +213,7 @@ template&lt;class Cond &gt; </div>
213
213
  <tr>
214
214
  <td class="paramkey"></td>
215
215
  <td></td>
216
- <td class="paramtype">const <a class="el" href="classSVF_1_1StorePE.html">StorePE</a> *&#160;</td>
216
+ <td class="paramtype">const <a class="el" href="classSVF_1_1StoreStmt.html">StoreStmt</a> *&#160;</td>
217
217
  <td class="paramname"><em>i</em>, </td>
218
218
  </tr>
219
219
  <tr>
@@ -244,9 +244,9 @@ template&lt;class Cond &gt; </div>
244
244
  <p>Constructors for <a class="el" href="classSVF_1_1StoreCHI.html">StoreCHI</a>. </p>
245
245
 
246
246
  <p class="definition">Definition at line <a class="el" href="MSSAMuChi_8h_source.html#l00469">469</a> of file <a class="el" href="MSSAMuChi_8h_source.html">MSSAMuChi.h</a>.</p>
247
- <div class="fragment"><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; :</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; MSSACHI&lt;Cond&gt;(<a class="code" href="classSVF_1_1MSSADEF.html#a32682e20c9c08d2bdd5abc62ea17af18ac9b53519d32443a72c04e771489aba43">MSSADEF::StoreMSSACHI</a>,m,c), <a class="code" href="classSVF_1_1StoreCHI.html#a3b1bcd4535e2199b57adc67fc283fb3f">bb</a>(b), <a class="code" href="classSVF_1_1StoreCHI.html#a787017e8aab6f713a409cdec76549293">inst</a>(i)</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; {</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; }</div><div class="ttc" id="classSVF_1_1StoreCHI_html_a3b1bcd4535e2199b57adc67fc283fb3f"><div class="ttname"><a href="classSVF_1_1StoreCHI.html#a3b1bcd4535e2199b57adc67fc283fb3f">SVF::StoreCHI::bb</a></div><div class="ttdeci">const BasicBlock * bb</div><div class="ttdef"><b>Definition:</b> <a href="MSSAMuChi_8h_source.html#l00464">MSSAMuChi.h:464</a></div></div>
247
+ <div class="fragment"><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; :</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; MSSACHI&lt;Cond&gt;(<a class="code" href="classSVF_1_1MSSADEF.html#a32682e20c9c08d2bdd5abc62ea17af18ac9b53519d32443a72c04e771489aba43">MSSADEF::StoreMSSACHI</a>,m,c), <a class="code" href="classSVF_1_1StoreCHI.html#a3b1bcd4535e2199b57adc67fc283fb3f">bb</a>(b), <a class="code" href="classSVF_1_1StoreCHI.html#a6e58e7cde1f417ec3feaef98f6f74be2">inst</a>(i)</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; {</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; }</div><div class="ttc" id="classSVF_1_1StoreCHI_html_a3b1bcd4535e2199b57adc67fc283fb3f"><div class="ttname"><a href="classSVF_1_1StoreCHI.html#a3b1bcd4535e2199b57adc67fc283fb3f">SVF::StoreCHI::bb</a></div><div class="ttdeci">const BasicBlock * bb</div><div class="ttdef"><b>Definition:</b> <a href="MSSAMuChi_8h_source.html#l00464">MSSAMuChi.h:464</a></div></div>
248
248
  <div class="ttc" id="classSVF_1_1MSSADEF_html_a32682e20c9c08d2bdd5abc62ea17af18ac9b53519d32443a72c04e771489aba43"><div class="ttname"><a href="classSVF_1_1MSSADEF.html#a32682e20c9c08d2bdd5abc62ea17af18ac9b53519d32443a72c04e771489aba43">SVF::MSSADEF::StoreMSSACHI</a></div><div class="ttdef"><b>Definition:</b> <a href="MSSAMuChi_8h_source.html#l00332">MSSAMuChi.h:332</a></div></div>
249
- <div class="ttc" id="classSVF_1_1StoreCHI_html_a787017e8aab6f713a409cdec76549293"><div class="ttname"><a href="classSVF_1_1StoreCHI.html#a787017e8aab6f713a409cdec76549293">SVF::StoreCHI::inst</a></div><div class="ttdeci">const StorePE * inst</div><div class="ttdef"><b>Definition:</b> <a href="MSSAMuChi_8h_source.html#l00465">MSSAMuChi.h:465</a></div></div>
249
+ <div class="ttc" id="classSVF_1_1StoreCHI_html_a6e58e7cde1f417ec3feaef98f6f74be2"><div class="ttname"><a href="classSVF_1_1StoreCHI.html#a6e58e7cde1f417ec3feaef98f6f74be2">SVF::StoreCHI::inst</a></div><div class="ttdeci">const StoreStmt * inst</div><div class="ttdef"><b>Definition:</b> <a href="MSSAMuChi_8h_source.html#l00465">MSSAMuChi.h:465</a></div></div>
250
250
  </div><!-- fragment -->
251
251
  </div>
252
252
  </div>
@@ -446,8 +446,8 @@ template&lt;class Cond &gt; </div>
446
446
  </div><!-- fragment -->
447
447
  </div>
448
448
  </div>
449
- <a id="ab86317f542f22cf46a6376c9811becf7"></a>
450
- <h2 class="memtitle"><span class="permalink"><a href="#ab86317f542f22cf46a6376c9811becf7">&#9670;&nbsp;</a></span>getStoreInst()</h2>
449
+ <a id="aead80cf9aad5818f16ad61d7a83b7c79"></a>
450
+ <h2 class="memtitle"><span class="permalink"><a href="#aead80cf9aad5818f16ad61d7a83b7c79">&#9670;&nbsp;</a></span>getStoreInst()</h2>
451
451
 
452
452
  <div class="memitem">
453
453
  <div class="memproto">
@@ -458,7 +458,7 @@ template&lt;class Cond &gt; </div>
458
458
  <td class="mlabels-left">
459
459
  <table class="memname">
460
460
  <tr>
461
- <td class="memname">const <a class="el" href="classSVF_1_1StorePE.html">StorePE</a>* <a class="el" href="classSVF_1_1StoreCHI.html">SVF::StoreCHI</a>&lt; Cond &gt;::getStoreInst </td>
461
+ <td class="memname">const <a class="el" href="classSVF_1_1StoreStmt.html">StoreStmt</a>* <a class="el" href="classSVF_1_1StoreCHI.html">SVF::StoreCHI</a>&lt; Cond &gt;::getStoreInst </td>
462
462
  <td>(</td>
463
463
  <td class="paramname"></td><td>)</td>
464
464
  <td> const</td>
@@ -474,7 +474,7 @@ template&lt;class Cond &gt; </div>
474
474
  <p>Get store instruction. </p>
475
475
 
476
476
  <p class="definition">Definition at line <a class="el" href="MSSAMuChi_8h_source.html#l00485">485</a> of file <a class="el" href="MSSAMuChi_8h_source.html">MSSAMuChi.h</a>.</p>
477
- <div class="fragment"><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; {</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1StoreCHI.html#a787017e8aab6f713a409cdec76549293">inst</a>;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; }</div><div class="ttc" id="classSVF_1_1StoreCHI_html_a787017e8aab6f713a409cdec76549293"><div class="ttname"><a href="classSVF_1_1StoreCHI.html#a787017e8aab6f713a409cdec76549293">SVF::StoreCHI::inst</a></div><div class="ttdeci">const StorePE * inst</div><div class="ttdef"><b>Definition:</b> <a href="MSSAMuChi_8h_source.html#l00465">MSSAMuChi.h:465</a></div></div>
477
+ <div class="fragment"><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; {</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1StoreCHI.html#a6e58e7cde1f417ec3feaef98f6f74be2">inst</a>;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; }</div><div class="ttc" id="classSVF_1_1StoreCHI_html_a6e58e7cde1f417ec3feaef98f6f74be2"><div class="ttname"><a href="classSVF_1_1StoreCHI.html#a6e58e7cde1f417ec3feaef98f6f74be2">SVF::StoreCHI::inst</a></div><div class="ttdeci">const StoreStmt * inst</div><div class="ttdef"><b>Definition:</b> <a href="MSSAMuChi_8h_source.html#l00465">MSSAMuChi.h:465</a></div></div>
478
478
  </div><!-- fragment -->
479
479
  </div>
480
480
  </div>
@@ -505,8 +505,8 @@ template&lt;class Cond &gt; </div>
505
505
 
506
506
  </div>
507
507
  </div>
508
- <a id="a787017e8aab6f713a409cdec76549293"></a>
509
- <h2 class="memtitle"><span class="permalink"><a href="#a787017e8aab6f713a409cdec76549293">&#9670;&nbsp;</a></span>inst</h2>
508
+ <a id="a6e58e7cde1f417ec3feaef98f6f74be2"></a>
509
+ <h2 class="memtitle"><span class="permalink"><a href="#a6e58e7cde1f417ec3feaef98f6f74be2">&#9670;&nbsp;</a></span>inst</h2>
510
510
 
511
511
  <div class="memitem">
512
512
  <div class="memproto">
@@ -517,7 +517,7 @@ template&lt;class Cond &gt; </div>
517
517
  <td class="mlabels-left">
518
518
  <table class="memname">
519
519
  <tr>
520
- <td class="memname">const <a class="el" href="classSVF_1_1StorePE.html">StorePE</a>* <a class="el" href="classSVF_1_1StoreCHI.html">SVF::StoreCHI</a>&lt; Cond &gt;::inst</td>
520
+ <td class="memname">const <a class="el" href="classSVF_1_1StoreStmt.html">StoreStmt</a>* <a class="el" href="classSVF_1_1StoreCHI.html">SVF::StoreCHI</a>&lt; Cond &gt;::inst</td>
521
521
  </tr>
522
522
  </table>
523
523
  </td>