svf-tools 1.0.321 → 1.0.325

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 (487) 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/ConsGNode_8h_source.html +5 -5
  6. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +13 -12
  7. package/SVF-doxygen/html/html/ConsG_8h_source.html +15 -15
  8. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +6 -6
  9. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +3 -3
  10. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +3 -3
  11. package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
  12. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +3 -3
  14. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +8 -8
  15. package/SVF-doxygen/html/html/FSMPTA_8h_source.html +1 -1
  16. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +2 -2
  17. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +3 -3
  18. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +8 -8
  19. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +5 -5
  20. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +2 -2
  21. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +2 -2
  22. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +4 -4
  23. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +4 -4
  24. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +4 -4
  25. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +2 -2
  26. package/SVF-doxygen/html/html/IRGraph_8cpp.html +1 -0
  27. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +20 -18
  28. package/SVF-doxygen/html/html/IRGraph_8h_source.html +13 -13
  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/Options_8cpp_source.html +2 -1
  38. package/SVF-doxygen/html/html/Options_8h_source.html +2 -1
  39. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +3 -3
  40. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +8 -8
  41. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +8 -8
  42. package/SVF-doxygen/html/html/PointerAnalysisImpl_8h_source.html +3 -3
  43. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +8 -8
  44. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +17 -17
  45. package/SVF-doxygen/html/html/SVFGEdge_8h_source.html +1 -1
  46. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
  47. package/SVF-doxygen/html/html/SVFGOPT_8cpp_source.html +1 -1
  48. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +3 -3
  49. package/SVF-doxygen/html/html/SVFG_8cpp.html +1 -0
  50. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +63 -61
  51. package/SVF-doxygen/html/html/SVFG_8h_source.html +20 -20
  52. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +5 -5
  53. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +42 -42
  54. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +61 -61
  55. package/SVF-doxygen/html/html/SVFIR_8h_source.html +153 -154
  56. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +22 -22
  57. package/SVF-doxygen/html/html/SVFStatements_8h.html +11 -11
  58. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +133 -132
  59. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +9 -9
  60. package/SVF-doxygen/html/html/SVFVariables_8h.html +9 -9
  61. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +78 -78
  62. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +6 -6
  63. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
  64. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +3 -3
  65. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
  66. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +13 -13
  67. package/SVF-doxygen/html/html/VFGNode_8h_source.html +17 -17
  68. package/SVF-doxygen/html/html/VFG_8cpp_source.html +48 -48
  69. package/SVF-doxygen/html/html/VFG_8h_source.html +35 -35
  70. package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +5 -5
  71. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +7 -7
  72. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +1 -1
  73. package/SVF-doxygen/html/html/annotated.html +21 -21
  74. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +2 -2
  75. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +2 -2
  76. package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +2 -2
  77. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt-members.html +137 -0
  78. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +500 -0
  79. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.png +0 -0
  80. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode-members.html +1 -1
  81. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +7 -7
  82. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +3 -3
  83. package/SVF-doxygen/html/html/classSVF_1_1Andersen-members.html +4 -4
  84. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +34 -34
  85. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase-members.html +4 -4
  86. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +12 -12
  87. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD-members.html +4 -4
  88. package/SVF-doxygen/html/html/classSVF_1_1AndersenHCD.html +8 -8
  89. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD-members.html +4 -4
  90. package/SVF-doxygen/html/html/classSVF_1_1AndersenHLCD.html +8 -8
  91. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD-members.html +4 -4
  92. package/SVF-doxygen/html/html/classSVF_1_1AndersenLCD.html +8 -8
  93. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD-members.html +4 -4
  94. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +8 -8
  95. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +4 -4
  96. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +11 -11
  97. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +9 -9
  98. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff-members.html +4 -4
  99. package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +8 -8
  100. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl-members.html +4 -4
  101. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +26 -26
  102. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt-members.html +155 -0
  103. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +756 -0
  104. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.png +0 -0
  105. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt-members.html +20 -19
  106. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +33 -31
  107. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +3 -3
  108. package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode-members.html +8 -8
  109. package/SVF-doxygen/html/html/classSVF_1_1CallBlockNode.html +6 -6
  110. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +2 -2
  111. package/SVF-doxygen/html/html/classSVF_1_1CallPE-members.html +20 -19
  112. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +24 -22
  113. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar-members.html +169 -0
  114. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +537 -0
  115. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.png +0 -0
  116. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar-members.html +169 -0
  117. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +547 -0
  118. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.png +0 -0
  119. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar-members.html +172 -0
  120. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +556 -0
  121. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.png +0 -0
  122. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt-members.html +75 -22
  123. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +479 -93
  124. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.png +0 -0
  125. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl-members.html +4 -4
  126. package/SVF-doxygen/html/html/classSVF_1_1CondPTAImpl.html +11 -11
  127. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph-members.html +5 -5
  128. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +46 -46
  129. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode-members.html +26 -26
  130. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +43 -43
  131. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA-members.html +4 -4
  132. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +18 -18
  133. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt-members.html +57 -21
  134. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +253 -89
  135. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.png +0 -0
  136. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode-members.html +1 -1
  137. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +7 -7
  138. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +1 -1
  139. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +3 -3
  140. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +10 -10
  141. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG-members.html +19 -19
  142. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +27 -27
  143. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar-members.html +167 -0
  144. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +531 -0
  145. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.png +0 -0
  146. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar-members.html +165 -0
  147. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +502 -0
  148. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.png +0 -0
  149. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar-members.html +167 -0
  150. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +577 -0
  151. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.png +0 -0
  152. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA-members.html +4 -4
  153. package/SVF-doxygen/html/html/classSVF_1_1FSMPTA.html +8 -8
  154. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA-members.html +4 -4
  155. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +16 -16
  156. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive-members.html +4 -4
  157. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +27 -27
  158. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +8 -8
  159. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC-members.html +8 -8
  160. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +26 -26
  161. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +2 -2
  162. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +4 -4
  163. package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode-members.html +6 -6
  164. package/SVF-doxygen/html/html/classSVF_1_1FunEntryBlockNode.html +6 -6
  165. package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode-members.html +6 -6
  166. package/SVF-doxygen/html/html/classSVF_1_1FunExitBlockNode.html +6 -6
  167. package/SVF-doxygen/html/html/classSVF_1_1FunptrDDAClient.html +1 -1
  168. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.html +6 -6
  169. package/SVF-doxygen/html/html/classSVF_1_1GenericEdge.png +0 -0
  170. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +23 -22
  171. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
  172. package/SVF-doxygen/html/html/classSVF_1_1GepObjPN-members.html +12 -12
  173. package/SVF-doxygen/html/html/classSVF_1_1GepObjPN.html +61 -61
  174. package/SVF-doxygen/html/html/classSVF_1_1GepObjPN.png +0 -0
  175. package/SVF-doxygen/html/html/classSVF_1_1GepStmt-members.html +57 -22
  176. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +259 -118
  177. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.png +0 -0
  178. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode-members.html +1 -1
  179. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +7 -7
  180. package/SVF-doxygen/html/html/classSVF_1_1GepValVar-members.html +170 -0
  181. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +752 -0
  182. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.png +0 -0
  183. package/SVF-doxygen/html/html/classSVF_1_1GlobalBlockNode-members.html +6 -6
  184. package/SVF-doxygen/html/html/classSVF_1_1GlobalBlockNode.html +6 -6
  185. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode-members.html +6 -6
  186. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +22 -22
  187. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +6 -6
  188. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +1 -1
  189. package/SVF-doxygen/html/html/classSVF_1_1IRGraph-members.html +8 -8
  190. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +54 -54
  191. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +2 -2
  192. package/SVF-doxygen/html/html/classSVF_1_1InterBlockNode-members.html +6 -6
  193. package/SVF-doxygen/html/html/classSVF_1_1InterBlockNode.html +6 -6
  194. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG-members.html +20 -20
  195. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +27 -27
  196. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +3 -3
  197. package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode-members.html +6 -6
  198. package/SVF-doxygen/html/html/classSVF_1_1IntraBlockNode.html +6 -6
  199. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG-members.html +20 -20
  200. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +27 -27
  201. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +2 -2
  202. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +3 -3
  203. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +6 -6
  204. package/SVF-doxygen/html/html/classSVF_1_1LoadMU-members.html +3 -3
  205. package/SVF-doxygen/html/html/classSVF_1_1LoadMU.html +20 -20
  206. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt-members.html +57 -21
  207. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +253 -89
  208. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.png +0 -0
  209. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode-members.html +1 -1
  210. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +7 -7
  211. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator-members.html +23 -23
  212. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +147 -147
  213. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +2 -2
  214. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +2 -2
  215. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +6 -6
  216. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +2 -2
  217. package/SVF-doxygen/html/html/classSVF_1_1MemSSA-members.html +25 -25
  218. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +102 -102
  219. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt-members.html +24 -23
  220. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +36 -34
  221. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.png +0 -0
  222. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt-members.html +142 -0
  223. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt.html +649 -0
  224. package/SVF-doxygen/html/html/classSVF_1_1NormalGepStmt.png +0 -0
  225. package/SVF-doxygen/html/html/classSVF_1_1ObjVar-members.html +165 -0
  226. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +644 -0
  227. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.png +0 -0
  228. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG-members.html +5 -5
  229. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +13 -13
  230. package/SVF-doxygen/html/html/classSVF_1_1Options-members.html +21 -20
  231. package/SVF-doxygen/html/html/classSVF_1_1Options.html +26 -0
  232. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +16 -16
  233. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +8 -8
  234. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt-members.html +74 -22
  235. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +447 -98
  236. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.png +0 -0
  237. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis-members.html +4 -4
  238. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +55 -55
  239. package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode-members.html +7 -7
  240. package/SVF-doxygen/html/html/classSVF_1_1RetBlockNode.html +6 -6
  241. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +2 -2
  242. package/SVF-doxygen/html/html/classSVF_1_1RetPE-members.html +20 -19
  243. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +24 -22
  244. package/SVF-doxygen/html/html/classSVF_1_1RetPN-members.html +8 -8
  245. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +24 -24
  246. package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +56 -56
  247. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +103 -103
  248. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +3 -3
  249. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +68 -68
  250. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +45 -45
  251. package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +132 -133
  252. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +759 -777
  253. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +12 -12
  254. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +180 -180
  255. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt-members.html +23 -22
  256. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +57 -39
  257. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.png +0 -0
  258. package/SVF-doxygen/html/html/classSVF_1_1SVFVar-members.html +8 -8
  259. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +82 -82
  260. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.png +0 -0
  261. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +11 -11
  262. package/SVF-doxygen/html/html/classSVF_1_1SrcSnkDDA.html +1 -1
  263. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard-members.html +4 -4
  264. package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +8 -8
  265. package/SVF-doxygen/html/html/classSVF_1_1StoreCHI-members.html +3 -3
  266. package/SVF-doxygen/html/html/classSVF_1_1StoreCHI.html +20 -20
  267. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt-members.html +57 -21
  268. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +260 -89
  269. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.png +0 -0
  270. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode-members.html +1 -1
  271. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +7 -7
  272. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE-members.html +23 -22
  273. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +18 -16
  274. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE-members.html +23 -22
  275. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +18 -16
  276. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +3 -3
  277. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +2 -2
  278. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis-members.html +4 -4
  279. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +10 -10
  280. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +28 -28
  281. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt-members.html +147 -0
  282. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +794 -0
  283. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.png +0 -0
  284. package/SVF-doxygen/html/html/classSVF_1_1VFG-members.html +42 -42
  285. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +145 -145
  286. package/SVF-doxygen/html/html/classSVF_1_1ValVar-members.html +163 -0
  287. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +521 -0
  288. package/SVF-doxygen/html/html/classSVF_1_1ValVar.png +0 -0
  289. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN-members.html +8 -8
  290. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +24 -24
  291. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt-members.html +139 -0
  292. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt.html +544 -0
  293. package/SVF-doxygen/html/html/classSVF_1_1VariantGepStmt.png +0 -0
  294. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive-members.html +4 -4
  295. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +18 -18
  296. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +4 -4
  297. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +3 -3
  298. package/SVF-doxygen/html/html/classes.html +18 -18
  299. package/SVF-doxygen/html/html/functions_a.html +55 -55
  300. package/SVF-doxygen/html/html/functions_b.html +2 -2
  301. package/SVF-doxygen/html/html/functions_c.html +54 -59
  302. package/SVF-doxygen/html/html/functions_d.html +4 -4
  303. package/SVF-doxygen/html/html/functions_f.html +5 -5
  304. package/SVF-doxygen/html/html/functions_func.html +54 -54
  305. package/SVF-doxygen/html/html/functions_func_b.html +2 -2
  306. package/SVF-doxygen/html/html/functions_func_c.html +30 -30
  307. package/SVF-doxygen/html/html/functions_func_d.html +4 -4
  308. package/SVF-doxygen/html/html/functions_func_f.html +2 -2
  309. package/SVF-doxygen/html/html/functions_func_g.html +107 -105
  310. package/SVF-doxygen/html/html/functions_func_h.html +6 -6
  311. package/SVF-doxygen/html/html/functions_func_l.html +3 -3
  312. package/SVF-doxygen/html/html/functions_func_n.html +2 -2
  313. package/SVF-doxygen/html/html/functions_func_o.html +15 -15
  314. package/SVF-doxygen/html/html/functions_func_p.html +2 -2
  315. package/SVF-doxygen/html/html/functions_func_s.html +4 -4
  316. package/SVF-doxygen/html/html/functions_func_t.html +20 -20
  317. package/SVF-doxygen/html/html/functions_func_u.html +2 -2
  318. package/SVF-doxygen/html/html/functions_func_v.html +5 -5
  319. package/SVF-doxygen/html/html/functions_g.html +123 -121
  320. package/SVF-doxygen/html/html/functions_h.html +6 -6
  321. package/SVF-doxygen/html/html/functions_i.html +15 -15
  322. package/SVF-doxygen/html/html/functions_k.html +9 -0
  323. package/SVF-doxygen/html/html/functions_l.html +12 -12
  324. package/SVF-doxygen/html/html/functions_m.html +1 -1
  325. package/SVF-doxygen/html/html/functions_n.html +6 -6
  326. package/SVF-doxygen/html/html/functions_o.html +32 -35
  327. package/SVF-doxygen/html/html/functions_p.html +32 -49
  328. package/SVF-doxygen/html/html/functions_r.html +1 -1
  329. package/SVF-doxygen/html/html/functions_s.html +33 -14
  330. package/SVF-doxygen/html/html/functions_t.html +24 -24
  331. package/SVF-doxygen/html/html/functions_type_c.html +1 -4
  332. package/SVF-doxygen/html/html/functions_type_f.html +2 -2
  333. package/SVF-doxygen/html/html/functions_type_g.html +2 -2
  334. package/SVF-doxygen/html/html/functions_type_i.html +3 -3
  335. package/SVF-doxygen/html/html/functions_type_k.html +3 -0
  336. package/SVF-doxygen/html/html/functions_type_l.html +3 -3
  337. package/SVF-doxygen/html/html/functions_type_p.html +3 -19
  338. package/SVF-doxygen/html/html/functions_type_s.html +19 -3
  339. package/SVF-doxygen/html/html/functions_type_v.html +1 -1
  340. package/SVF-doxygen/html/html/functions_u.html +2 -2
  341. package/SVF-doxygen/html/html/functions_v.html +8 -8
  342. package/SVF-doxygen/html/html/functions_vars_f.html +1 -1
  343. package/SVF-doxygen/html/html/functions_vars_g.html +8 -8
  344. package/SVF-doxygen/html/html/functions_vars_i.html +9 -9
  345. package/SVF-doxygen/html/html/functions_vars_k.html +6 -0
  346. package/SVF-doxygen/html/html/functions_vars_l.html +2 -2
  347. package/SVF-doxygen/html/html/functions_vars_m.html +1 -1
  348. package/SVF-doxygen/html/html/functions_vars_o.html +3 -4
  349. package/SVF-doxygen/html/html/functions_vars_p.html +4 -7
  350. package/SVF-doxygen/html/html/functions_vars_s.html +3 -0
  351. package/SVF-doxygen/html/html/functions_w.html +5 -9
  352. package/SVF-doxygen/html/html/hierarchy.html +65 -65
  353. package/SVF-doxygen/html/html/namespaceSVF.html +24 -24
  354. package/SVF-doxygen/html/html/search/all_1.js +39 -39
  355. package/SVF-doxygen/html/html/search/all_10.js +12 -17
  356. package/SVF-doxygen/html/html/search/all_12.js +1 -1
  357. package/SVF-doxygen/html/html/search/all_13.js +17 -12
  358. package/SVF-doxygen/html/html/search/all_14.js +5 -5
  359. package/SVF-doxygen/html/html/search/all_15.js +2 -2
  360. package/SVF-doxygen/html/html/search/all_16.js +5 -5
  361. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  362. package/SVF-doxygen/html/html/search/all_2.js +1 -1
  363. package/SVF-doxygen/html/html/search/all_3.js +9 -10
  364. package/SVF-doxygen/html/html/search/all_4.js +2 -2
  365. package/SVF-doxygen/html/html/search/all_6.js +4 -4
  366. package/SVF-doxygen/html/html/search/all_7.js +54 -53
  367. package/SVF-doxygen/html/html/search/all_8.js +2 -2
  368. package/SVF-doxygen/html/html/search/all_9.js +4 -4
  369. package/SVF-doxygen/html/html/search/all_b.js +3 -0
  370. package/SVF-doxygen/html/html/search/all_c.js +7 -7
  371. package/SVF-doxygen/html/html/search/all_d.js +1 -1
  372. package/SVF-doxygen/html/html/search/all_e.js +5 -5
  373. package/SVF-doxygen/html/html/search/all_f.js +5 -5
  374. package/SVF-doxygen/html/html/search/classes_0.js +1 -1
  375. package/SVF-doxygen/html/html/search/classes_1.js +1 -1
  376. package/SVF-doxygen/html/html/search/classes_11.js +1 -1
  377. package/SVF-doxygen/html/html/search/classes_12.js +2 -2
  378. package/SVF-doxygen/html/html/search/classes_2.js +5 -5
  379. package/SVF-doxygen/html/html/search/classes_3.js +2 -2
  380. package/SVF-doxygen/html/html/search/classes_5.js +1 -1
  381. package/SVF-doxygen/html/html/search/classes_6.js +2 -2
  382. package/SVF-doxygen/html/html/search/classes_9.js +1 -1
  383. package/SVF-doxygen/html/html/search/classes_b.js +1 -1
  384. package/SVF-doxygen/html/html/search/classes_c.js +1 -1
  385. package/SVF-doxygen/html/html/search/classes_d.js +1 -1
  386. package/SVF-doxygen/html/html/search/classes_f.js +1 -1
  387. package/SVF-doxygen/html/html/search/functions_0.js +39 -39
  388. package/SVF-doxygen/html/html/search/functions_1.js +1 -1
  389. package/SVF-doxygen/html/html/search/functions_10.js +4 -4
  390. package/SVF-doxygen/html/html/search/functions_11.js +1 -1
  391. package/SVF-doxygen/html/html/search/functions_12.js +1 -1
  392. package/SVF-doxygen/html/html/search/functions_13.js +2 -2
  393. package/SVF-doxygen/html/html/search/functions_2.js +7 -7
  394. package/SVF-doxygen/html/html/search/functions_3.js +2 -2
  395. package/SVF-doxygen/html/html/search/functions_5.js +1 -1
  396. package/SVF-doxygen/html/html/search/functions_6.js +49 -48
  397. package/SVF-doxygen/html/html/search/functions_7.js +2 -2
  398. package/SVF-doxygen/html/html/search/functions_a.js +3 -3
  399. package/SVF-doxygen/html/html/search/functions_c.js +1 -1
  400. package/SVF-doxygen/html/html/search/functions_d.js +2 -2
  401. package/SVF-doxygen/html/html/search/functions_e.js +1 -1
  402. package/SVF-doxygen/html/html/search/typedefs_11.js +7 -3
  403. package/SVF-doxygen/html/html/search/typedefs_14.js +1 -1
  404. package/SVF-doxygen/html/html/search/typedefs_2.js +1 -2
  405. package/SVF-doxygen/html/html/search/typedefs_5.js +2 -2
  406. package/SVF-doxygen/html/html/search/typedefs_6.js +1 -1
  407. package/SVF-doxygen/html/html/search/typedefs_8.js +1 -1
  408. package/SVF-doxygen/html/html/search/typedefs_a.js +2 -1
  409. package/SVF-doxygen/html/html/search/typedefs_b.js +3 -3
  410. package/SVF-doxygen/html/html/search/typedefs_f.js +3 -7
  411. package/SVF-doxygen/html/html/search/variables_10.js +2 -3
  412. package/SVF-doxygen/html/html/search/variables_13.js +1 -0
  413. package/SVF-doxygen/html/html/search/variables_14.js +3 -3
  414. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  415. package/SVF-doxygen/html/html/search/variables_6.js +1 -1
  416. package/SVF-doxygen/html/html/search/variables_7.js +4 -4
  417. package/SVF-doxygen/html/html/search/variables_9.js +4 -4
  418. package/SVF-doxygen/html/html/search/variables_b.js +3 -1
  419. package/SVF-doxygen/html/html/search/variables_c.js +1 -1
  420. package/SVF-doxygen/html/html/search/variables_d.js +1 -1
  421. package/SVF-doxygen/html/html/search/variables_e.js +3 -3
  422. package/SVF-doxygen/html/html/search/variables_f.js +2 -2
  423. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +9 -9
  424. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +2 -2
  425. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +18 -18
  426. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01OfflineConsG_01_5_01_4.html +2 -2
  427. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +20 -20
  428. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +1 -1
  429. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  430. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  431. package/include/DDA/ContextDDA.h +1 -1
  432. package/include/DDA/FlowDDA.h +1 -1
  433. package/include/Graphs/ConsG.h +10 -10
  434. package/include/Graphs/ICFGNode.h +4 -4
  435. package/include/Graphs/IRGraph.h +7 -7
  436. package/include/Graphs/VFG.h +13 -13
  437. package/include/Graphs/VFGNode.h +6 -6
  438. package/include/MSSA/MSSAMuChi.h +6 -6
  439. package/include/MSSA/MemRegion.h +11 -11
  440. package/include/MSSA/MemSSA.h +11 -11
  441. package/include/MemoryModel/PointerAnalysis.h +9 -9
  442. package/include/MemoryModel/PointerAnalysisImpl.h +4 -4
  443. package/include/MemoryModel/SVFIR.h +82 -83
  444. package/include/MemoryModel/SVFStatements.h +97 -92
  445. package/include/MemoryModel/SVFVariables.h +71 -71
  446. package/include/SVF-FE/SVFIRBuilder.h +24 -24
  447. package/include/Util/IRAnnotator.h +1 -1
  448. package/include/Util/Options.h +3 -1
  449. package/include/Util/TypeBasedHeapCloning.h +2 -2
  450. package/include/WPA/Andersen.h +1 -1
  451. package/include/WPA/FlowSensitiveTBHC.h +1 -1
  452. package/lib/DDA/ContextDDA.cpp +6 -6
  453. package/lib/DDA/DDAClient.cpp +6 -6
  454. package/lib/DDA/DDAStat.cpp +2 -2
  455. package/lib/DDA/FlowDDA.cpp +4 -4
  456. package/lib/Graphs/ConsG.cpp +37 -36
  457. package/lib/Graphs/ICFG.cpp +4 -4
  458. package/lib/Graphs/IRGraph.cpp +27 -24
  459. package/lib/Graphs/OfflineConsG.cpp +8 -8
  460. package/lib/Graphs/SVFG.cpp +18 -16
  461. package/lib/Graphs/ThreadCallGraph.cpp +2 -2
  462. package/lib/Graphs/VFG.cpp +52 -52
  463. package/lib/MSSA/MemRegion.cpp +23 -23
  464. package/lib/MSSA/MemSSA.cpp +15 -15
  465. package/lib/MTA/MTAAnnotator.cpp +5 -5
  466. package/lib/MemoryModel/PAGBuilderFromFile.cpp +13 -13
  467. package/lib/MemoryModel/PointerAnalysis.cpp +9 -9
  468. package/lib/MemoryModel/PointerAnalysisImpl.cpp +14 -14
  469. package/lib/MemoryModel/SVFIR.cpp +95 -95
  470. package/lib/MemoryModel/SVFStatements.cpp +24 -24
  471. package/lib/MemoryModel/SVFVariables.cpp +19 -19
  472. package/lib/SABER/LeakChecker.cpp +2 -2
  473. package/lib/SABER/SaberSVFGBuilder.cpp +5 -5
  474. package/lib/SVF-FE/Graph2Json.cpp +3 -3
  475. package/lib/SVF-FE/SVFIRBuilder.cpp +22 -22
  476. package/lib/Util/Options.cpp +6 -0
  477. package/lib/Util/PTAStat.cpp +8 -8
  478. package/lib/Util/TypeBasedHeapCloning.cpp +22 -22
  479. package/lib/WPA/Andersen.cpp +13 -13
  480. package/lib/WPA/AndersenSFR.cpp +2 -2
  481. package/lib/WPA/AndersenStat.cpp +6 -6
  482. package/lib/WPA/FlowSensitive.cpp +8 -8
  483. package/lib/WPA/FlowSensitiveStat.cpp +4 -4
  484. package/lib/WPA/FlowSensitiveTBHC.cpp +9 -9
  485. package/lib/WPA/VersionedFlowSensitive.cpp +2 -2
  486. package/lib/WPA/VersionedFlowSensitiveStat.cpp +1 -1
  487. package/package.json +1 -1
