svf-tools 1.0.351 → 1.0.352

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 (280) hide show
  1. package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +2 -2
  2. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +3 -3
  3. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +2 -2
  4. package/SVF-doxygen/html/html/Andersen_8h_source.html +1 -1
  5. package/SVF-doxygen/html/html/CSC_8cpp_source.html +2 -2
  6. package/SVF-doxygen/html/html/ConsGEdge_8h_source.html +2 -2
  7. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +5 -5
  8. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +44 -45
  9. package/SVF-doxygen/html/html/ConsG_8h_source.html +21 -21
  10. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +10 -8
  11. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +5 -5
  12. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +1 -1
  13. package/SVF-doxygen/html/html/DCHG_8h_source.html +2 -2
  14. package/SVF-doxygen/html/html/DDAClient_8cpp_source.html +4 -4
  15. package/SVF-doxygen/html/html/DDAClient_8h_source.html +1 -1
  16. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +1 -1
  17. package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +1 -1
  18. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +1 -1
  19. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +4 -2
  20. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
  21. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +2 -2
  22. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp.html +2 -2
  23. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8cpp_source.html +24 -22
  24. package/SVF-doxygen/html/html/FlowSensitiveTBHC_8h_source.html +17 -17
  25. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +15 -14
  26. package/SVF-doxygen/html/html/FlowSensitive_8h_source.html +11 -11
  27. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +3 -3
  28. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +4 -4
  29. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +4 -4
  30. package/SVF-doxygen/html/html/IRGraph_8h_source.html +1 -1
  31. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +2 -2
  32. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +2 -2
  33. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +4 -4
  34. package/SVF-doxygen/html/html/MemRegion_8h_source.html +2 -2
  35. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +2 -2
  36. package/SVF-doxygen/html/html/MemSSA_8h_source.html +2 -2
  37. package/SVF-doxygen/html/html/PAGBuilderFromFile_8cpp_source.html +2 -2
  38. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +3 -4
  39. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +3 -3
  40. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +1 -1
  41. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +2 -2
  42. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +8 -8
  43. package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
  44. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +6 -6
  45. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +19 -21
  46. package/SVF-doxygen/html/html/SVFIR_8cpp_source.html +38 -40
  47. package/SVF-doxygen/html/html/SVFIR_8h_source.html +35 -37
  48. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +21 -23
  49. package/SVF-doxygen/html/html/SVFStatements_8h.html +0 -4
  50. package/SVF-doxygen/html/html/SVFStatements_8h_source.html +146 -156
  51. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +1 -1
  52. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +98 -98
  53. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +1 -1
  54. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +1 -1
  55. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +1 -1
  56. package/SVF-doxygen/html/html/TypeBasedHeapCloning_8cpp_source.html +10 -10
  57. package/SVF-doxygen/html/html/VFGNode_8h_source.html +13 -13
  58. package/SVF-doxygen/html/html/VFG_8cpp_source.html +50 -51
  59. package/SVF-doxygen/html/html/VFG_8h_source.html +35 -35
  60. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +1 -1
  61. package/SVF-doxygen/html/html/annotated.html +100 -102
  62. package/SVF-doxygen/html/html/classSVF_1_1AddrCGEdge.html +2 -2
  63. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt-members.html +24 -25
  64. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +17 -18
  65. package/SVF-doxygen/html/html/classSVF_1_1AliasDDAClient.html +3 -3
  66. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +1 -1
  67. package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +5 -5
  68. package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +3 -3
  69. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +4 -4
  70. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +2 -2
  71. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt-members.html +28 -29
  72. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.html +25 -30
  73. package/SVF-doxygen/html/html/classSVF_1_1AssignStmt.png +0 -0
  74. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +4 -4
  75. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt-members.html +28 -29
  76. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +23 -24
  77. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +2 -2
  78. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt-members.html +31 -32
  79. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +38 -39
  80. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +3 -3
  81. package/SVF-doxygen/html/html/classSVF_1_1CSC.html +2 -2
  82. package/SVF-doxygen/html/html/classSVF_1_1CallPE-members.html +27 -28
  83. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +24 -25
  84. package/SVF-doxygen/html/html/classSVF_1_1CloneDummyObjVar.html +11 -11
  85. package/SVF-doxygen/html/html/classSVF_1_1CloneFIObjVar.html +12 -12
  86. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar-members.html +1 -1
  87. package/SVF-doxygen/html/html/classSVF_1_1CloneGepObjVar.html +15 -15
  88. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt-members.html +30 -31
  89. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +24 -25
  90. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +2 -2
  91. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph-members.html +1 -1
  92. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +95 -96
  93. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode-members.html +26 -26
  94. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +43 -43
  95. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +17 -16
  96. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt-members.html +24 -25
  97. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +17 -18
  98. package/SVF-doxygen/html/html/classSVF_1_1DCHEdge-members.html +4 -4
  99. package/SVF-doxygen/html/html/classSVF_1_1DCHEdge.html +5 -5
  100. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +1 -1
  101. package/SVF-doxygen/html/html/classSVF_1_1DDAClient.html +2 -2
  102. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +2 -2
  103. package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +2 -2
  104. package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +3 -3
  105. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +13 -13
  106. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +13 -13
  107. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +14 -14
  108. package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +6 -5
  109. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +36 -36
  110. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +4 -4
  111. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveTBHC.html +56 -55
  112. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +21 -20
  113. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
  114. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar-members.html +1 -1
  115. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +39 -39
  116. package/SVF-doxygen/html/html/classSVF_1_1GepStmt-members.html +16 -14
  117. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +139 -50
  118. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.png +0 -0
  119. package/SVF-doxygen/html/html/classSVF_1_1GepValVar-members.html +2 -2
  120. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +39 -39
  121. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +7 -8
  122. package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +1 -1
  123. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +1 -1
  124. package/SVF-doxygen/html/html/classSVF_1_1IRGraph.html +2 -2
  125. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt-members.html +27 -28
  126. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +17 -18
  127. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +6 -6
  128. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +2 -2
  129. package/SVF-doxygen/html/html/classSVF_1_1MTASVFGBuilder.html +1 -1
  130. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +1 -1
  131. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +6 -6
  132. package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +1 -1
  133. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt-members.html +33 -34
  134. package/SVF-doxygen/html/html/classSVF_1_1MultiOpndStmt.html +32 -33
  135. package/SVF-doxygen/html/html/classSVF_1_1NormalGepCGEdge-members.html +5 -5
  136. package/SVF-doxygen/html/html/classSVF_1_1NormalGepCGEdge.html +6 -6
  137. package/SVF-doxygen/html/html/classSVF_1_1ObjTypeInfo.html +1 -1
  138. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +18 -18
  139. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG-members.html +1 -1
  140. package/SVF-doxygen/html/html/classSVF_1_1OfflineConsG.html +6 -6
  141. package/SVF-doxygen/html/html/classSVF_1_1PAGBuilderFromFile.html +4 -4
  142. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +2 -2
  143. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +5 -6
  144. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt-members.html +30 -31
  145. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +23 -24
  146. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +2 -2
  147. package/SVF-doxygen/html/html/classSVF_1_1RetPE-members.html +27 -28
  148. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +24 -25
  149. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +13 -13
  150. package/SVF-doxygen/html/html/classSVF_1_1SVFG-members.html +2 -2
  151. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +16 -16
  152. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +1 -1
  153. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT-members.html +2 -2
  154. package/SVF-doxygen/html/html/classSVF_1_1SVFGOPT.html +10 -10
  155. package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +1 -1
  156. package/SVF-doxygen/html/html/classSVF_1_1SVFIR-members.html +2 -2
  157. package/SVF-doxygen/html/html/classSVF_1_1SVFIR.html +77 -78
  158. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder-members.html +3 -3
  159. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +29 -29
  160. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt-members.html +24 -25
  161. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +49 -53
  162. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.png +0 -0
  163. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +3 -3
  164. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +3 -3
  165. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +3 -3
  166. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt-members.html +24 -25
  167. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +18 -19
  168. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE-members.html +26 -27
  169. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +18 -19
  170. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE-members.html +26 -27
  171. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +18 -19
  172. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +1 -1
  173. package/SVF-doxygen/html/html/classSVF_1_1TypeBasedHeapCloning.html +17 -17
  174. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt-members.html +29 -30
  175. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +30 -31
  176. package/SVF-doxygen/html/html/classSVF_1_1VFG-members.html +2 -2
  177. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +79 -80
  178. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +11 -11
  179. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +13 -13
  180. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +1 -1
  181. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +2 -2
  182. package/SVF-doxygen/html/html/classes.html +95 -93
  183. package/SVF-doxygen/html/html/functions_a.html +5 -5
  184. package/SVF-doxygen/html/html/functions_c.html +22 -22
  185. package/SVF-doxygen/html/html/functions_eval_g.html +2 -1
  186. package/SVF-doxygen/html/html/functions_eval_n.html +0 -1
  187. package/SVF-doxygen/html/html/functions_eval_v.html +0 -1
  188. package/SVF-doxygen/html/html/functions_func.html +5 -5
  189. package/SVF-doxygen/html/html/functions_func_c.html +20 -22
  190. package/SVF-doxygen/html/html/functions_func_g.html +13 -13
  191. package/SVF-doxygen/html/html/functions_func_i.html +7 -4
  192. package/SVF-doxygen/html/html/functions_func_n.html +0 -3
  193. package/SVF-doxygen/html/html/functions_func_o.html +3 -5
  194. package/SVF-doxygen/html/html/functions_func_t.html +0 -2
  195. package/SVF-doxygen/html/html/functions_func_v.html +0 -3
  196. package/SVF-doxygen/html/html/functions_g.html +17 -16
  197. package/SVF-doxygen/html/html/functions_i.html +9 -6
  198. package/SVF-doxygen/html/html/functions_l.html +3 -3
  199. package/SVF-doxygen/html/html/functions_m.html +1 -1
  200. package/SVF-doxygen/html/html/functions_n.html +0 -4
  201. package/SVF-doxygen/html/html/functions_o.html +3 -5
  202. package/SVF-doxygen/html/html/functions_p.html +10 -10
  203. package/SVF-doxygen/html/html/functions_r.html +8 -4
  204. package/SVF-doxygen/html/html/functions_s.html +12 -10
  205. package/SVF-doxygen/html/html/functions_t.html +7 -9
  206. package/SVF-doxygen/html/html/functions_v.html +4 -5
  207. package/SVF-doxygen/html/html/functions_vars_v.html +3 -0
  208. package/SVF-doxygen/html/html/functions_w.html +5 -9
  209. package/SVF-doxygen/html/html/hierarchy.html +55 -57
  210. package/SVF-doxygen/html/html/namespaceSVF.html +0 -4
  211. package/SVF-doxygen/html/html/search/all_1.js +5 -5
  212. package/SVF-doxygen/html/html/search/all_10.js +8 -8
  213. package/SVF-doxygen/html/html/search/all_12.js +2 -2
  214. package/SVF-doxygen/html/html/search/all_13.js +9 -9
  215. package/SVF-doxygen/html/html/search/all_14.js +5 -5
  216. package/SVF-doxygen/html/html/search/all_15.js +1 -1
  217. package/SVF-doxygen/html/html/search/all_16.js +3 -3
  218. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  219. package/SVF-doxygen/html/html/search/all_3.js +1 -1
  220. package/SVF-doxygen/html/html/search/all_7.js +4 -4
  221. package/SVF-doxygen/html/html/search/all_9.js +2 -1
  222. package/SVF-doxygen/html/html/search/all_c.js +2 -2
  223. package/SVF-doxygen/html/html/search/all_d.js +3 -3
  224. package/SVF-doxygen/html/html/search/all_e.js +3 -4
  225. package/SVF-doxygen/html/html/search/all_f.js +1 -1
  226. package/SVF-doxygen/html/html/search/classes_12.js +0 -1
  227. package/SVF-doxygen/html/html/search/classes_b.js +0 -1
  228. package/SVF-doxygen/html/html/search/enumvalues_12.js +1 -1
  229. package/SVF-doxygen/html/html/search/enumvalues_6.js +1 -1
  230. package/SVF-doxygen/html/html/search/enumvalues_b.js +1 -1
  231. package/SVF-doxygen/html/html/search/functions_0.js +5 -5
  232. package/SVF-doxygen/html/html/search/functions_10.js +1 -1
  233. package/SVF-doxygen/html/html/search/functions_11.js +1 -1
  234. package/SVF-doxygen/html/html/search/functions_13.js +0 -1
  235. package/SVF-doxygen/html/html/search/functions_2.js +1 -1
  236. package/SVF-doxygen/html/html/search/functions_6.js +3 -3
  237. package/SVF-doxygen/html/html/search/functions_8.js +2 -1
  238. package/SVF-doxygen/html/html/search/functions_c.js +0 -1
  239. package/SVF-doxygen/html/html/search/functions_d.js +1 -1
  240. package/SVF-doxygen/html/html/search/functions_e.js +1 -1
  241. package/SVF-doxygen/html/html/search/variables_14.js +2 -2
  242. package/SVF-doxygen/html/html/search/variables_15.js +1 -1
  243. package/SVF-doxygen/html/html/search/variables_16.js +1 -0
  244. package/SVF-doxygen/html/html/search/variables_e.js +1 -1
  245. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +16 -16
  246. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +2 -2
  247. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +18 -18
  248. package/include/Graphs/ConsG.h +2 -2
  249. package/include/Graphs/ConsGEdge.h +1 -1
  250. package/include/Graphs/VFG.h +2 -2
  251. package/include/MemoryModel/SVFIR.h +2 -2
  252. package/include/MemoryModel/SVFStatements.h +17 -94
  253. package/include/MemoryModel/SVFVariables.h +9 -6
  254. package/include/SVF-FE/DCHG.h +1 -1
  255. package/include/SVF-FE/SVFIRBuilder.h +5 -5
  256. package/include/Util/IRAnnotator.h +1 -1
  257. package/lib/DDA/ContextDDA.cpp +4 -5
  258. package/lib/DDA/DDAClient.cpp +6 -6
  259. package/lib/DDA/DDAStat.cpp +1 -1
  260. package/lib/DDA/FlowDDA.cpp +4 -5
  261. package/lib/Graphs/ConsG.cpp +26 -31
  262. package/lib/Graphs/SVFG.cpp +2 -2
  263. package/lib/Graphs/VFG.cpp +36 -43
  264. package/lib/MTA/MTAAnnotator.cpp +3 -3
  265. package/lib/MemoryModel/PointerAnalysisImpl.cpp +1 -1
  266. package/lib/MemoryModel/SVFIR.cpp +26 -34
  267. package/lib/MemoryModel/SVFStatements.cpp +0 -22
  268. package/lib/MemoryModel/SVFVariables.cpp +1 -1
  269. package/lib/MemoryModel/SymbolTableInfo.cpp +1 -1
  270. package/lib/SVF-FE/DCHG.cpp +1 -1
  271. package/lib/SVF-FE/Graph2Json.cpp +24 -27
  272. package/lib/Util/PTAStat.cpp +9 -9
  273. package/lib/Util/TypeBasedHeapCloning.cpp +5 -5
  274. package/lib/WPA/AndersenSFR.cpp +2 -2
  275. package/lib/WPA/AndersenStat.cpp +2 -2
  276. package/lib/WPA/CSC.cpp +2 -2
  277. package/lib/WPA/FlowSensitive.cpp +4 -7
  278. package/lib/WPA/FlowSensitiveStat.cpp +2 -2
  279. package/lib/WPA/FlowSensitiveTBHC.cpp +6 -9
  280. package/package.json +1 -1
