svf-lib 1.0.2643 → 1.0.2655

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 (294) hide show
  1. package/.github/workflows/publish-svf-lib.yml +44 -12
  2. package/SVF-linux-aarch64/bin/ae +0 -0
  3. package/SVF-linux-aarch64/bin/cfl +0 -0
  4. package/SVF-linux-aarch64/bin/mta +0 -0
  5. package/SVF-linux-aarch64/bin/svf-ex +0 -0
  6. package/SVF-linux-aarch64/bin/wpa +0 -0
  7. package/SVF-linux-aarch64/include/AE/Core/AbstractState.h +1 -1
  8. package/SVF-linux-aarch64/include/AE/Core/ICFGWTO.h +4 -1
  9. package/SVF-linux-aarch64/include/AE/Core/NumericValue.h +2 -1
  10. package/SVF-linux-aarch64/include/AE/Core/RelExeState.h +1 -0
  11. package/SVF-linux-aarch64/include/AE/Core/RelationSolver.h +5 -1
  12. package/SVF-linux-aarch64/include/AE/Svfexe/AbsExtAPI.h +9 -3
  13. package/SVF-linux-aarch64/include/AE/Svfexe/SparseAbstractInterpretation.h +3 -1
  14. package/SVF-linux-aarch64/include/CFL/CFGNormalizer.h +2 -1
  15. package/SVF-linux-aarch64/include/CFL/CFGrammar.h +8 -4
  16. package/SVF-linux-aarch64/include/CFL/CFLAlias.h +3 -2
  17. package/SVF-linux-aarch64/include/CFL/CFLBase.h +4 -9
  18. package/SVF-linux-aarch64/include/CFL/CFLGramGraphChecker.h +3 -1
  19. package/SVF-linux-aarch64/include/CFL/CFLGraphBuilder.h +1 -0
  20. package/SVF-linux-aarch64/include/CFL/CFLSVFGBuilder.h +5 -0
  21. package/SVF-linux-aarch64/include/CFL/CFLSolver.h +2 -1
  22. package/SVF-linux-aarch64/include/CFL/CFLStat.h +2 -2
  23. package/SVF-linux-aarch64/include/CFL/CFLVF.h +5 -2
  24. package/SVF-linux-aarch64/include/CFL/GrammarBuilder.h +3 -1
  25. package/SVF-linux-aarch64/include/DDA/ContextDDA.h +1 -0
  26. package/SVF-linux-aarch64/include/DDA/DDAClient.h +2 -2
  27. package/SVF-linux-aarch64/include/DDA/DDAPass.h +5 -1
  28. package/SVF-linux-aarch64/include/DDA/DDAStat.h +2 -1
  29. package/SVF-linux-aarch64/include/DDA/DDAVFSolver.h +3 -1
  30. package/SVF-linux-aarch64/include/DDA/FlowDDA.h +2 -1
  31. package/SVF-linux-aarch64/include/Graphs/CDG.h +6 -0
  32. package/SVF-linux-aarch64/include/Graphs/ICFGNode.h +1 -0
  33. package/SVF-linux-aarch64/include/Graphs/IRGraph.h +2 -3
  34. package/SVF-linux-aarch64/include/Graphs/SCC.h +4 -3
  35. package/SVF-linux-aarch64/include/Graphs/WTO.h +2 -3
  36. package/SVF-linux-aarch64/include/MSSA/MSSAMuChi.h +2 -1
  37. package/SVF-linux-aarch64/include/MSSA/MemPartition.h +1 -0
  38. package/SVF-linux-aarch64/include/MSSA/MemRegion.h +6 -2
  39. package/SVF-linux-aarch64/include/MSSA/SVFGBuilder.h +1 -1
  40. package/SVF-linux-aarch64/include/MTA/MHP.h +1 -0
  41. package/SVF-linux-aarch64/include/MTA/MTA.h +1 -5
  42. package/SVF-linux-aarch64/include/MTA/TCT.h +3 -2
  43. package/SVF-linux-aarch64/include/MemoryModel/AbstractPointsToDS.h +0 -2
  44. package/SVF-linux-aarch64/include/MemoryModel/AccessPath.h +6 -2
  45. package/SVF-linux-aarch64/include/MemoryModel/MutablePointsToDS.h +0 -1
  46. package/SVF-linux-aarch64/include/MemoryModel/PersistentPointsToCache.h +1 -1
  47. package/SVF-linux-aarch64/include/MemoryModel/PersistentPointsToDS.h +0 -1
  48. package/SVF-linux-aarch64/include/MemoryModel/PointerAnalysis.h +2 -7
  49. package/SVF-linux-aarch64/include/MemoryModel/PointerAnalysisImpl.h +5 -1
  50. package/SVF-linux-aarch64/include/MemoryModel/PointsTo.h +2 -1
  51. package/SVF-linux-aarch64/include/MemoryModel/SVFLoop.h +4 -1
  52. package/SVF-linux-aarch64/include/SABER/ProgSlice.h +0 -1
  53. package/SVF-linux-aarch64/include/SABER/SaberCheckerAPI.h +1 -2
  54. package/SVF-linux-aarch64/include/SABER/SaberSVFGBuilder.h +5 -1
  55. package/SVF-linux-aarch64/include/SABER/SrcSnkDDA.h +1 -1
  56. package/SVF-linux-aarch64/include/SVF-LLVM/LLVMLoopAnalysis.h +0 -1
  57. package/SVF-linux-aarch64/include/SVF-LLVM/LLVMUtil.h +2 -0
  58. package/SVF-linux-aarch64/include/SVFIR/ObjTypeInfo.h +3 -2
  59. package/SVF-linux-aarch64/include/SVFIR/PAGBuilderFromFile.h +1 -0
  60. package/SVF-linux-aarch64/include/SVFIR/SVFIR.h +3 -1
  61. package/SVF-linux-aarch64/include/SVFIR/SVFStatements.h +1 -0
  62. package/SVF-linux-aarch64/include/SVFIR/SVFType.h +0 -59
  63. package/SVF-linux-aarch64/include/SVFIR/SVFValue.h +2 -3
  64. package/SVF-linux-aarch64/include/SVFIR/SVFVariables.h +7 -1
  65. package/SVF-linux-aarch64/include/Util/CDGBuilder.h +8 -2
  66. package/SVF-linux-aarch64/include/Util/CallGraphBuilder.h +0 -2
  67. package/SVF-linux-aarch64/include/Util/CoreBitVector.h +1 -1
  68. package/SVF-linux-aarch64/include/Util/CxtStmt.h +0 -2
  69. package/SVF-linux-aarch64/include/Util/DPItem.h +2 -1
  70. package/SVF-linux-aarch64/include/Util/ExtAPI.h +3 -4
  71. package/SVF-linux-aarch64/include/Util/GeneralType.h +52 -48
  72. package/SVF-linux-aarch64/include/Util/Hash.h +56 -0
  73. package/SVF-linux-aarch64/include/Util/NodeIDAllocator.h +1 -1
  74. package/SVF-linux-aarch64/include/Util/Options.h +0 -1
  75. package/SVF-linux-aarch64/include/Util/PTAStat.h +3 -4
  76. package/SVF-linux-aarch64/include/Util/SVFBugReport.h +7 -9
  77. package/SVF-linux-aarch64/include/Util/SVFLoopAndDomInfo.h +7 -4
  78. package/SVF-linux-aarch64/include/Util/SVFStat.h +1 -0
  79. package/SVF-linux-aarch64/include/Util/SVFUtil.h +5 -5
  80. package/SVF-linux-aarch64/include/Util/SparseBitVector.h +13 -0
  81. package/SVF-linux-aarch64/include/Util/ThreadAPI.h +1 -1
  82. package/SVF-linux-aarch64/include/Util/WorkList.h +2 -2
  83. package/SVF-linux-aarch64/include/Util/Z3Expr.h +1 -1
  84. package/SVF-linux-aarch64/include/WPA/Andersen.h +3 -3
  85. package/SVF-linux-aarch64/include/WPA/AndersenPWC.h +2 -1
  86. package/SVF-linux-aarch64/include/WPA/CSC.h +5 -5
  87. package/SVF-linux-aarch64/include/WPA/FlowSensitive.h +1 -2
  88. package/SVF-linux-aarch64/include/WPA/Steensgaard.h +5 -0
  89. package/SVF-linux-aarch64/include/WPA/TypeAnalysis.h +5 -0
  90. package/SVF-linux-aarch64/include/WPA/VersionedFlowSensitive.h +1 -4
  91. package/SVF-linux-aarch64/include/WPA/WPAFSSolver.h +1 -0
  92. package/SVF-linux-aarch64/include/WPA/WPAPass.h +5 -1
  93. package/SVF-linux-aarch64/include/WPA/WPASolver.h +1 -0
  94. package/SVF-linux-aarch64/include/WPA/WPAStat.h +1 -0
  95. package/SVF-linux-aarch64/lib/cmake/SVF/SVFTargets.cmake +1 -1
  96. package/SVF-linux-aarch64/lib/libSvfCore.so.3.4 +0 -0
  97. package/SVF-linux-aarch64/lib/libSvfLLVM.so.3.4 +0 -0
  98. package/SVF-linux-x86_64/bin/ae +0 -0
  99. package/SVF-linux-x86_64/bin/mta +0 -0
  100. package/SVF-linux-x86_64/bin/saber +0 -0
  101. package/SVF-linux-x86_64/bin/svf-ex +0 -0
  102. package/SVF-linux-x86_64/bin/wpa +0 -0
  103. package/SVF-linux-x86_64/include/AE/Core/AbstractState.h +1 -1
  104. package/SVF-linux-x86_64/include/AE/Core/ICFGWTO.h +4 -1
  105. package/SVF-linux-x86_64/include/AE/Core/NumericValue.h +2 -1
  106. package/SVF-linux-x86_64/include/AE/Core/RelExeState.h +1 -0
  107. package/SVF-linux-x86_64/include/AE/Core/RelationSolver.h +5 -1
  108. package/SVF-linux-x86_64/include/AE/Svfexe/AbsExtAPI.h +9 -3
  109. package/SVF-linux-x86_64/include/AE/Svfexe/SparseAbstractInterpretation.h +3 -1
  110. package/SVF-linux-x86_64/include/CFL/CFGNormalizer.h +2 -1
  111. package/SVF-linux-x86_64/include/CFL/CFGrammar.h +8 -4
  112. package/SVF-linux-x86_64/include/CFL/CFLAlias.h +3 -2
  113. package/SVF-linux-x86_64/include/CFL/CFLBase.h +4 -9
  114. package/SVF-linux-x86_64/include/CFL/CFLGramGraphChecker.h +3 -1
  115. package/SVF-linux-x86_64/include/CFL/CFLGraphBuilder.h +1 -0
  116. package/SVF-linux-x86_64/include/CFL/CFLSVFGBuilder.h +5 -0
  117. package/SVF-linux-x86_64/include/CFL/CFLSolver.h +2 -1
  118. package/SVF-linux-x86_64/include/CFL/CFLStat.h +2 -2
  119. package/SVF-linux-x86_64/include/CFL/CFLVF.h +5 -2
  120. package/SVF-linux-x86_64/include/CFL/GrammarBuilder.h +3 -1
  121. package/SVF-linux-x86_64/include/DDA/ContextDDA.h +1 -0
  122. package/SVF-linux-x86_64/include/DDA/DDAClient.h +2 -2
  123. package/SVF-linux-x86_64/include/DDA/DDAPass.h +5 -1
  124. package/SVF-linux-x86_64/include/DDA/DDAStat.h +2 -1
  125. package/SVF-linux-x86_64/include/DDA/DDAVFSolver.h +3 -1
  126. package/SVF-linux-x86_64/include/DDA/FlowDDA.h +2 -1
  127. package/SVF-linux-x86_64/include/Graphs/CDG.h +6 -0
  128. package/SVF-linux-x86_64/include/Graphs/ICFGNode.h +1 -0
  129. package/SVF-linux-x86_64/include/Graphs/IRGraph.h +2 -3
  130. package/SVF-linux-x86_64/include/Graphs/SCC.h +4 -3
  131. package/SVF-linux-x86_64/include/Graphs/WTO.h +2 -3
  132. package/SVF-linux-x86_64/include/MSSA/MSSAMuChi.h +2 -1
  133. package/SVF-linux-x86_64/include/MSSA/MemPartition.h +1 -0
  134. package/SVF-linux-x86_64/include/MSSA/MemRegion.h +6 -2
  135. package/SVF-linux-x86_64/include/MSSA/SVFGBuilder.h +1 -1
  136. package/SVF-linux-x86_64/include/MTA/MHP.h +1 -0
  137. package/SVF-linux-x86_64/include/MTA/MTA.h +1 -5
  138. package/SVF-linux-x86_64/include/MTA/TCT.h +3 -2
  139. package/SVF-linux-x86_64/include/MemoryModel/AbstractPointsToDS.h +0 -2
  140. package/SVF-linux-x86_64/include/MemoryModel/AccessPath.h +6 -2
  141. package/SVF-linux-x86_64/include/MemoryModel/MutablePointsToDS.h +0 -1
  142. package/SVF-linux-x86_64/include/MemoryModel/PersistentPointsToCache.h +1 -1
  143. package/SVF-linux-x86_64/include/MemoryModel/PersistentPointsToDS.h +0 -1
  144. package/SVF-linux-x86_64/include/MemoryModel/PointerAnalysis.h +2 -7
  145. package/SVF-linux-x86_64/include/MemoryModel/PointerAnalysisImpl.h +5 -1
  146. package/SVF-linux-x86_64/include/MemoryModel/PointsTo.h +2 -1
  147. package/SVF-linux-x86_64/include/MemoryModel/SVFLoop.h +4 -1
  148. package/SVF-linux-x86_64/include/SABER/ProgSlice.h +0 -1
  149. package/SVF-linux-x86_64/include/SABER/SaberCheckerAPI.h +1 -2
  150. package/SVF-linux-x86_64/include/SABER/SaberSVFGBuilder.h +5 -1
  151. package/SVF-linux-x86_64/include/SABER/SrcSnkDDA.h +1 -1
  152. package/SVF-linux-x86_64/include/SVF-LLVM/LLVMLoopAnalysis.h +0 -1
  153. package/SVF-linux-x86_64/include/SVF-LLVM/LLVMUtil.h +2 -0
  154. package/SVF-linux-x86_64/include/SVFIR/ObjTypeInfo.h +3 -2
  155. package/SVF-linux-x86_64/include/SVFIR/PAGBuilderFromFile.h +1 -0
  156. package/SVF-linux-x86_64/include/SVFIR/SVFIR.h +3 -1
  157. package/SVF-linux-x86_64/include/SVFIR/SVFStatements.h +1 -0
  158. package/SVF-linux-x86_64/include/SVFIR/SVFType.h +0 -59
  159. package/SVF-linux-x86_64/include/SVFIR/SVFValue.h +2 -3
  160. package/SVF-linux-x86_64/include/SVFIR/SVFVariables.h +7 -1
  161. package/SVF-linux-x86_64/include/Util/CDGBuilder.h +8 -2
  162. package/SVF-linux-x86_64/include/Util/CallGraphBuilder.h +0 -2
  163. package/SVF-linux-x86_64/include/Util/CoreBitVector.h +1 -1
  164. package/SVF-linux-x86_64/include/Util/CxtStmt.h +0 -2
  165. package/SVF-linux-x86_64/include/Util/DPItem.h +2 -1
  166. package/SVF-linux-x86_64/include/Util/ExtAPI.h +3 -4
  167. package/SVF-linux-x86_64/include/Util/GeneralType.h +52 -48
  168. package/SVF-linux-x86_64/include/Util/Hash.h +56 -0
  169. package/SVF-linux-x86_64/include/Util/NodeIDAllocator.h +1 -1
  170. package/SVF-linux-x86_64/include/Util/Options.h +0 -1
  171. package/SVF-linux-x86_64/include/Util/PTAStat.h +3 -4
  172. package/SVF-linux-x86_64/include/Util/SVFBugReport.h +7 -9
  173. package/SVF-linux-x86_64/include/Util/SVFLoopAndDomInfo.h +7 -4
  174. package/SVF-linux-x86_64/include/Util/SVFStat.h +1 -0
  175. package/SVF-linux-x86_64/include/Util/SVFUtil.h +5 -5
  176. package/SVF-linux-x86_64/include/Util/SparseBitVector.h +13 -0
  177. package/SVF-linux-x86_64/include/Util/ThreadAPI.h +1 -1
  178. package/SVF-linux-x86_64/include/Util/WorkList.h +2 -2
  179. package/SVF-linux-x86_64/include/Util/Z3Expr.h +1 -1
  180. package/SVF-linux-x86_64/include/WPA/Andersen.h +3 -3
  181. package/SVF-linux-x86_64/include/WPA/AndersenPWC.h +2 -1
  182. package/SVF-linux-x86_64/include/WPA/CSC.h +5 -5
  183. package/SVF-linux-x86_64/include/WPA/FlowSensitive.h +1 -2
  184. package/SVF-linux-x86_64/include/WPA/Steensgaard.h +5 -0
  185. package/SVF-linux-x86_64/include/WPA/TypeAnalysis.h +5 -0
  186. package/SVF-linux-x86_64/include/WPA/VersionedFlowSensitive.h +1 -4
  187. package/SVF-linux-x86_64/include/WPA/WPAFSSolver.h +1 -0
  188. package/SVF-linux-x86_64/include/WPA/WPAPass.h +5 -1
  189. package/SVF-linux-x86_64/include/WPA/WPASolver.h +1 -0
  190. package/SVF-linux-x86_64/include/WPA/WPAStat.h +1 -0
  191. package/SVF-linux-x86_64/lib/cmake/SVF/SVFTargets.cmake +1 -1
  192. package/SVF-linux-x86_64/lib/libSvfCore.so.3.4 +0 -0
  193. package/SVF-linux-x86_64/lib/libSvfLLVM.so.3.4 +0 -0
  194. package/SVF-osx/bin/ae +0 -0
  195. package/SVF-osx/bin/cfl +0 -0
  196. package/SVF-osx/bin/dvf +0 -0
  197. package/SVF-osx/bin/llvm2svf +0 -0
  198. package/SVF-osx/bin/mta +0 -0
  199. package/SVF-osx/bin/saber +0 -0
  200. package/SVF-osx/bin/svf-ex +0 -0
  201. package/SVF-osx/bin/wpa +0 -0
  202. package/SVF-osx/include/AE/Core/AbstractState.h +1 -1
  203. package/SVF-osx/include/AE/Core/ICFGWTO.h +4 -1
  204. package/SVF-osx/include/AE/Core/NumericValue.h +2 -1
  205. package/SVF-osx/include/AE/Core/RelExeState.h +1 -0
  206. package/SVF-osx/include/AE/Core/RelationSolver.h +5 -1
  207. package/SVF-osx/include/AE/Svfexe/AbsExtAPI.h +9 -3
  208. package/SVF-osx/include/AE/Svfexe/SparseAbstractInterpretation.h +3 -1
  209. package/SVF-osx/include/CFL/CFGNormalizer.h +2 -1
  210. package/SVF-osx/include/CFL/CFGrammar.h +8 -4
  211. package/SVF-osx/include/CFL/CFLAlias.h +3 -2
  212. package/SVF-osx/include/CFL/CFLBase.h +4 -9
  213. package/SVF-osx/include/CFL/CFLGramGraphChecker.h +3 -1
  214. package/SVF-osx/include/CFL/CFLGraphBuilder.h +1 -0
  215. package/SVF-osx/include/CFL/CFLSVFGBuilder.h +5 -0
  216. package/SVF-osx/include/CFL/CFLSolver.h +2 -1
  217. package/SVF-osx/include/CFL/CFLStat.h +2 -2
  218. package/SVF-osx/include/CFL/CFLVF.h +5 -2
  219. package/SVF-osx/include/CFL/GrammarBuilder.h +3 -1
  220. package/SVF-osx/include/DDA/ContextDDA.h +1 -0
  221. package/SVF-osx/include/DDA/DDAClient.h +2 -2
  222. package/SVF-osx/include/DDA/DDAPass.h +5 -1
  223. package/SVF-osx/include/DDA/DDAStat.h +2 -1
  224. package/SVF-osx/include/DDA/DDAVFSolver.h +3 -1
  225. package/SVF-osx/include/DDA/FlowDDA.h +2 -1
  226. package/SVF-osx/include/Graphs/CDG.h +6 -0
  227. package/SVF-osx/include/Graphs/ICFGNode.h +1 -0
  228. package/SVF-osx/include/Graphs/IRGraph.h +2 -3
  229. package/SVF-osx/include/Graphs/SCC.h +4 -3
  230. package/SVF-osx/include/Graphs/WTO.h +2 -3
  231. package/SVF-osx/include/MSSA/MSSAMuChi.h +2 -1
  232. package/SVF-osx/include/MSSA/MemPartition.h +1 -0
  233. package/SVF-osx/include/MSSA/MemRegion.h +6 -2
  234. package/SVF-osx/include/MSSA/SVFGBuilder.h +1 -1
  235. package/SVF-osx/include/MTA/MHP.h +1 -0
  236. package/SVF-osx/include/MTA/MTA.h +1 -5
  237. package/SVF-osx/include/MTA/TCT.h +3 -2
  238. package/SVF-osx/include/MemoryModel/AbstractPointsToDS.h +0 -2
  239. package/SVF-osx/include/MemoryModel/AccessPath.h +6 -2
  240. package/SVF-osx/include/MemoryModel/MutablePointsToDS.h +0 -1
  241. package/SVF-osx/include/MemoryModel/PersistentPointsToCache.h +1 -1
  242. package/SVF-osx/include/MemoryModel/PersistentPointsToDS.h +0 -1
  243. package/SVF-osx/include/MemoryModel/PointerAnalysis.h +2 -7
  244. package/SVF-osx/include/MemoryModel/PointerAnalysisImpl.h +5 -1
  245. package/SVF-osx/include/MemoryModel/PointsTo.h +2 -1
  246. package/SVF-osx/include/MemoryModel/SVFLoop.h +4 -1
  247. package/SVF-osx/include/SABER/ProgSlice.h +0 -1
  248. package/SVF-osx/include/SABER/SaberCheckerAPI.h +1 -2
  249. package/SVF-osx/include/SABER/SaberSVFGBuilder.h +5 -1
  250. package/SVF-osx/include/SABER/SrcSnkDDA.h +1 -1
  251. package/SVF-osx/include/SVF-LLVM/LLVMLoopAnalysis.h +0 -1
  252. package/SVF-osx/include/SVF-LLVM/LLVMUtil.h +2 -0
  253. package/SVF-osx/include/SVFIR/ObjTypeInfo.h +3 -2
  254. package/SVF-osx/include/SVFIR/PAGBuilderFromFile.h +1 -0
  255. package/SVF-osx/include/SVFIR/SVFIR.h +3 -1
  256. package/SVF-osx/include/SVFIR/SVFStatements.h +1 -0
  257. package/SVF-osx/include/SVFIR/SVFType.h +0 -59
  258. package/SVF-osx/include/SVFIR/SVFValue.h +2 -3
  259. package/SVF-osx/include/SVFIR/SVFVariables.h +7 -1
  260. package/SVF-osx/include/Util/CDGBuilder.h +8 -2
  261. package/SVF-osx/include/Util/CallGraphBuilder.h +0 -2
  262. package/SVF-osx/include/Util/CoreBitVector.h +1 -1
  263. package/SVF-osx/include/Util/CxtStmt.h +0 -2
  264. package/SVF-osx/include/Util/DPItem.h +2 -1
  265. package/SVF-osx/include/Util/ExtAPI.h +3 -4
  266. package/SVF-osx/include/Util/GeneralType.h +52 -48
  267. package/SVF-osx/include/Util/Hash.h +56 -0
  268. package/SVF-osx/include/Util/NodeIDAllocator.h +1 -1
  269. package/SVF-osx/include/Util/Options.h +0 -1
  270. package/SVF-osx/include/Util/PTAStat.h +3 -4
  271. package/SVF-osx/include/Util/SVFBugReport.h +7 -9
  272. package/SVF-osx/include/Util/SVFLoopAndDomInfo.h +7 -4
  273. package/SVF-osx/include/Util/SVFStat.h +1 -0
  274. package/SVF-osx/include/Util/SVFUtil.h +5 -5
  275. package/SVF-osx/include/Util/SparseBitVector.h +13 -0
  276. package/SVF-osx/include/Util/ThreadAPI.h +1 -1
  277. package/SVF-osx/include/Util/WorkList.h +2 -2
  278. package/SVF-osx/include/Util/Z3Expr.h +1 -1
  279. package/SVF-osx/include/WPA/Andersen.h +3 -3
  280. package/SVF-osx/include/WPA/AndersenPWC.h +2 -1
  281. package/SVF-osx/include/WPA/CSC.h +5 -5
  282. package/SVF-osx/include/WPA/FlowSensitive.h +1 -2
  283. package/SVF-osx/include/WPA/Steensgaard.h +5 -0
  284. package/SVF-osx/include/WPA/TypeAnalysis.h +5 -0
  285. package/SVF-osx/include/WPA/VersionedFlowSensitive.h +1 -4
  286. package/SVF-osx/include/WPA/WPAFSSolver.h +1 -0
  287. package/SVF-osx/include/WPA/WPAPass.h +5 -1
  288. package/SVF-osx/include/WPA/WPASolver.h +1 -0
  289. package/SVF-osx/include/WPA/WPAStat.h +1 -0
  290. package/SVF-osx/lib/cmake/SVF/SVFTargets.cmake +1 -1
  291. package/SVF-osx/lib/extapi.bc +2 -2
  292. package/SVF-osx/lib/libSvfCore.3.4.dylib +0 -0
  293. package/SVF-osx/lib/libSvfLLVM.3.4.dylib +0 -0
  294. package/package.json +1 -1