@@ -40,14 +40,14 @@ namespace SVF
40
40
 
41
41
  class SVFVar;
42
42
  /*
43
- * SVFIR node
43
+ * SVFIR program variables (PAGNodes)
44
44
  */
45
45
  typedef GenericNode<SVFVar,SVFStmt> GenericPAGNodeTy;
46
46
  class SVFVar : public GenericPAGNodeTy
47
47
  {
48
48
 
49
49
  public:
50
- /// Nine kinds of SVFIR nodes
50
+ /// Nine kinds of SVFIR variables
51
51
  /// ValNode: llvm pointer value
52
52
  /// ObjNode: memory object
53
53
  /// RetNode: unique return node
@@ -76,8 +76,8 @@ public:
76
76
 
77
77
  protected:
78
78
  const Value* value; ///< value of this SVFIR node
79
- SVFStmt::PAGKindToEdgeSetMapTy InEdgeKindToSetMap;
80
- SVFStmt::PAGKindToEdgeSetMapTy OutEdgeKindToSetMap;
79
+ SVFStmt::KindToSVFStmtMapTy InEdgeKindToSetMap;
80
+ SVFStmt::KindToSVFStmtMapTy OutEdgeKindToSetMap;
81
81
  bool isTLPointer; /// top-level pointer
82
82
  bool isATPointer; /// address-taken pointer
83
83
 
@@ -157,22 +157,22 @@ public:
157
157
  return nullptr;
158
158
  }