@@ -472,7 +472,8 @@ bool FlowSensitive::processGep(const GepSVFGNode* edge)
472
472
  const PointsTo& srcPts = getPts(edge->getPAGSrcNodeID());
473
473
 
474
474
  PointsTo tmpDstPts;
475
- if (SVFUtil::isa<VariantGepStmt>(edge->getPAGEdge()))
475
+ const GepStmt* gepStmt = SVFUtil::cast<GepStmt>(edge->getPAGEdge());
476
+ if (gepStmt->isVariantFieldGep())
476
477
  {
477
478
  for (NodeID o : srcPts)
478
479
  {
@@ -486,7 +487,7 @@ bool FlowSensitive::processGep(const GepSVFGNode* edge)
486
487
  tmpDstPts.set(getFIObjVar(o));
487
488
  }
488
489
  }
489
- else if (const NormalGepStmt* normalGep = SVFUtil::dyn_cast<NormalGepStmt>(edge->getPAGEdge()))
490
+ else
490
491
  {
491
492
  for (NodeID o : srcPts)
492
493
  {
@@ -496,14 +497,10 @@ bool FlowSensitive::processGep(const GepSVFGNode* edge)
496
497
  continue;
497
498
  }
498
499
 
499
- NodeID fieldSrcPtdNode = getGepObjVar(o, normalGep->getLocationSet());
500
+ NodeID fieldSrcPtdNode = getGepObjVar(o, gepStmt->getLocationSet());
500
501
  tmpDstPts.set(fieldSrcPtdNode);
501
502
  }