@@ -3,7 +3,6 @@
3
3
  #ifndef OPTIONS_H_
4
4
  #define OPTIONS_H_
5
5
 
6
- #include <sstream>
7
6
  #include "Util/CommandLine.h"
8
7
  #include "Util/SVFStat.h"
9
8
  #include "MemoryModel/PTATY.h"
@@ -30,13 +30,12 @@
30
30
  #ifndef ANDERSENSTAT_H_
31
31
  #define ANDERSENSTAT_H_
32
32
 
33
- #include "SVFIR/SVFValue.h"
34
- #include "MemoryModel/PointsTo.h"
35
- #include "Util/SVFStat.h"
36
33
  #include <iostream>
37
- #include <map>
38
34
  #include <string>
39
35
 
36
+ #include "Util/SVFStat.h"
37
+ #include "Util/GeneralType.h"
38
+
40
39
  namespace SVF
41
40
  {
42
41
 
@@ -27,15 +27,11 @@
27
27
  #ifndef SVF_BUGRECODER_H
28
28
  #define SVF_BUGRECODER_H
29
29
 
30
- #include <vector>
31
- #include "SVFIR/SVFValue.h"
32
- #include "SVFIR/SVFVariables.h"
33
- #include "SVFIR/SVFStatements.h"
34
- #include "Graphs/ICFGNode.h"
35
30
  #include <string>
36
- #include <map>
31
+ #include <vector>
32
+
37
33
  #include "Util/cJSON.h"
38
- #include <set>
34
+ #include "Util/GeneralType.h"
39
35
 
40
36
  #define BRANCHFLAGMASK 0x00000010
41
37
  #define EVENTTYPEMASK 0x0000000f
@@ -43,6 +39,8 @@
43
39
  namespace SVF
44
40
  {
45
41
 
42
+ class ICFGNode;
43
+
46
44
  /*!
47
45
  * Bug Detector Recoder
48
46
  */
@@ -84,7 +82,7 @@ public:
84
82
 
85
83
  public:
86
84
  enum BugType {FULLBUFOVERFLOW, PARTIALBUFOVERFLOW, NEVERFREE, PARTIALLEAK, DOUBLEFREE, FILENEVERCLOSE, FILEPARTIALCLOSE, FULLNULLPTRDEREFERENCE, PARTIALNULLPTRDEREFERENCE};
87
- static const std::map<GenericBug::BugType, std::string> BugType2Str;
85
+ static const OrderedMap<GenericBug::BugType, std::string> BugType2Str;
88
86
 
89
87
  protected:
90
88
  BugType bugType;
@@ -424,4 +422,4 @@ public:
424
422
  };
425
423
  }