159
159
 
160
- /// Get incoming SVFIR edges
161
- inline SVFStmt::PAGEdgeSetTy& getIncomingEdges(SVFStmt::PEDGEK kind)
160
+ /// Get incoming SVFIR statements (edges)
161
+ inline SVFStmt::SVFStmtSetTy& getIncomingEdges(SVFStmt::PEDGEK kind)
162
162
  {
163
163
  return InEdgeKindToSetMap[kind];
164
164
  }
165
165
 
166
- /// Get outgoing SVFIR edges
167
- inline SVFStmt::PAGEdgeSetTy& getOutgoingEdges(SVFStmt::PEDGEK kind)
166
+ /// Get outgoing SVFIR statements (edges)
167
+ inline SVFStmt::SVFStmtSetTy& getOutgoingEdges(SVFStmt::PEDGEK kind)
168
168
  {
169
169
  return OutEdgeKindToSetMap[kind];
170
170
  }
171
171
 
172
- /// Has incoming SVFIR edges
172
+ /// Has incoming SVFIR statements (edges)
173
173
  inline bool hasIncomingEdges(SVFStmt::PEDGEK kind) const
174
174
  {
175
- SVFStmt::PAGKindToEdgeSetMapTy::const_iterator it = InEdgeKindToSetMap.find(kind);
175
+ SVFStmt::KindToSVFStmtMapTy::const_iterator it = InEdgeKindToSetMap.find(kind);
176
176
  if (it != InEdgeKindToSetMap.end())
177
177
  return (!it->second.empty());
178
178
  else
@@ -182,7 +182,7 @@ public:
182
182
  /// Has incoming VariantGepEdges
183
183
  inline bool hasIncomingVariantGepEdge() const
184
184
  {
185
- SVFStmt::PAGKindToEdgeSetMapTy::const_iterator it = InEdgeKindToSetMap.find(SVFStmt::VariantGep);
185
+ SVFStmt::KindToSVFStmtMapTy::const_iterator it = InEdgeKindToSetMap.find(SVFStmt::VariantGep);
186
186
  if (it != InEdgeKindToSetMap.end())
187
187
  {
188
188
  return (!it->second.empty());
@@ -191,25 +191,25 @@ public:
191
191
  }
192
192
 
193
193
  /// Get incoming SVFStmt iterator
194
- inline SVFStmt::PAGEdgeSetTy::iterator getIncomingEdgesBegin(SVFStmt::PEDGEK kind) const
194
+ inline SVFStmt::SVFStmtSetTy::iterator getIncomingEdgesBegin(SVFStmt::PEDGEK kind) const
195
195
  {
196
- SVFStmt::PAGKindToEdgeSetMapTy::const_iterator it = InEdgeKindToSetMap.find(kind);
196
+ SVFStmt::KindToSVFStmtMapTy::const_iterator it = InEdgeKindToSetMap.find(kind);
197
197
  assert(it!=InEdgeKindToSetMap.end() && "The node does not have such kind of edge");
198
198
  return it->second.begin();
199
199
  }
200
200
 
201
201
  /// Get incoming SVFStmt iterator
202
- inline SVFStmt::PAGEdgeSetTy::iterator getIncomingEdgesEnd(SVFStmt::PEDGEK kind) const
202
+ inline SVFStmt::SVFStmtSetTy::iterator getIncomingEdgesEnd(SVFStmt::PEDGEK kind) const
203
203
  {
204
- SVFStmt::PAGKindToEdgeSetMapTy::const_iterator it = InEdgeKindToSetMap.find(kind);
204
+ SVFStmt::KindToSVFStmtMapTy::const_iterator it = InEdgeKindToSetMap.find(kind);
205
205
  assert(it!=InEdgeKindToSetMap.end() && "The node does not have such kind of edge");
206
206
  return it->second.end();
207
207
  }
208
208
 
209
- /// Has outgoing SVFIR edges
209
+ /// Has outgoing SVFIR statements (edges)
210
210
  inline bool hasOutgoingEdges(SVFStmt::PEDGEK kind) const
211
211
  {
212
- SVFStmt::PAGKindToEdgeSetMapTy::const_iterator it = OutEdgeKindToSetMap.find(kind);
212
+ SVFStmt::KindToSVFStmtMapTy::const_iterator it = OutEdgeKindToSetMap.find(kind);
213
213
  if (it != OutEdgeKindToSetMap.end())
214
214
  return (!it->second.empty());
215
215
  else
@@ -217,17 +217,17 @@ public:
217
217
  }
218
218
 
219
219
  /// Get outgoing SVFStmt iterator
220
- inline SVFStmt::PAGEdgeSetTy::iterator getOutgoingEdgesBegin(SVFStmt::PEDGEK kind) const
220
+ inline SVFStmt::SVFStmtSetTy::iterator getOutgoingEdgesBegin(SVFStmt::PEDGEK kind) const
221
221
  {
222
- SVFStmt::PAGKindToEdgeSetMapTy::const_iterator it = OutEdgeKindToSetMap.find(kind);
222
+ SVFStmt::KindToSVFStmtMapTy::const_iterator it = OutEdgeKindToSetMap.find(kind);
223
223
  assert(it!=OutEdgeKindToSetMap.end() && "The node does not have such kind of edge");
224
224
  return it->second.begin();
225
225
  }
226
226
 
227
227
  /// Get outgoing SVFStmt iterator
228
- inline SVFStmt::PAGEdgeSetTy::iterator getOutgoingEdgesEnd(SVFStmt::PEDGEK kind) const
228
+ inline SVFStmt::SVFStmtSetTy::iterator getOutgoingEdgesEnd(SVFStmt::PEDGEK kind) const
229
229
  {
230
- SVFStmt::PAGKindToEdgeSetMapTy::const_iterator it = OutEdgeKindToSetMap.find(kind);
230
+ SVFStmt::KindToSVFStmtMapTy::const_iterator it = OutEdgeKindToSetMap.find(kind);
231
231
  assert(it!=OutEdgeKindToSetMap.end() && "The node does not have such kind of edge");
232
232
  return it->second.end();
233
233
  }
@@ -268,15 +268,15 @@ public:
268
268
 
269
269
 
270
270
  /*
271
- * Value(Pointer) node
271
+ * Value (Pointer) variable
272
272
  */
273
- class ValPN: public SVFVar
273
+ class ValVar: public SVFVar
274
274
  {
275
275
 
276
276
  public:
277
277
  /// Methods for support type inquiry through isa, cast, and dyn_cast:
278
278
  //@{
279
- static inline bool classof(const ValPN *)
279
+ static inline bool classof(const ValVar *)
280
280
  {
281
281
  return true;
282
282
  }
@@ -295,7 +295,7 @@ public:
295
295
  //@}
296
296
 
297
297
  /// Constructor
298
- ValPN(const Value* val, NodeID i, PNODEK ty = ValNode) :
298
+ ValVar(const Value* val, NodeID i, PNODEK ty = ValNode) :
299
299
  SVFVar(val, i, ty)
300
300
  {
301
301
  }
@@ -312,22 +312,22 @@ public:
312
312
 
313
313
 
314
314
  /*
315
- * Memory Object node
315
+ * Memory Object variable
316
316
  */
317
- class ObjPN: public SVFVar
317
+ class ObjVar: public SVFVar
318
318
  {
319
319
 
320
320
  protected:
321
321
  const MemObj* mem; ///< memory object
322
322
  /// Constructor
323
- ObjPN(const Value* val, NodeID i, const MemObj* m, PNODEK ty = ObjNode) :
323
+ ObjVar(const Value* val, NodeID i, const MemObj* m, PNODEK ty = ObjNode) :
324
324
  SVFVar(val, i, ty), mem(m)
325
325
  {
326
326
  }
327
327
  public:
328
328
  /// Methods for support type inquiry through isa, cast, and dyn_cast:
329
329
  //@{
330
- static inline bool classof(const ObjPN *)
330
+ static inline bool classof(const ObjVar *)
331
331
  {
332
332
  return true;
333
333
  }
@@ -377,11 +377,11 @@ public:
377
377
 
378
378
 
379
379
  /*
380
- * Gep Value (Pointer) node, this node can be dynamic generated for field sensitive analysis
381
- * e.g. memcpy, temp gep value node needs to be created
382
- * Each Gep Value node is connected to base value node via gep edge
380
+ * Gep Value (Pointer) variable, this variable can be dynamic generated for field sensitive analysis
381
+ * e.g. memcpy, temp gep value variable needs to be created
382
+ * Each Gep Value variable is connected to base value variable via gep edge
383
383
  */
384
- class GepValPN: public ValPN
384
+ class GepValVar: public ValVar
385
385
  {
386
386
 
387
387
  private:
@@ -392,11 +392,11 @@ private:
392
392
  public:
393
393
  /// Methods for support type inquiry through isa, cast, and dyn_cast:
394
394
  //@{
395
- static inline bool classof(const GepValPN *)
395
+ static inline bool classof(const GepValVar *)
396
396
  {
397
397
  return true;
398
398
  }
399
- static inline bool classof(const ValPN * node)
399
+ static inline bool classof(const ValVar * node)
400
400
  {
401
401
  return node->getNodeKind() == SVFVar::GepValNode;
402
402
  }
@@ -411,12 +411,12 @@ public:
411
411
  //@}
412
412
 
413
413
  /// Constructor
414
- GepValPN(const Value* val, NodeID i, const LocationSet& l, const Type *ty, u32_t idx) :
415
- ValPN(val, i, GepValNode), ls(l), gepValType(ty), fieldIdx(idx)
414
+ GepValVar(const Value* val, NodeID i, const LocationSet& l, const Type *ty, u32_t idx) :
415
+ ValVar(val, i, GepValNode), ls(l), gepValType(ty), fieldIdx(idx)
416
416
  {
417
417
  }
418
418
 
419
- /// offset of the base value node
419
+ /// offset of the base value variable
420
420
  inline u32_t getOffset() const
421
421
  {
422
422
  return ls.getOffset();
@@ -445,10 +445,10 @@ public:
445
445
 
446
446
 
447
447
  /*
448
- * Gep Obj node, this is dynamic generated for field sensitive analysis
449
- * Each gep obj node is one field of a MemObj (base)
448
+ * Gep Obj variable, this is dynamic generated for field sensitive analysis
449
+ * Each gep obj variable is one field of a MemObj (base)
450
450
  */
451
- class GepObjPN: public ObjPN
451
+ class GepObjPN: public ObjVar
452
452
  {
453
453
  private:
454
454
  LocationSet ls;
@@ -461,7 +461,7 @@ public:
461
461
  {
462
462
  return true;
463
463
  }
464
- static inline bool classof(const ObjPN * node)
464
+ static inline bool classof(const ObjVar * node)
465
465
  {
466
466
  return node->getNodeKind() == SVFVar::GepObjNode
467
467
  || node->getNodeKind() == SVFVar::CloneGepObjNode;
@@ -480,7 +480,7 @@ public:
480
480
 
481
481
  /// Constructor
482
482
  GepObjPN(const MemObj* mem, NodeID i, const LocationSet& l, PNODEK ty = GepObjNode) :
483
- ObjPN(mem->getValue(), i, mem, ty), ls(l)
483
+ ObjVar(mem->getValue(), i, mem, ty), ls(l)
484
484
  {
485
485
  base = mem->getId();
486
486
  }
@@ -521,20 +521,20 @@ public:
521
521
  };
522
522
 
523
523
  /*
524
- * Field-insensitive Gep Obj node, this is dynamic generated for field sensitive analysis
524
+ * Field-insensitive Gep Obj variable, this is dynamic generated for field sensitive analysis
525
525
  * Each field-insensitive gep obj node represents all fields of a MemObj (base)
526
526
  */
527
- class FIObjPN: public ObjPN
527
+ class FIObjVar: public ObjVar
528
528
  {
529
529
  public:
530
530
 
531
531
  /// Methods for support type inquiry through isa, cast, and dyn_cast:
532
532
  //@{
533
- static inline bool classof(const FIObjPN *)
533
+ static inline bool classof(const FIObjVar *)
534
534
  {
535
535
  return true;
536
536
  }
537
- static inline bool classof(const ObjPN * node)
537
+ static inline bool classof(const ObjVar * node)
538
538
  {
539
539
  return node->getNodeKind() == SVFVar::FIObjNode
540
540
  || node->getNodeKind() == SVFVar::CloneFIObjNode;
@@ -552,8 +552,8 @@ public:
552
552
  //@}
553
553
 
554
554
  /// Constructor
555
- FIObjPN(const Value* val, NodeID i, const MemObj* mem, PNODEK ty = FIObjNode) :
556
- ObjPN(val, i, mem, ty)
555
+ FIObjVar(const Value* val, NodeID i, const MemObj* mem, PNODEK ty = FIObjNode) :
556
+ ObjVar(val, i, mem, ty)
557
557
  {
558
558
  }
559
559
 
@@ -649,15 +649,15 @@ public:
649
649
 
650
650
 
651
651
  /*
652
- * Dummy node
652
+ * Dummy variable without any LLVM value
653
653
  */
654
- class DummyValPN: public ValPN
654
+ class DummyValVar: public ValVar
655
655
  {
656
656
 
657
657
  public:
658
658
 
659
659
  //@{ Methods for support type inquiry through isa, cast, and dyn_cast:
660
- static inline bool classof(const DummyValPN *)
660
+ static inline bool classof(const DummyValVar *)
661
661
  {
662
662
  return true;
663
663
  }
@@ -672,7 +672,7 @@ public:
672
672
  //@}
673
673
 
674
674
  /// Constructor
675
- DummyValPN(NodeID i) : ValPN(nullptr, i, DummyValNode)
675
+ DummyValVar(NodeID i) : ValVar(nullptr, i, DummyValNode)
676
676
  {
677
677
  }
678
678
 
@@ -688,15 +688,15 @@ public:
688
688
 
689
689
 
690
690
  /*
691
- * Dummy node
691
+ * Dummy object variable
692
692
  */
693
- class DummyObjPN: public ObjPN
693
+ class DummyObjVar: public ObjVar
694
694
  {
695
695
 
696
696
  public:
697
697
 
698
698
  //@{ Methods for support type inquiry through isa, cast, and dyn_cast:
699
- static inline bool classof(const DummyObjPN *)
699
+ static inline bool classof(const DummyObjVar *)
700
700
  {
701
701
  return true;
702
702
  }
@@ -713,8 +713,8 @@ public:
713
713
  //@}
714
714
 
715
715
  /// Constructor
716
- DummyObjPN(NodeID i,const MemObj* m, PNODEK ty = DummyObjNode)
717
- : ObjPN(nullptr, i, m, ty)
716
+ DummyObjVar(NodeID i,const MemObj* m, PNODEK ty = DummyObjNode)
717
+ : ObjVar(nullptr, i, m, ty)
718
718
  {
719
719
  }
720
720
 
@@ -730,11 +730,11 @@ public:
730
730
  /*
731
731
  * Clone object node for dummy objects.
732
732
  */
733
- class CloneDummyObjPN: public DummyObjPN
733
+ class CloneDummyObjVar: public DummyObjVar
734
734
  {
735
735
  public:
736
736
  //@{ Methods to support type inquiry through isa, cast, and dyn_cast:
737
- static inline bool classof(const CloneDummyObjPN *)
737
+ static inline bool classof(const CloneDummyObjVar *)
738
738
  {
739
739
  return true;
740
740
  }
@@ -749,15 +749,15 @@ public:
749
749
  //@}
750
750
 
751
751
  /// Constructor
752
- CloneDummyObjPN(NodeID i, const MemObj* m, PNODEK ty = CloneDummyObjNode)
753
- : DummyObjPN(i, m, ty)
752
+ CloneDummyObjVar(NodeID i, const MemObj* m, PNODEK ty = CloneDummyObjNode)
753
+ : DummyObjVar(i, m, ty)
754
754
  {
755
755
  }
756
756
 
757
757
  /// Return name of this node
758
758
  inline const std::string getValueName() const
759
759
  {
760
- return "clone of " + ObjPN::getValueName();
760
+ return "clone of " + ObjVar::getValueName();
761
761
  }
762
762
 
763
763
  virtual const std::string toString() const;
@@ -766,11 +766,11 @@ public:
766
766
  /*
767
767
  * Clone object for GEP objects.
768
768
  */
769
- class CloneGepObjPN : public GepObjPN
769
+ class CloneGepObjVar : public GepObjPN
770
770
  {
771
771
  public:
772
772
  //@{ Methods to support type inquiry through isa, cast, and dyn_cast:
773
- static inline bool classof(const CloneGepObjPN *)
773
+ static inline bool classof(const CloneGepObjVar *)
774
774
  {
775
775
  return true;
776
776
  }
@@ -785,7 +785,7 @@ public:
785
785
  //@}
786
786
 
787
787
  /// Constructor
788
- CloneGepObjPN(const MemObj* mem, NodeID i, const LocationSet& l, PNODEK ty = CloneGepObjNode) :
788
+ CloneGepObjVar(const MemObj* mem, NodeID i, const LocationSet& l, PNODEK ty = CloneGepObjNode) :
789
789
  GepObjPN(mem, i, l, ty)
790
790
  {
791
791
  }
@@ -802,11 +802,11 @@ public:
802
802
  /*
803
803
  * Clone object for FI objects.
804
804
  */
805
- class CloneFIObjPN : public FIObjPN
805
+ class CloneFIObjVar : public FIObjVar
806
806
  {
807
807
  public:
808
808
  //@{ Methods to support type inquiry through isa, cast, and dyn_cast:
809
- static inline bool classof(const CloneFIObjPN *)
809
+ static inline bool classof(const CloneFIObjVar *)
810
810
  {
811
811
  return true;
812
812
  }
@@ -821,15 +821,15 @@ public:
821
821
  //@}
822
822
 
823
823
  /// Constructor
824
- CloneFIObjPN(const Value* val, NodeID i, const MemObj* mem, PNODEK ty = CloneFIObjNode) :
825
- FIObjPN(val, i, mem, ty)
824
+ CloneFIObjVar(const Value* val, NodeID i, const MemObj* mem, PNODEK ty = CloneFIObjNode) :
825
+ FIObjVar(val, i, mem, ty)
826
826
  {
827
827
  }
828
828
 
829
829
  /// Return name of this node
830
830
  inline const std::string getValueName() const
831
831
  {
832
- return "clone (FI) of " + FIObjPN::getValueName();
832
+ return "clone (FI) of " + FIObjVar::getValueName();
833
833
  }
834
834
 
835
835
  virtual const std::string toString() const;
@@ -269,56 +269,56 @@ public:
269
269
 
270
270
  public:
271
271
 
272
- NodeID getGepValNode(const Value* val, const LocationSet& ls, const Type *baseType, u32_t fieldidx);
272
+ NodeID getGepValVar(const Value* val, const LocationSet& ls, const Type *baseType, u32_t fieldidx);
273
273
 
274
274
  void setCurrentBBAndValueForPAGEdge(PAGEdge* edge);
275
275
 
276
276
  inline PAGEdge* addBlackHoleAddrEdge(NodeID node)
277
277
  {
278
- PAGEdge *edge = pag->addBlackHoleAddrPE(node);
278
+ PAGEdge *edge = pag->addBlackHoleAddrStmt(node);
279
279
  setCurrentBBAndValueForPAGEdge(edge);
280
280
  return edge;
281
281
  }
282
282
 
283
283
  /// Add Address edge
284
- inline AddrPE* addAddrEdge(NodeID src, NodeID dst)
284
+ inline AddrStmt* addAddrEdge(NodeID src, NodeID dst)
285
285
  {
286
- AddrPE *edge = pag->addAddrPE(src, dst);
286
+ AddrStmt *edge = pag->addAddrStmt(src, dst);
287
287
  setCurrentBBAndValueForPAGEdge(edge);
288
288
  return edge;
289
289
  }
290
290
  /// Add Copy edge
291
- inline CopyPE* addCopyEdge(NodeID src, NodeID dst)
291
+ inline CopyStmt* addCopyEdge(NodeID src, NodeID dst)
292
292
  {
293
- CopyPE *edge = pag->addCopyPE(src, dst);
293
+ CopyStmt *edge = pag->addCopyStmt(src, dst);
294
294
  setCurrentBBAndValueForPAGEdge(edge);
295
295
  return edge;
296
296
  }
297
297
  /// Add Copy edge
298
- inline PhiPE* addPhiNode(NodeID res, NodeID opnd)
298
+ inline PhiStmt* addPhiStmt(NodeID res, NodeID opnd)
299
299
  {
300
- PhiPE *edge = pag->addPhiNode(res,opnd);
300
+ PhiStmt *edge = pag->addPhiStmt(res,opnd);
301
301
  setCurrentBBAndValueForPAGEdge(edge);
302
302
  return edge;
303
303
  }
304
304
  /// Add Copy edge
305
- inline CmpPE* addCmpEdge(NodeID op1, NodeID op2, NodeID dst, u32_t opcode)
305
+ inline CmpStmt* addCmpEdge(NodeID op1, NodeID op2, NodeID dst, u32_t predict)
306
306
  {
307
- CmpPE *edge = pag->addCmpPE(op1, op2, dst, opcode);
307
+ CmpStmt *edge = pag->addCmpStmt(op1, op2, dst, predict);
308
308
  setCurrentBBAndValueForPAGEdge(edge);
309
309
  return edge;
310
310
  }
311
311
  /// Add Copy edge
312
- inline BinaryOPPE* addBinaryOPEdge(NodeID op1, NodeID op2, NodeID dst, u32_t opcode)
312
+ inline BinaryOPStmt* addBinaryOPEdge(NodeID op1, NodeID op2, NodeID dst, u32_t opcode)
313
313
  {
314
- BinaryOPPE *edge = pag->addBinaryOPPE(op1, op2, dst, opcode);
314
+ BinaryOPStmt *edge = pag->addBinaryOPStmt(op1, op2, dst, opcode);
315
315
  setCurrentBBAndValueForPAGEdge(edge);
316
316
  return edge;
317
317
  }
318
318
  /// Add Unary edge
319
- inline UnaryOPPE* addUnaryOPEdge(NodeID src, NodeID dst, u32_t opcode)
319
+ inline UnaryOPStmt* addUnaryOPEdge(NodeID src, NodeID dst, u32_t opcode)
320
320
  {
321
- UnaryOPPE *edge = pag->addUnaryOPPE(src, dst, opcode);
321
+ UnaryOPStmt *edge = pag->addUnaryOPStmt(src, dst, opcode);
322
322
  setCurrentBBAndValueForPAGEdge(edge);
323
323
  return edge;
324
324
  }
@@ -329,21 +329,21 @@ public:
329
329
  return edge;
330
330
  }
331
331
  /// Add Load edge
332
- inline LoadPE* addLoadEdge(NodeID src, NodeID dst)
332
+ inline LoadStmt* addLoadEdge(NodeID src, NodeID dst)
333
333
  {
334
- LoadPE *edge = pag->addLoadPE(src, dst);
334
+ LoadStmt *edge = pag->addLoadStmt(src, dst);
335
335
  setCurrentBBAndValueForPAGEdge(edge);
336
336
  return edge;
337
337
  }
338
338
  /// Add Store edge
339
- inline StorePE* addStoreEdge(NodeID src, NodeID dst)
339
+ inline StoreStmt* addStoreEdge(NodeID src, NodeID dst)
340
340
  {
341
341
  IntraBlockNode* node;
342
342
  if(const Instruction* inst = SVFUtil::dyn_cast<Instruction>(curVal))
343
343
  node = pag->getICFG()->getIntraBlockNode(inst);
344
344
  else
345
345
  node = nullptr;
346
- StorePE *edge = pag->addStorePE(src, dst, node);
346
+ StoreStmt *edge = pag->addStoreStmt(src, dst, node);
347
347
  setCurrentBBAndValueForPAGEdge(edge);
348
348
  return edge;
349
349
  }
@@ -362,23 +362,23 @@ public:
362
362
  return edge;
363
363
  }
364
364
  /// Add Gep edge
365
- inline GepPE* addGepEdge(NodeID src, NodeID dst, const LocationSet& ls, bool constGep)
365
+ inline GepStmt* addGepEdge(NodeID src, NodeID dst, const LocationSet& ls, bool constGep)
366
366
  {
367
- GepPE *edge = pag->addGepPE(src, dst, ls, constGep);
367
+ GepStmt *edge = pag->addGepStmt(src, dst, ls, constGep);
368
368
  setCurrentBBAndValueForPAGEdge(edge);
369
369
  return edge;
370
370
  }
371
371
  /// Add Offset(Gep) edge
372
- inline NormalGepPE* addNormalGepEdge(NodeID src, NodeID dst, const LocationSet& ls)
372
+ inline NormalGepStmt* addNormalGepEdge(NodeID src, NodeID dst, const LocationSet& ls)
373
373
  {
374
- NormalGepPE *edge = pag->addNormalGepPE(src, dst, ls);
374
+ NormalGepStmt *edge = pag->addNormalGepStmt(src, dst, ls);
375
375
  setCurrentBBAndValueForPAGEdge(edge);
376
376
  return edge;
377
377
  }
378
378
  /// Add Variant(Gep) edge
379
- inline VariantGepPE* addVariantGepEdge(NodeID src, NodeID dst)
379
+ inline VariantGepStmt* addVariantGepEdge(NodeID src, NodeID dst)
380
380
  {
381
- VariantGepPE *edge = pag->addVariantGepPE(src, dst);
381
+ VariantGepStmt *edge = pag->addVariantGepStmt(src, dst);
382
382
  setCurrentBBAndValueForPAGEdge(edge);
383
383
  return edge;
384
384
  }
@@ -99,7 +99,7 @@ private:
99
99
  SVF::Size_t locationSetOffset = std::stoi(llvm::cast<llvm::MDString>(mdNode->getOperand(1))->getString().str());
100
100
 
101
101
  LocationSet locationSet = LocationSet(locationSetOffset);
102
- SVF::NodeID gepnodeId = pag->getGepObjNode(baseNodeId, locationSet);
102
+ SVF::NodeID gepnodeId = pag->getGepObjVar(baseNodeId, locationSet);
103
103
 
104
104
  assert(nodeId == gepnodeId && "nodeId != gepnodeId");
105
105
  }
@@ -243,13 +243,15 @@ public:
243
243
  // TypeAnalysis.cpp
244
244
  static const llvm::cl::opt<bool> GenICFG;
245
245
 
246
- //WPAPass.cpp
246
+ // WPAPass.cpp
247
247
  static const llvm::cl::opt<bool> AnderSVFG;
248
248
  static const llvm::cl::opt<bool> SABERFULLSVFG;
249
249
  static const llvm::cl::opt<bool> PrintAliases;
250
250
  static llvm::cl::bits<PointerAnalysis::PTATY> PASelected;
251
251
  static llvm::cl::bits<WPAPass::AliasCheckRule> AliasRule;
252
252
 
253
+ // DOTGraphTraits
254
+ static const llvm::cl::opt<bool> ShowHiddenNode;
253
255
  };
254
256
  } // namespace SVF
255
257
 
@@ -97,8 +97,8 @@ protected:
97
97
  const NodeBS &getGepObjs(NodeID base);
98
98
 
99
99
  /// Returns the GEP object node(s) of base for ls. This may include clones.
100
- /// If there are no GEP objects, then getGepObjNode is called on the SVFIR
101
- /// (through base's getGepObjNode) which will create one.
100
+ /// If there are no GEP objects, then getGepObjVar is called on the SVFIR
101
+ /// (through base's getGepObjVar) which will create one.
102
102
  const NodeBS getGepObjClones(NodeID base, unsigned offset);
103
103
 
104
104
  /// Initialise the pointees of p at loc (which is type tildet *). reuse indicates
@@ -383,7 +383,7 @@ protected:
383
383
 
384
384
  for (NodeID o : fldInsenObjs)
385
385
  {
386
- const NodeBS &allFields = consCG->getAllFieldsObjNode(o);
386
+ const NodeBS &allFields = consCG->getAllFieldsObjVars(o);
387
387
  for (NodeID f : allFields) addPts(it->first, f);
388
388
  }
389
389
  }
@@ -73,7 +73,7 @@ public:
73
73
  virtual bool processPhi(const PHISVFGNode* phi) override;
74
74
  virtual bool processCopy(const CopySVFGNode* copy) override;
75
75
 
76
- virtual inline const NodeBS& getAllFieldsObjNode(NodeID id) override;
76
+ virtual inline const NodeBS& getAllFieldsObjVars(NodeID id) override;
77
77
 
78
78
  virtual inline bool updateInFromIn(const SVFGNode* srcStmt, NodeID srcVar, const SVFGNode* dstStmt, NodeID dstVar) override;
79
79
  virtual inline bool updateInFromOut(const SVFGNode* srcStmt, NodeID srcVar, const SVFGNode* dstStmt, NodeID dstVar) override;
@@ -140,15 +140,15 @@ CxtPtSet ContextDDA::processGepPts(const GepSVFGNode* gep, const CxtPtSet& srcPt
140
140
  tmpDstPts.set(ptd);
141
141
  else
142
142
  {
143
- if (SVFUtil::isa<VariantGepPE>(gep->getPAGEdge()))
143
+ if (SVFUtil::isa<VariantGepStmt>(gep->getPAGEdge()))
144
144
  {
145
145
  setObjFieldInsensitive(ptd.get_id());
146
- CxtVar var(ptd.get_cond(),getFIObjNode(ptd.get_id()));
146
+ CxtVar var(ptd.get_cond(),getFIObjVar(ptd.get_id()));
147
147
  tmpDstPts.set(var);
148
148
  }
149
- else if (const NormalGepPE* normalGep = SVFUtil::dyn_cast<NormalGepPE>(gep->getPAGEdge()))
149
+ else if (const NormalGepStmt* normalGep = SVFUtil::dyn_cast<NormalGepStmt>(gep->getPAGEdge()))
150
150
  {
151
- CxtVar var(ptd.get_cond(),getGepObjNode(ptd.get_id(),normalGep->getLocationSet()));
151
+ CxtVar var(ptd.get_cond(),getGepObjVar(ptd.get_id(),normalGep->getLocationSet()));
152
152
  tmpDstPts.set(var);
153
153
  }
154
154
  else
@@ -319,10 +319,10 @@ bool ContextDDA::isHeapCondMemObj(const CxtVar& var, const StoreSVFGNode*)
319
319
  if (!mem->getValue()) {
320
320
  PAGNode *pnode = _pag->getGNode(getPtrNodeID(var));
321
321
  if(GepObjPN* gepobj = SVFUtil::dyn_cast<GepObjPN>(pnode)){
322
- assert(SVFUtil::isa<DummyObjPN>(_pag->getGNode(gepobj->getBaseNode())) && "emtpy refVal in a gep object whose base is a non-dummy object");
322
+ assert(SVFUtil::isa<DummyObjVar>(_pag->getGNode(gepobj->getBaseNode())) && "emtpy refVal in a gep object whose base is a non-dummy object");
323
323
  }
324
324
  else{
325
- assert((SVFUtil::isa<DummyObjPN>(pnode) || SVFUtil::isa<DummyValPN>(pnode)) && "empty refVal in non-dummy object");
325
+ assert((SVFUtil::isa<DummyObjVar>(pnode) || SVFUtil::isa<DummyValVar>(pnode)) && "empty refVal in non-dummy object");
326
326
  }
327
327
  return true;
328
328
  }