502
503
  }
503
- else
504
- {
505
- assert(false && "FlowSensitive::processGep: New type GEP edge type?");
506
- }
507
504
 
508
505
  if (unionPts(edge->getPAGDstNodeID(), tmpDstPts))
509
506
  changed = true;
@@ -276,8 +276,8 @@ void FlowSensitiveStat::statNullPtr()
276
276
  {
277
277
  NodeID pagNodeId = iter->first;
278
278
  PAGNode* pagNode = iter->second;
279
- PAGEdge::SVFStmtSetTy& inComingStore = pagNode->getIncomingEdges(PAGEdge::Store);
280
- PAGEdge::SVFStmtSetTy& outGoingLoad = pagNode->getOutgoingEdges(PAGEdge::Load);
279
+ SVFStmt::SVFStmtSetTy& inComingStore = pagNode->getIncomingEdges(SVFStmt::Store);
280
+ SVFStmt::SVFStmtSetTy& outGoingLoad = pagNode->getOutgoingEdges(SVFStmt::Load);
281
281
  if (inComingStore.empty()==false || outGoingLoad.empty()==false)
282
282
  {
283
283
  ///TODO: change the condition here to fetch the points-to set
@@ -146,7 +146,7 @@ bool FlowSensitiveTBHC::propAlongIndirectEdge(const IndirectSVFGEdge* edge)
146
146
  if (GepObjVar *gep = SVFUtil::dyn_cast<GepObjVar>(pag->getGNode(o)))
147
147
  {
148
148
  // Want the geps which are at the same "level" as this one (same mem obj, same offset).
149
- const NodeBS &geps = getGepObjsFromMemObj(gep->getMemObj(), gep->getFieldOffset());
149
+ const NodeBS &geps = getGepObjsFromMemObj(gep->getMemObj(), gep->getConstantFieldIdx());
150
150
  for (NodeID g : geps)
151
151
  {
152
152
  const DIType *gepType = getType(g);
@@ -299,7 +299,8 @@ bool FlowSensitiveTBHC::processGep(const GepSVFGNode* gep)
299
299
  }
300
300
  else
301
301
  {
302
- if (SVFUtil::isa<VariantGepStmt>(gep->getPAGEdge()))
302
+ const GepStmt* gepStmt = SVFUtil::cast<GepStmt>(gep->getPAGEdge());
303
+ if (gepStmt->isVariantFieldGep())
303
304
  {
304
305
  setObjFieldInsensitive(oq);
305
306
  tmpDstPts.set(oq);
@@ -314,7 +315,7 @@ bool FlowSensitiveTBHC::processGep(const GepSVFGNode* gep)
314
315
  }
315
316
  }
316
317
  }
317
- else if (const NormalGepStmt* normalGep = SVFUtil::dyn_cast<NormalGepStmt>(gep->getPAGEdge()))
318
+ else
318
319
  {
319
320
  const DIType *baseType = getType(oq);
320
321
 
@@ -328,7 +329,7 @@ bool FlowSensitiveTBHC::processGep(const GepSVFGNode* gep)
328
329
  }
329
330
 
330
331
  if (DCHGraph::isAgg(baseType) && baseType->getTag() != dwarf::DW_TAG_array_type
331
- && normalGep->getFieldOffset() >= dchg->getNumFields(baseType))
332
+ && gepStmt->getConstantFieldIdx() >= dchg->getNumFields(baseType))
332
333
  {
333
334
  // If the field offset is too high for this object, it is killed. It seems that a
334
335
  // clone was made on this GEP but this is not the base (e.g. base->f1->f2), and SVF
@@ -342,7 +343,7 @@ bool FlowSensitiveTBHC::processGep(const GepSVFGNode* gep)
342
343
  else
343
344
  {
344
345
  // Operate on the field and all its clones.
345
- const NodeBS fieldClones = getGepObjClones(oq, normalGep->getFieldOffset());
346
+ const NodeBS fieldClones = getGepObjClones(oq, gepStmt->getConstantFieldIdx());
346
347
  for (NodeID fc : fieldClones)
347
348
  {
348
349
  gepToSVFGRetrievers[getOriginalObj(fc)].set(gep->getId());
@@ -350,10 +351,6 @@ bool FlowSensitiveTBHC::processGep(const GepSVFGNode* gep)
350
351
  }
351
352
  }
352
353
  }
353
- else
354
- {
355
- assert(false && "FSTBHC: new gep edge?");
356
- }
357
354
  }