426
424
 
427
- #endif
425
+ #endif
@@ -31,13 +31,16 @@
31
31
  #ifndef SVFLOOPANDDOMINFO_H
32
32
  #define SVFLOOPANDDOMINFO_H
33
33
 
34
- #include "SVFIR/SVFType.h"
35
- #include "Graphs/GraphPrinter.h"
36
- #include "Util/Casting.h"
37
- #include "Graphs/BasicBlockG.h"
34
+ #include <algorithm>
35
+ #include <vector>
36
+
37
+ #include "Util/GeneralType.h"
38
38
 
39
39
  namespace SVF
40
40
  {
41
+
42
+ class SVFBasicBlock;
43
+
41
44
  class SVFLoopAndDomInfo
42
45
  {
43
46
 
@@ -31,6 +31,7 @@
31
31
  #define SVF_SVFSTAT_H
32
32
 
33
33
  #include "MemoryModel/PointsTo.h"
34
+ #include "Util/GeneralType.h"
34
35
 
35
36
  namespace SVF
36
37
  {
@@ -30,12 +30,12 @@
30
30
  #ifndef AnalysisUtil_H_
31
31
  #define AnalysisUtil_H_
32
32
 
33
- #include "FastCluster/fastcluster.h"
34
- #include "SVFIR/SVFValue.h"
35
- #include "Util/SVFLoopAndDomInfo.h"
36
- #include "Util/ExtAPI.h"
37
- #include "MemoryModel/PointsTo.h"
38
33
  #include <time.h>
34
+
35
+ #include "MemoryModel/PointsTo.h"
36
+ #include "Util/Casting.h"
37
+ #include "Util/ExtAPI.h"
38
+ #include "Util/GeneralType.h"
39
39
  #include "Util/NodeIDAllocator.h"
40
40
  #include "Util/ThreadAPI.h"
41
41
 
@@ -16,6 +16,8 @@
16
16
  #include <iterator>
17
17
  #include <list>
18
18
 
19
+ #include "Util/Hash.h"
20
+
19
21
  // Appease GCC?
20
22
  #ifdef __has_builtin
21
23
  # define HAS_CLZ __has_builtin(__builtin_clz)
@@ -1249,4 +1251,15 @@ void dump(const SparseBitVector<ElementSize> &LHS, std::ostream &out)
1249
1251
 
1250
1252
  } // End namespace SVF
1251
1253
 
1254
+ /// Specialise hash for SparseBitVectors.
1255
+ template <unsigned N> struct std::hash<SVF::SparseBitVector<N>>
1256
+ {
1257
+ size_t operator()(const SVF::SparseBitVector<N>& sbv) const
1258
+ {
1259
+ SVF::Hash<std::pair<std::pair<size_t, size_t>, size_t>> h;
1260
+ return h(std::make_pair(std::make_pair(sbv.count(), sbv.find_first()),
1261
+ sbv.find_last()));
1262
+ }
1263
+ };
1264
+
1252
1265
  #endif // SPARSEBITVECTOR_H
@@ -30,7 +30,7 @@
30
30
  #ifndef THREADAPI_H_
31
31
  #define THREADAPI_H_
32
32
 
33
- #include "SVFIR/SVFValue.h"
33
+ #include "Util/GeneralType.h"
34
34
 
35
35
  namespace SVF
36
36
  {
@@ -36,8 +36,6 @@
36
36
  #ifndef WORKLIST_H_
37
37
  #define WORKLIST_H_
38
38
 
39
- #include "SVFIR/SVFValue.h"
40
-
41
39
  #include <assert.h>
42
40
  #include <cstdlib>
43
41
  #include <vector>
@@ -45,6 +43,8 @@
45
43
  #include <list>
46
44
  #include <set>
47
45
 
46
+ #include "Util/GeneralType.h"
47
+
48
48
  namespace SVF
49
49
  {
50
50
 
@@ -30,7 +30,7 @@
30
30
  #define Z3_EXAMPLE_Z3EXPR_H
31
31
 
32
32
  #include "z3++.h"
33
- #include "SVFIR/SVFType.h"
33
+ #include "Util/GeneralType.h"
34
34
 
35
35
  namespace SVF
36
36
  {
@@ -37,17 +37,17 @@
37
37
 
38
38
  #include "MemoryModel/PTATY.h"
39
39
  #include "MemoryModel/PointerAnalysisImpl.h"
40
- #include "WPA/WPAStat.h"
40
+ #include "MemoryModel/PointsTo.h"
41
41
  #include "WPA/WPASolver.h"
42
- #include "SVFIR/SVFIR.h"
43
42
  #include "Graphs/ConsG.h"
43
+ #include "Util/GeneralType.h"
44
44
  #include "Util/Options.h"
45
45
 
46
46
  namespace SVF
47
47
  {
48
48
 
49
-
50
49
  class ThreadCallGraph;
50
+ class SVFIR;
51
51
 
52
52
  /*!
53
53
  * Abstract class of inclusion-based Pointer Analysis
@@ -34,11 +34,12 @@
34
34
  #include "WPA/Andersen.h"
35
35
  #include "WPA/CSC.h"
36
36
  #include "MemoryModel/PTATY.h"
37
- #include "MemoryModel/PointsTo.h"
38
37
 
39
38
  namespace SVF
40
39
  {
41
40
 
41
+ class PointsTo;
42
+
42
43
  /*!
43
44
  * Selective Cycle Detection Based Andersen Analysis
44
45
  */
@@ -30,17 +30,17 @@
30
30
  #ifndef PROJECT_CSC_H
31
31
  #define PROJECT_CSC_H
32
32
 
33
- #include "Graphs/ConsG.h"
33
+ #include <limits.h>
34
+
34
35
  #include "Graphs/SCC.h"
35
- #include "SVFIR/SVFValue.h" // for NodeBS
36
+ #include "Util/GeneralType.h"
36
37
  #include "Util/WorkList.h"
37
- #include <limits.h>
38
- #include <map>
39
- #include <stack>
40
38
 
41
39
  namespace SVF
42
40
  {
43
41
 
42
+ class ConstraintGraph;
43
+
44
44
  typedef SCCDetection<ConstraintGraph *> CGSCC;
45
45
 
46
46
  /*!
@@ -30,8 +30,7 @@
30
30
  #ifndef FLOWSENSITIVEANALYSIS_H_
31
31
  #define FLOWSENSITIVEANALYSIS_H_
32
32
 
33
- #include "FastCluster/fastcluster.h"
34
- #include "Graphs/SVFGOPT.h"
33
+ #include "Graphs/SVFG.h"
35
34
  #include "MemoryModel/PointerAnalysisImpl.h"
36
35
  #include "MSSA/SVFGBuilder.h"
37
36
  #include "WPA/WPAFSSolver.h"
@@ -9,9 +9,14 @@
9
9
  #define INCLUDE_WPA_STEENSGAARD_H_
10
10
 
11
11
  #include "WPA/Andersen.h"
12
+ #include "Util/GeneralType.h"
12
13
 
13
14
  namespace SVF
14
15
  {
16
+
17
+ class ConstraintGraph;
18
+ class SVFIR;
19
+
15
20
  /*!
16
21
  * Equivalence-based Pointer Analysis
17
22
  */
@@ -30,11 +30,16 @@
30
30
  #ifndef INCLUDE_WPA_TYPEANALYSIS_H_
31
31
  #define INCLUDE_WPA_TYPEANALYSIS_H_
32
32
 
33
+ #include "Util/GeneralType.h"
33
34
  #include "WPA/Andersen.h"
34
35
 
35
36
  namespace SVF
36
37
  {
37
38
 
39
+ class CallEdgeMap;
40
+ class CallSiteToFunPtrMap;
41
+ class SVFIR;
42
+
38
43
  class TypeAnalysis: public AndersenBase
39
44
  {
40
45
 
@@ -14,12 +14,9 @@
14
14
  #ifndef VFS_H_
15
15
  #define VFS_H_
16
16
 
17
- #include "Graphs/SVFGOPT.h"
18
- #include "MSSA/SVFGBuilder.h"
17
+ #include "Graphs/SVFG.h"
19
18
  #include "WPA/FlowSensitive.h"
20
- #include "WPA/WPAFSSolver.h"
21
19
  #include "MemoryModel/PTATY.h"
22
- #include "MemoryModel/PointsTo.h"
23
20
 
24
21
  namespace SVF
25
22
  {
@@ -37,6 +37,7 @@
37
37
  #define WPAFSSOLVER_H_
38
38
 
39
39
  #include "WPA/WPASolver.h"
40
+ #include "Util/GeneralType.h"
40
41
 
41
42
  namespace SVF
42
43
  {
@@ -37,11 +37,15 @@
37
37
  #ifndef WPA_H_
38
38
  #define WPA_H_
39
39
 
40
- #include "MemoryModel/PointerAnalysisImpl.h"
40
+ #include "Util/GeneralType.h"
41
+ #include "SVFIR/SVFType.h"
41
42
 
42
43
  namespace SVF
43
44
  {
44
45
 
46
+ class CallICFGNode;
47
+ class PointerAnalysis;
48
+ class PointsTo;
45
49
  class SVFG;
46
50
 
47
51
  /*!
@@ -32,6 +32,7 @@
32
32
  #define GRAPHSOLVER_H_
33
33
 
34
34
  #include "Util/WorkList.h"
35
+ #include "Util/GeneralType.h"
35
36
 
36
37
  namespace SVF
37
38
  {
@@ -34,6 +34,7 @@
34
34
  #include "Util/PTAStat.h"
35
35
  #include "WPA/FlowSensitive.h"
36
36
  #include "WPA/VersionedFlowSensitive.h"
37
+ #include "Util/GeneralType.h"
37
38
 
38
39
  namespace SVF
39
40
  {
@@ -81,7 +81,7 @@ if(NOT CMAKE_VERSION VERSION_LESS "3.23.0")
81
81
  FILE_SET "HEADERS"
82
82
  TYPE "HEADERS"
83
83
  BASE_DIRS "${_IMPORT_PREFIX}/include"
84
- FILES "${_IMPORT_PREFIX}/include/AE/Core/AbstractState.h" "${_IMPORT_PREFIX}/include/AE/Core/AbstractValue.h" "${_IMPORT_PREFIX}/include/AE/Core/AddressValue.h" "${_IMPORT_PREFIX}/include/AE/Core/ICFGWTO.h" "${_IMPORT_PREFIX}/include/AE/Core/IntervalValue.h" "${_IMPORT_PREFIX}/include/AE/Core/NumericValue.h" "${_IMPORT_PREFIX}/include/AE/Core/RelExeState.h" "${_IMPORT_PREFIX}/include/AE/Core/RelationSolver.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AEDetector.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AEStat.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AEWTO.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AbsExtAPI.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AbstractInterpretation.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/SparseAbstractInterpretation.h" "${_IMPORT_PREFIX}/include/CFL/CFGNormalizer.h" "${_IMPORT_PREFIX}/include/CFL/CFGrammar.h" "${_IMPORT_PREFIX}/include/CFL/CFLAlias.h" "${_IMPORT_PREFIX}/include/CFL/CFLBase.h" "${_IMPORT_PREFIX}/include/CFL/CFLGramGraphChecker.h" "${_IMPORT_PREFIX}/include/CFL/CFLGraphBuilder.h" "${_IMPORT_PREFIX}/include/CFL/CFLSVFGBuilder.h" "${_IMPORT_PREFIX}/include/CFL/CFLSolver.h" "${_IMPORT_PREFIX}/include/CFL/CFLStat.h" "${_IMPORT_PREFIX}/include/CFL/CFLVF.h" "${_IMPORT_PREFIX}/include/CFL/GrammarBuilder.h" "${_IMPORT_PREFIX}/include/DDA/ContextDDA.h" "${_IMPORT_PREFIX}/include/DDA/DDAClient.h" "${_IMPORT_PREFIX}/include/DDA/DDAPass.h" "${_IMPORT_PREFIX}/include/DDA/DDAStat.h" "${_IMPORT_PREFIX}/include/DDA/DDAVFSolver.h" "${_IMPORT_PREFIX}/include/DDA/FlowDDA.h" "${_IMPORT_PREFIX}/include/FastCluster/fastcluster.h" "${_IMPORT_PREFIX}/include/Graphs/BasicBlockG.h" "${_IMPORT_PREFIX}/include/Graphs/CDG.h" "${_IMPORT_PREFIX}/include/Graphs/CFLGraph.h" "${_IMPORT_PREFIX}/include/Graphs/CHG.h" "${_IMPORT_PREFIX}/include/Graphs/CallGraph.h" "${_IMPORT_PREFIX}/include/Graphs/ConsG.h" "${_IMPORT_PREFIX}/include/Graphs/ConsGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/ConsGNode.h" "${_IMPORT_PREFIX}/include/Graphs/DOTGraphTraits.h" "${_IMPORT_PREFIX}/include/Graphs/GenericGraph.h" "${_IMPORT_PREFIX}/include/Graphs/GraphPrinter.h" "${_IMPORT_PREFIX}/include/Graphs/GraphTraits.h" "${_IMPORT_PREFIX}/include/Graphs/GraphWriter.h" "${_IMPORT_PREFIX}/include/Graphs/ICFG.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGStat.h" "${_IMPORT_PREFIX}/include/Graphs/IRGraph.h" "${_IMPORT_PREFIX}/include/Graphs/SCC.h" "${_IMPORT_PREFIX}/include/Graphs/SVFG.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGOPT.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGStat.h" "${_IMPORT_PREFIX}/include/Graphs/ThreadCallGraph.h" "${_IMPORT_PREFIX}/include/Graphs/VFG.h" "${_IMPORT_PREFIX}/include/Graphs/VFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/VFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/WTO.h" "${_IMPORT_PREFIX}/include/MSSA/MSSAMuChi.h" "${_IMPORT_PREFIX}/include/MSSA/MemPartition.h" "${_IMPORT_PREFIX}/include/MSSA/MemRegion.h" "${_IMPORT_PREFIX}/include/MSSA/MemSSA.h" "${_IMPORT_PREFIX}/include/MSSA/SVFGBuilder.h" "${_IMPORT_PREFIX}/include/MTA/LockAnalysis.h" "${_IMPORT_PREFIX}/include/MTA/MHP.h" "${_IMPORT_PREFIX}/include/MTA/MTA.h" "${_IMPORT_PREFIX}/include/MTA/MTAStat.h" "${_IMPORT_PREFIX}/include/MTA/TCT.h" "${_IMPORT_PREFIX}/include/MemoryModel/AbstractPointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/AccessPath.h" "${_IMPORT_PREFIX}/include/MemoryModel/ConditionalPT.h" "${_IMPORT_PREFIX}/include/MemoryModel/MutablePointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/PTATY.h" "${_IMPORT_PREFIX}/include/MemoryModel/PersistentPointsToCache.h" "${_IMPORT_PREFIX}/include/MemoryModel/PersistentPointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointerAnalysis.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointerAnalysisImpl.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointsTo.h" "${_IMPORT_PREFIX}/include/MemoryModel/SVFLoop.h" "${_IMPORT_PREFIX}/include/SABER/DoubleFreeChecker.h" "${_IMPORT_PREFIX}/include/SABER/FileChecker.h" "${_IMPORT_PREFIX}/include/SABER/LeakChecker.h" "${_IMPORT_PREFIX}/include/SABER/ProgSlice.h" "${_IMPORT_PREFIX}/include/SABER/SaberCheckerAPI.h" "${_IMPORT_PREFIX}/include/SABER/SaberCondAllocator.h" "${_IMPORT_PREFIX}/include/SABER/SaberSVFGBuilder.h" "${_IMPORT_PREFIX}/include/SABER/SrcSnkDDA.h" "${_IMPORT_PREFIX}/include/SABER/SrcSnkSolver.h" "${_IMPORT_PREFIX}/include/SVFIR/ObjTypeInfo.h" "${_IMPORT_PREFIX}/include/SVFIR/PAGBuilderFromFile.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFIR.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFStatements.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFType.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFValue.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFVariables.h" "${_IMPORT_PREFIX}/include/Util/Annotator.h" "${_IMPORT_PREFIX}/include/Util/BitVector.h" "${_IMPORT_PREFIX}/include/Util/CDGBuilder.h" "${_IMPORT_PREFIX}/include/Util/CallGraphBuilder.h" "${_IMPORT_PREFIX}/include/Util/Casting.h" "${_IMPORT_PREFIX}/include/Util/CommandLine.h" "${_IMPORT_PREFIX}/include/Util/CoreBitVector.h" "${_IMPORT_PREFIX}/include/Util/CxtStmt.h" "${_IMPORT_PREFIX}/include/Util/DPItem.h" "${_IMPORT_PREFIX}/include/Util/ExtAPI.h" "${_IMPORT_PREFIX}/include/Util/GeneralType.h" "${_IMPORT_PREFIX}/include/Util/GraphReachSolver.h" "${_IMPORT_PREFIX}/include/Util/NodeIDAllocator.h" "${_IMPORT_PREFIX}/include/Util/Options.h" "${_IMPORT_PREFIX}/include/Util/PTAStat.h" "${_IMPORT_PREFIX}/include/Util/SVFBugReport.h" "${_IMPORT_PREFIX}/include/Util/SVFLoopAndDomInfo.h" "${_IMPORT_PREFIX}/include/Util/SVFStat.h" "${_IMPORT_PREFIX}/include/Util/SVFUtil.h" "${_IMPORT_PREFIX}/include/Util/SparseBitVector.h" "${_IMPORT_PREFIX}/include/Util/ThreadAPI.h" "${_IMPORT_PREFIX}/include/Util/WorkList.h" "${_IMPORT_PREFIX}/include/Util/Z3Expr.h" "${_IMPORT_PREFIX}/include/Util/cJSON.h" "${_IMPORT_PREFIX}/include/Util/iterator.h" "${_IMPORT_PREFIX}/include/Util/iterator_range.h" "${_IMPORT_PREFIX}/include/WPA/Andersen.h" "${_IMPORT_PREFIX}/include/WPA/AndersenPWC.h" "${_IMPORT_PREFIX}/include/WPA/CSC.h" "${_IMPORT_PREFIX}/include/WPA/FlowSensitive.h" "${_IMPORT_PREFIX}/include/WPA/Steensgaard.h" "${_IMPORT_PREFIX}/include/WPA/TypeAnalysis.h" "${_IMPORT_PREFIX}/include/WPA/VersionedFlowSensitive.h" "${_IMPORT_PREFIX}/include/WPA/WPAFSSolver.h" "${_IMPORT_PREFIX}/include/WPA/WPAPass.h" "${_IMPORT_PREFIX}/include/WPA/WPASolver.h" "${_IMPORT_PREFIX}/include/WPA/WPAStat.h"
84
+ FILES "${_IMPORT_PREFIX}/include/AE/Core/AbstractState.h" "${_IMPORT_PREFIX}/include/AE/Core/AbstractValue.h" "${_IMPORT_PREFIX}/include/AE/Core/AddressValue.h" "${_IMPORT_PREFIX}/include/AE/Core/ICFGWTO.h" "${_IMPORT_PREFIX}/include/AE/Core/IntervalValue.h" "${_IMPORT_PREFIX}/include/AE/Core/NumericValue.h" "${_IMPORT_PREFIX}/include/AE/Core/RelExeState.h" "${_IMPORT_PREFIX}/include/AE/Core/RelationSolver.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AEDetector.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AEStat.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AEWTO.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AbsExtAPI.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AbstractInterpretation.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/SparseAbstractInterpretation.h" "${_IMPORT_PREFIX}/include/CFL/CFGNormalizer.h" "${_IMPORT_PREFIX}/include/CFL/CFGrammar.h" "${_IMPORT_PREFIX}/include/CFL/CFLAlias.h" "${_IMPORT_PREFIX}/include/CFL/CFLBase.h" "${_IMPORT_PREFIX}/include/CFL/CFLGramGraphChecker.h" "${_IMPORT_PREFIX}/include/CFL/CFLGraphBuilder.h" "${_IMPORT_PREFIX}/include/CFL/CFLSVFGBuilder.h" "${_IMPORT_PREFIX}/include/CFL/CFLSolver.h" "${_IMPORT_PREFIX}/include/CFL/CFLStat.h" "${_IMPORT_PREFIX}/include/CFL/CFLVF.h" "${_IMPORT_PREFIX}/include/CFL/GrammarBuilder.h" "${_IMPORT_PREFIX}/include/DDA/ContextDDA.h" "${_IMPORT_PREFIX}/include/DDA/DDAClient.h" "${_IMPORT_PREFIX}/include/DDA/DDAPass.h" "${_IMPORT_PREFIX}/include/DDA/DDAStat.h" "${_IMPORT_PREFIX}/include/DDA/DDAVFSolver.h" "${_IMPORT_PREFIX}/include/DDA/FlowDDA.h" "${_IMPORT_PREFIX}/include/FastCluster/fastcluster.h" "${_IMPORT_PREFIX}/include/Graphs/BasicBlockG.h" "${_IMPORT_PREFIX}/include/Graphs/CDG.h" "${_IMPORT_PREFIX}/include/Graphs/CFLGraph.h" "${_IMPORT_PREFIX}/include/Graphs/CHG.h" "${_IMPORT_PREFIX}/include/Graphs/CallGraph.h" "${_IMPORT_PREFIX}/include/Graphs/ConsG.h" "${_IMPORT_PREFIX}/include/Graphs/ConsGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/ConsGNode.h" "${_IMPORT_PREFIX}/include/Graphs/DOTGraphTraits.h" "${_IMPORT_PREFIX}/include/Graphs/GenericGraph.h" "${_IMPORT_PREFIX}/include/Graphs/GraphPrinter.h" "${_IMPORT_PREFIX}/include/Graphs/GraphTraits.h" "${_IMPORT_PREFIX}/include/Graphs/GraphWriter.h" "${_IMPORT_PREFIX}/include/Graphs/ICFG.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGStat.h" "${_IMPORT_PREFIX}/include/Graphs/IRGraph.h" "${_IMPORT_PREFIX}/include/Graphs/SCC.h" "${_IMPORT_PREFIX}/include/Graphs/SVFG.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGOPT.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGStat.h" "${_IMPORT_PREFIX}/include/Graphs/ThreadCallGraph.h" "${_IMPORT_PREFIX}/include/Graphs/VFG.h" "${_IMPORT_PREFIX}/include/Graphs/VFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/VFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/WTO.h" "${_IMPORT_PREFIX}/include/MSSA/MSSAMuChi.h" "${_IMPORT_PREFIX}/include/MSSA/MemPartition.h" "${_IMPORT_PREFIX}/include/MSSA/MemRegion.h" "${_IMPORT_PREFIX}/include/MSSA/MemSSA.h" "${_IMPORT_PREFIX}/include/MSSA/SVFGBuilder.h" "${_IMPORT_PREFIX}/include/MTA/LockAnalysis.h" "${_IMPORT_PREFIX}/include/MTA/MHP.h" "${_IMPORT_PREFIX}/include/MTA/MTA.h" "${_IMPORT_PREFIX}/include/MTA/MTAStat.h" "${_IMPORT_PREFIX}/include/MTA/TCT.h" "${_IMPORT_PREFIX}/include/MemoryModel/AbstractPointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/AccessPath.h" "${_IMPORT_PREFIX}/include/MemoryModel/ConditionalPT.h" "${_IMPORT_PREFIX}/include/MemoryModel/MutablePointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/PTATY.h" "${_IMPORT_PREFIX}/include/MemoryModel/PersistentPointsToCache.h" "${_IMPORT_PREFIX}/include/MemoryModel/PersistentPointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointerAnalysis.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointerAnalysisImpl.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointsTo.h" "${_IMPORT_PREFIX}/include/MemoryModel/SVFLoop.h" "${_IMPORT_PREFIX}/include/SABER/DoubleFreeChecker.h" "${_IMPORT_PREFIX}/include/SABER/FileChecker.h" "${_IMPORT_PREFIX}/include/SABER/LeakChecker.h" "${_IMPORT_PREFIX}/include/SABER/ProgSlice.h" "${_IMPORT_PREFIX}/include/SABER/SaberCheckerAPI.h" "${_IMPORT_PREFIX}/include/SABER/SaberCondAllocator.h" "${_IMPORT_PREFIX}/include/SABER/SaberSVFGBuilder.h" "${_IMPORT_PREFIX}/include/SABER/SrcSnkDDA.h" "${_IMPORT_PREFIX}/include/SABER/SrcSnkSolver.h" "${_IMPORT_PREFIX}/include/SVFIR/ObjTypeInfo.h" "${_IMPORT_PREFIX}/include/SVFIR/PAGBuilderFromFile.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFIR.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFStatements.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFType.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFValue.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFVariables.h" "${_IMPORT_PREFIX}/include/Util/Annotator.h" "${_IMPORT_PREFIX}/include/Util/BitVector.h" "${_IMPORT_PREFIX}/include/Util/CDGBuilder.h" "${_IMPORT_PREFIX}/include/Util/CallGraphBuilder.h" "${_IMPORT_PREFIX}/include/Util/Casting.h" "${_IMPORT_PREFIX}/include/Util/CommandLine.h" "${_IMPORT_PREFIX}/include/Util/CoreBitVector.h" "${_IMPORT_PREFIX}/include/Util/CxtStmt.h" "${_IMPORT_PREFIX}/include/Util/DPItem.h" "${_IMPORT_PREFIX}/include/Util/ExtAPI.h" "${_IMPORT_PREFIX}/include/Util/GeneralType.h" "${_IMPORT_PREFIX}/include/Util/GraphReachSolver.h" "${_IMPORT_PREFIX}/include/Util/Hash.h" "${_IMPORT_PREFIX}/include/Util/NodeIDAllocator.h" "${_IMPORT_PREFIX}/include/Util/Options.h" "${_IMPORT_PREFIX}/include/Util/PTAStat.h" "${_IMPORT_PREFIX}/include/Util/SVFBugReport.h" "${_IMPORT_PREFIX}/include/Util/SVFLoopAndDomInfo.h" "${_IMPORT_PREFIX}/include/Util/SVFStat.h" "${_IMPORT_PREFIX}/include/Util/SVFUtil.h" "${_IMPORT_PREFIX}/include/Util/SparseBitVector.h" "${_IMPORT_PREFIX}/include/Util/ThreadAPI.h" "${_IMPORT_PREFIX}/include/Util/WorkList.h" "${_IMPORT_PREFIX}/include/Util/Z3Expr.h" "${_IMPORT_PREFIX}/include/Util/cJSON.h" "${_IMPORT_PREFIX}/include/Util/iterator.h" "${_IMPORT_PREFIX}/include/Util/iterator_range.h" "${_IMPORT_PREFIX}/include/WPA/Andersen.h" "${_IMPORT_PREFIX}/include/WPA/AndersenPWC.h" "${_IMPORT_PREFIX}/include/WPA/CSC.h" "${_IMPORT_PREFIX}/include/WPA/FlowSensitive.h" "${_IMPORT_PREFIX}/include/WPA/Steensgaard.h" "${_IMPORT_PREFIX}/include/WPA/TypeAnalysis.h" "${_IMPORT_PREFIX}/include/WPA/VersionedFlowSensitive.h" "${_IMPORT_PREFIX}/include/WPA/WPAFSSolver.h" "${_IMPORT_PREFIX}/include/WPA/WPAPass.h" "${_IMPORT_PREFIX}/include/WPA/WPASolver.h" "${_IMPORT_PREFIX}/include/WPA/WPAStat.h"
85
85
  )
86
86
  else()
87
87
  set_property(TARGET SVF::SvfCore
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -48,7 +48,7 @@
48
48
 
49
49
  #include "AE/Core/AbstractValue.h"
50
50
  #include "AE/Core/IntervalValue.h"
51
- #include "SVFIR/SVFVariables.h"
51
+ #include "Util/GeneralType.h"
52
52
 
53
53
  namespace SVF
54
54
  {
@@ -34,13 +34,16 @@
34
34
  #ifndef SVF_ICFGWTO_H
35
35
  #define SVF_ICFGWTO_H
36
36
 
37
+ #include <vector>
38
+
37
39
  #include "Graphs/ICFG.h"
38
40
  #include "Graphs/WTO.h"
39
- #include "Graphs/CallGraph.h"
40
41
 
41
42
  namespace SVF
42
43
  {
43
44
 
45
+ class FunObjVar;
46
+
44
47
  typedef WTOComponent<ICFG> ICFGWTOComp;
45
48
  typedef WTONode<ICFG> ICFGSingletonWTO;
46
49
  typedef WTOCycle<ICFG> ICFGCycleWTO;
@@ -33,11 +33,12 @@
33
33
  #ifndef SVF_NUMERICVALUE_H
34
34
  #define SVF_NUMERICVALUE_H
35
35
 
36
- #include "SVFIR/SVFType.h"
37
36
  #include <cfloat> // For DBL_MAX
38
37
  #include <cmath>
39
38
  #include <utility>
40
39
 
40
+ #include "Util/GeneralType.h"
41
+
41
42
  #define epsilon std::numeric_limits<double>::epsilon();
42
43
  namespace SVF
43
44
  {
@@ -32,6 +32,7 @@
32
32
 
33
33
  #include "AE/Core/AddressValue.h"
34
34
  #include "Util/Z3Expr.h"
35
+ #include "Util/GeneralType.h"
35
36
 
36
37
  namespace SVF
37
38
  {
@@ -30,11 +30,15 @@
30
30
  #ifndef Z3_EXAMPLE_RELATIONSOLVER_H
31
31
  #define Z3_EXAMPLE_RELATIONSOLVER_H
32
32
 
33
- #include "AE/Core/AbstractState.h"
33
+ #include "AE/Core/NumericValue.h"
34
34
  #include "Util/Z3Expr.h"
35
+ #include "Util/GeneralType.h"
35
36
 
36
37
  namespace SVF
37
38
  {
39
+
40
+ class AbstractState;
41
+
38
42
  class RelationSolver
39
43
  {
40
44
  public:
@@ -25,15 +25,21 @@
25
25
  // Author: Xiao Cheng, Jiawei Wang
26
26
  //
27
27
  #pragma once
28
+
29
+ #include <functional>
30
+
28
31
  #include "AE/Core/AbstractState.h"
29
- #include "AE/Core/ICFGWTO.h"
30
- #include "AE/Svfexe/AEDetector.h"
31
- #include "Util/SVFBugReport.h"
32
+ #include "AE/Core/IntervalValue.h"
33
+ #include "SVFIR/SVFIR.h"
34
+ #include "Util/GeneralType.h"
32
35
 
33
36
  namespace SVF
34
37
  {
35
38
 
36
39
  class AbstractInterpretation;
40
+ class AbstractState;
41
+ class CallICFGNode;
42
+ class ICFGNode;
37
43
 
38
44
  /**
39
45
  * @class AbsExtAPI
@@ -23,9 +23,11 @@
23
23
  #ifndef INCLUDE_AE_SVFEXE_SPARSEABSTRACTINTERPRETATION_H_
24
24
  #define INCLUDE_AE_SVFEXE_SPARSEABSTRACTINTERPRETATION_H_
25
25
 
26
- #include "AE/Svfexe/AbstractInterpretation.h"
27
26
  #include <memory>
28
27
 
28
+ #include "AE/Svfexe/AbstractInterpretation.h"
29
+ #include "MSSA/SVFGBuilder.h"
30
+
29
31
  namespace SVF
30
32
  {
31
33
 
@@ -31,6 +31,7 @@
31
31
  #define INCLUDE_CFL_CFGNORMALIZER_H_
32
32
 
33
33
  #include "CFGrammar.h"
34
+ #include "Util/GeneralType.h"
34
35
 
35
36
  namespace SVF
36
37
  {
@@ -81,4 +82,4 @@ private:
81
82
 
82
83
  } // End namespace SVF
83
84
 
84
- #endif /* INCLUDE_CFL_CFGNORMALIZER_H_*/
85
+ #endif /* INCLUDE_CFL_CFGNORMALIZER_H_*/
@@ -28,7 +28,11 @@
28
28
  */
29
29
  #ifndef CFLGrammar_H_
30
30
  #define CFLGrammar_H_
31
- #include "SVFIR/SVFType.h"
31
+
32
+ #include <deque>
33
+ #include <vector>
34
+
35
+ #include "Util/GeneralType.h"
32
36
 
33
37
  namespace SVF
34
38
  {
@@ -147,11 +151,11 @@ public:
147
151
  template<typename Key, typename Value, typename Hash = SymbolHash,
148
152
  typename KeyEqual = std::equal_to<Key>,
149
153
  typename Allocator = std::allocator<std::pair<const Key, Value>>>
150
- using SymbolMap = std::unordered_map<Key, Value, Hash, KeyEqual, Allocator>;
154
+ using SymbolMap = Map<Key, Value, Hash, KeyEqual, Allocator>;
151
155
 
152
156
  template <typename Key, typename Hash = SymbolVectorHash, typename KeyEqual = std::equal_to<Key>,
153
157
  typename Allocator = std::allocator<Key>>
154
- using SymbolSet = std::unordered_set<Key, Hash, KeyEqual, Allocator>;
158
+ using SymbolSet = Set<Key, Hash, KeyEqual, Allocator>;
155
159
 
156
160
  typedef std::vector<Symbol> Production;
157
161
  typedef SymbolSet<Production> Productions;
@@ -465,4 +469,4 @@ private:
465
469
  };
466
470
 
467
471
  }
468
- #endif /* CFLGrammar_H_ */
472
+ #endif /* CFLGrammar_H_ */
@@ -32,12 +32,13 @@
32
32
 
33
33
  #include "CFL/CFLBase.h"
34
34
  #include "CFL/CFLStat.h"
35
+ #include "MemoryModel/PTATY.h"
36
+ #include "SVFIR/SVFType.h"
37
+ #include "Util/GeneralType.h"
35
38
 
36
39
  namespace SVF
37
40
  {
38
41
 
39
- class CFLStat;
40
-
41
42
  class CFLAlias : public CFLBase
42
43
  {
43
44
 
@@ -31,21 +31,16 @@
31
31
  #define INCLUDE_CFL_CFLBASE_H_
32
32
 
33
33
  #include "CFL/CFLSolver.h"
34
- #include "CFL/CFGNormalizer.h"
35
- #include "CFL/GrammarBuilder.h"
36
- #include "CFL/CFLGraphBuilder.h"
37
- #include "CFL/CFLGramGraphChecker.h"
38
- #include "MemoryModel/PointerAnalysis.h"
34
+ #include "CFL/CFGrammar.h"
39
35
  #include "MemoryModel/PointerAnalysisImpl.h"
40
- #include "Graphs/ConsG.h"
41
- #include "Util/Options.h"
42
- #include "Util/PTAStat.h"
43
- #include "SVFIR/SVFType.h"
36
+ #include "MemoryModel/PTATY.h"
44
37
 
45
38
  namespace SVF
46
39
  {
47
40
 
41
+ class CFLGraph;
48
42
  class CFLStat;
43
+ class SVFIR;
49
44
 
50
45
  /// CFL Client Base Class
51
46
  class CFLBase : public BVDataPTAImpl
@@ -30,7 +30,9 @@
30
30
  #define INCLUDE_CFL_CFLGRAMGRAPHCHECKER_H_
31
31
 
32
32
  #include "CFL/CFGrammar.h"
33
+ #include "CFL/CFLGraphBuilder.h"
33
34
  #include "Graphs/CFLGraph.h"
35
+
34
36
  namespace SVF
35
37
  {
36
38
 
@@ -71,4 +73,4 @@ public:
71
73
 
72
74
  }// SVF
73
75
 
74
- #endif /* INCLUDE_CFL_CFLGRAMGRAPHCHECKER_H_*/
76
+ #endif /* INCLUDE_CFL_CFLGRAMGRAPHCHECKER_H_*/
@@ -33,6 +33,7 @@
33
33
  #include "CFL/CFGrammar.h"
34
34
  #include "Graphs/CFLGraph.h"
35
35
  #include "Graphs/SVFG.h"
36
+ #include "Util/GeneralType.h"
36
37
 
37
38
  namespace SVF
38
39
  {