358
355
  }
359
356
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-tools",
3
- "version": "1.0.351",
3
+ "version": "1.0.352",
4
4
  "description": "* <b>[TypeClone](https://github.com/SVF-tools/SVF/wiki/TypeClone) published in our [ECOOP paper](https://yuleisui.github.io/publications/ecoop20.pdf) is now available in SVF </b> * <b>SVF now uses a single script for its build. Just type [`source ./build.sh`](https://github.com/SVF-tools/SVF/blob/master/build.sh) in your terminal, that's it!</b> * <b>SVF now supports LLVM-10.0.0! </b> * <b>We thank [bsauce](https://github.com/bsauce) for writing a user manual of SVF ([link1](https://www.jianshu.com/p/068a08ec749c) and [link2](https://www.jianshu.com/p/777c30d4240e)) in Chinese </b> * <b>SVF now supports LLVM-9.0.0 (Thank [Byoungyoung Lee](https://github.com/SVF-tools/SVF/issues/142) for his help!). </b> * <b>SVF now supports a set of [field-sensitive pointer analyses](https://yuleisui.github.io/publications/sas2019a.pdf). </b> * <b>[Use SVF as an external lib](https://github.com/SVF-tools/SVF/wiki/Using-SVF-as-a-lib-in-your-own-tool) for your own project (Contributed by [Hongxu Chen](https://github.com/HongxuChen)). </b> * <b>SVF now supports LLVM-7.0.0. </b> * <b>SVF now supports Docker. [Try SVF in Docker](https://github.com/SVF-tools/SVF/wiki/Try-SVF-in-Docker)! </b> * <b>SVF now supports [LLVM-6.0.0](https://github.com/svf-tools/SVF/pull/38) (Contributed by [Jack Anthony](https://github.com/jackanth)). </b> * <b>SVF now supports [LLVM-4.0.0](https://github.com/svf-tools/SVF/pull/23) (Contributed by Jared Carlson. Thank [Jared](https://github.com/jcarlson23) and [Will](https://github.com/dtzWill) for their in-depth [discussions](https://github.com/svf-tools/SVF/pull/18) about updating SVF!) </b> * <b>SVF now supports analysis for C++ programs.</b> <br />",
5
5
  "main": "index.js",
6
6
  "scripts": {