svf-tools 1.0.553 → 1.0.554

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 (347) hide show
  1. package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +1 -1
  2. package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +1 -1
  3. package/SVF-doxygen/html/html/Andersen_8cpp_source.html +7 -7
  4. package/SVF-doxygen/html/html/Andersen_8h_source.html +2 -2
  5. package/SVF-doxygen/html/html/Annotator_8h_source.html +1 -1
  6. package/SVF-doxygen/html/html/BreakConstantExpr_8cpp.html +1 -1
  7. package/SVF-doxygen/html/html/BreakConstantExpr_8cpp_source.html +3 -3
  8. package/SVF-doxygen/html/html/BreakConstantExpr_8h_source.html +1 -1
  9. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +8 -8
  10. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +2 -2
  11. package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +1 -1
  12. package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +18 -18
  13. package/SVF-doxygen/html/html/CHGBuilder_8h.html +1 -0
  14. package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +11 -10
  15. package/SVF-doxygen/html/html/CHG_8cpp.html +2 -2
  16. package/SVF-doxygen/html/html/CHG_8cpp_source.html +8 -8
  17. package/SVF-doxygen/html/html/CHG_8h_source.html +3 -3
  18. package/SVF-doxygen/html/html/CPPUtil_8cpp_source.html +17 -17
  19. package/SVF-doxygen/html/html/CPPUtil_8h_source.html +1 -1
  20. package/SVF-doxygen/html/html/CallGraphBuilder_8cpp_source.html +4 -4
  21. package/SVF-doxygen/html/html/ConditionalPT_8h_source.html +1 -1
  22. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +1 -1
  23. package/SVF-doxygen/html/html/ConsG_8h_source.html +1 -1
  24. package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +2 -2
  25. package/SVF-doxygen/html/html/ContextDDA_8h_source.html +1 -1
  26. package/SVF-doxygen/html/html/CoreBitVector_8cpp_source.html +1 -1
  27. package/SVF-doxygen/html/html/CxtStmt_8h_source.html +3 -3
  28. package/SVF-doxygen/html/html/DCHG_8cpp.html +2 -2
  29. package/SVF-doxygen/html/html/DCHG_8cpp_source.html +38 -35
  30. package/SVF-doxygen/html/html/DCHG_8h_source.html +9 -10
  31. package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +11 -14
  32. package/SVF-doxygen/html/html/DDAPass_8h_source.html +12 -13
  33. package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +1 -1
  34. package/SVF-doxygen/html/html/DPItem_8h_source.html +2 -2
  35. package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +5 -5
  36. package/SVF-doxygen/html/html/DataFlowUtil_8h_source.html +7 -7
  37. package/SVF-doxygen/html/html/DoubleFreeChecker_8cpp_source.html +2 -2
  38. package/SVF-doxygen/html/html/DoubleFreeChecker_8h_source.html +1 -1
  39. package/SVF-doxygen/html/html/ExeState_8cpp_source.html +3 -3
  40. package/SVF-doxygen/html/html/ExtAPI_8cpp_source.html +3 -3
  41. package/SVF-doxygen/html/html/ExtAPI_8h_source.html +1 -1
  42. package/SVF-doxygen/html/html/FileChecker_8h_source.html +1 -1
  43. package/SVF-doxygen/html/html/FlowDDA_8cpp_source.html +1 -1
  44. package/SVF-doxygen/html/html/FlowDDA_8h_source.html +1 -1
  45. package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +1 -1
  46. package/SVF-doxygen/html/html/FlowSensitive_8cpp_source.html +1 -1
  47. package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +1 -1
  48. package/SVF-doxygen/html/html/Graph2Json_8cpp_source.html +1 -1
  49. package/SVF-doxygen/html/html/ICFGBuilder_8cpp_source.html +9 -9
  50. package/SVF-doxygen/html/html/ICFGBuilder_8h_source.html +1 -1
  51. package/SVF-doxygen/html/html/ICFGNode_8h_source.html +2 -2
  52. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +5 -5
  53. package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
  54. package/SVF-doxygen/html/html/IRAnnotator_8h_source.html +5 -5
  55. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +1 -1
  56. package/SVF-doxygen/html/html/IRGraph_8h_source.html +2 -2
  57. package/SVF-doxygen/html/html/LLVMLoopAnalysis_8cpp_source.html +3 -3
  58. package/SVF-doxygen/html/html/LLVMModule_8cpp_source.html +12 -12
  59. package/SVF-doxygen/html/html/LLVMModule_8h_source.html +20 -18
  60. package/SVF-doxygen/html/html/LLVMUtil_8cpp_source.html +27 -27
  61. package/SVF-doxygen/html/html/LLVMUtil_8h_source.html +17 -17
  62. package/SVF-doxygen/html/html/LeakChecker_8cpp_source.html +2 -2
  63. package/SVF-doxygen/html/html/LeakChecker_8h_source.html +1 -1
  64. package/SVF-doxygen/html/html/LocationSet_8cpp_source.html +3 -3
  65. package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +7 -7
  66. package/SVF-doxygen/html/html/LockAnalysis_8h_source.html +1 -1
  67. package/SVF-doxygen/html/html/LockResultValidator_8cpp_source.html +10 -10
  68. package/SVF-doxygen/html/html/LockResultValidator_8h_source.html +1 -1
  69. package/SVF-doxygen/html/html/MHP_8cpp.html +2 -2
  70. package/SVF-doxygen/html/html/MHP_8cpp_source.html +11 -11
  71. package/SVF-doxygen/html/html/MHP_8h_source.html +3 -3
  72. package/SVF-doxygen/html/html/MSSAMuChi_8h_source.html +1 -1
  73. package/SVF-doxygen/html/html/MTAAnnotator_8cpp_source.html +5 -5
  74. package/SVF-doxygen/html/html/MTAAnnotator_8h_source.html +3 -3
  75. package/SVF-doxygen/html/html/MTAResultValidator_8cpp_source.html +12 -12
  76. package/SVF-doxygen/html/html/MTAResultValidator_8h_source.html +4 -4
  77. package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +4 -4
  78. package/SVF-doxygen/html/html/MTA_8cpp_source.html +4 -4
  79. package/SVF-doxygen/html/html/MTA_8h_source.html +3 -3
  80. package/SVF-doxygen/html/html/MemPartition_8cpp_source.html +1 -1
  81. package/SVF-doxygen/html/html/MemPartition_8h_source.html +1 -1
  82. package/SVF-doxygen/html/html/MemRegion_8cpp_source.html +6 -6
  83. package/SVF-doxygen/html/html/MemRegion_8h_source.html +1 -1
  84. package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +10 -10
  85. package/SVF-doxygen/html/html/MemSSA_8h_source.html +3 -3
  86. package/SVF-doxygen/html/html/MutablePointsToDS_8h_source.html +2 -2
  87. package/SVF-doxygen/html/html/PCG_8cpp_source.html +6 -6
  88. package/SVF-doxygen/html/html/PCG_8h_source.html +1 -1
  89. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +6 -6
  90. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
  91. package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +1 -1
  92. package/SVF-doxygen/html/html/PersistentPointsToDS_8h_source.html +2 -2
  93. package/SVF-doxygen/html/html/PointerAnalysisImpl_8cpp_source.html +2 -2
  94. package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +11 -11
  95. package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
  96. package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +1 -1
  97. package/SVF-doxygen/html/html/ProgSlice_8cpp_source.html +1 -1
  98. package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h.html +2 -0
  99. package/SVF-doxygen/html/html/SVF-FE_2BasicTypes_8h_source.html +110 -109
  100. package/SVF-doxygen/html/html/SVFGBuilder_8cpp_source.html +4 -4
  101. package/SVF-doxygen/html/html/SVFGBuilder_8h_source.html +2 -2
  102. package/SVF-doxygen/html/html/SVFGNode_8h_source.html +1 -1
  103. package/SVF-doxygen/html/html/SVFGOPT_8h_source.html +1 -1
  104. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +4 -4
  105. package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
  106. package/SVF-doxygen/html/html/SVFIRBuilder_8cpp_source.html +60 -60
  107. package/SVF-doxygen/html/html/SVFIRBuilder_8h_source.html +40 -40
  108. package/SVF-doxygen/html/html/SVFIR_8h_source.html +1 -1
  109. package/SVF-doxygen/html/html/SVFModule_8h_source.html +4 -4
  110. package/SVF-doxygen/html/html/SVFStatements_8cpp_source.html +1 -1
  111. package/SVF-doxygen/html/html/SVFUtil_8cpp_source.html +9 -9
  112. package/SVF-doxygen/html/html/SVFUtil_8h_source.html +49 -52
  113. package/SVF-doxygen/html/html/SVFVariables_8cpp_source.html +2 -2
  114. package/SVF-doxygen/html/html/SVFVariables_8h_source.html +2 -2
  115. package/SVF-doxygen/html/html/SaberAnnotator_8cpp_source.html +2 -2
  116. package/SVF-doxygen/html/html/SaberCheckerAPI_8h_source.html +2 -2
  117. package/SVF-doxygen/html/html/SaberCondAllocator_8cpp_source.html +10 -10
  118. package/SVF-doxygen/html/html/SaberCondAllocator_8h_source.html +4 -4
  119. package/SVF-doxygen/html/html/SaberSVFGBuilder_8cpp_source.html +1 -1
  120. package/SVF-doxygen/html/html/SparseBitVector_8h_source.html +1 -1
  121. package/SVF-doxygen/html/html/SrcSnkDDA_8h_source.html +1 -1
  122. package/SVF-doxygen/html/html/SymbolTableBuilder_8cpp_source.html +34 -34
  123. package/SVF-doxygen/html/html/SymbolTableBuilder_8h_source.html +1 -1
  124. package/SVF-doxygen/html/html/SymbolTableInfo_8cpp_source.html +5 -5
  125. package/SVF-doxygen/html/html/SymbolTableInfo_8h_source.html +5 -5
  126. package/SVF-doxygen/html/html/TCT_8cpp_source.html +12 -12
  127. package/SVF-doxygen/html/html/TCT_8h_source.html +8 -8
  128. package/SVF-doxygen/html/html/ThreadAPI_8cpp_source.html +4 -4
  129. package/SVF-doxygen/html/html/ThreadAPI_8h_source.html +4 -4
  130. package/SVF-doxygen/html/html/ThreadCallGraph_8cpp_source.html +2 -2
  131. package/SVF-doxygen/html/html/ThreadCallGraph_8h_source.html +2 -2
  132. package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
  133. package/SVF-doxygen/html/html/Util_2BasicTypes_8h.html +0 -2
  134. package/SVF-doxygen/html/html/Util_2BasicTypes_8h_source.html +79 -80
  135. package/SVF-doxygen/html/html/VFGNode_8h_source.html +1 -1
  136. package/SVF-doxygen/html/html/VFG_8cpp_source.html +3 -3
  137. package/SVF-doxygen/html/html/VFG_8h_source.html +1 -1
  138. package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +1 -1
  139. package/SVF-doxygen/html/html/WPAPass_8cpp_source.html +9 -12
  140. package/SVF-doxygen/html/html/WPAPass_8h_source.html +10 -11
  141. package/SVF-doxygen/html/html/classSVF_1_1ActualINSVFGNode.html +1 -1
  142. package/SVF-doxygen/html/html/classSVF_1_1ActualOUTSVFGNode.html +1 -1
  143. package/SVF-doxygen/html/html/classSVF_1_1ActualParmVFGNode.html +1 -1
  144. package/SVF-doxygen/html/html/classSVF_1_1ActualRetVFGNode.html +1 -1
  145. package/SVF-doxygen/html/html/classSVF_1_1AddrStmt.html +1 -1
  146. package/SVF-doxygen/html/html/classSVF_1_1AddrVFGNode.html +1 -1
  147. package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +7 -7
  148. package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +1 -1
  149. package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +1 -1
  150. package/SVF-doxygen/html/html/classSVF_1_1Annotator.html +1 -1
  151. package/SVF-doxygen/html/html/classSVF_1_1ArgumentVFGNode.html +1 -1
  152. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +2 -2
  153. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPStmt.html +1 -1
  154. package/SVF-doxygen/html/html/classSVF_1_1BinaryOPVFGNode.html +1 -1
  155. package/SVF-doxygen/html/html/classSVF_1_1BranchStmt.html +1 -1
  156. package/SVF-doxygen/html/html/classSVF_1_1BranchVFGNode.html +1 -1
  157. package/SVF-doxygen/html/html/classSVF_1_1BreakConstantGEPs.html +2 -2
  158. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +8 -8
  159. package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +50 -50
  160. package/SVF-doxygen/html/html/classSVF_1_1CHGraph.html +6 -6
  161. package/SVF-doxygen/html/html/classSVF_1_1CallCFGEdge.html +1 -1
  162. package/SVF-doxygen/html/html/classSVF_1_1CallDirSVFGEdge.html +1 -1
  163. package/SVF-doxygen/html/html/classSVF_1_1CallGraphBuilder.html +3 -3
  164. package/SVF-doxygen/html/html/classSVF_1_1CallICFGNode.html +2 -2
  165. package/SVF-doxygen/html/html/classSVF_1_1CallIndSVFGEdge.html +1 -1
  166. package/SVF-doxygen/html/html/classSVF_1_1CallPE.html +1 -1
  167. package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +41 -41
  168. package/SVF-doxygen/html/html/classSVF_1_1CmpStmt.html +1 -1
  169. package/SVF-doxygen/html/html/classSVF_1_1CmpVFGNode.html +1 -1
  170. package/SVF-doxygen/html/html/classSVF_1_1CondStdSet.html +1 -1
  171. package/SVF-doxygen/html/html/classSVF_1_1CondVar.html +1 -1
  172. package/SVF-doxygen/html/html/classSVF_1_1ContextCond.html +3 -3
  173. package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +4 -4
  174. package/SVF-doxygen/html/html/classSVF_1_1CopyStmt.html +1 -1
  175. package/SVF-doxygen/html/html/classSVF_1_1CopyVFGNode.html +1 -1
  176. package/SVF-doxygen/html/html/classSVF_1_1CoreBitVector.html +2 -2
  177. package/SVF-doxygen/html/html/classSVF_1_1CxtDPItem.html +2 -2
  178. package/SVF-doxygen/html/html/classSVF_1_1CxtProc.html +1 -1
  179. package/SVF-doxygen/html/html/classSVF_1_1CxtStmt.html +1 -1
  180. package/SVF-doxygen/html/html/classSVF_1_1CxtThread.html +1 -1
  181. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph-members.html +1 -1
  182. package/SVF-doxygen/html/html/classSVF_1_1DCHGraph.html +114 -111
  183. package/SVF-doxygen/html/html/classSVF_1_1DDAPass-members.html +5 -6
  184. package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +42 -79
  185. package/SVF-doxygen/html/html/classSVF_1_1DirectSVFGEdge.html +1 -1
  186. package/SVF-doxygen/html/html/classSVF_1_1DistinctMRG.html +1 -1
  187. package/SVF-doxygen/html/html/classSVF_1_1DoubleFreeChecker.html +2 -2
  188. package/SVF-doxygen/html/html/classSVF_1_1DummyObjVar.html +1 -1
  189. package/SVF-doxygen/html/html/classSVF_1_1DummyValVar.html +1 -1
  190. package/SVF-doxygen/html/html/classSVF_1_1ExeState.html +5 -5
  191. package/SVF-doxygen/html/html/classSVF_1_1ExtAPI.html +3 -3
  192. package/SVF-doxygen/html/html/classSVF_1_1FIObjVar.html +1 -1
  193. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +2 -2
  194. package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +1 -1
  195. package/SVF-doxygen/html/html/classSVF_1_1ForkJoinAnalysis.html +12 -12
  196. package/SVF-doxygen/html/html/classSVF_1_1FormalINSVFGNode.html +1 -1
  197. package/SVF-doxygen/html/html/classSVF_1_1FormalOUTSVFGNode.html +1 -1
  198. package/SVF-doxygen/html/html/classSVF_1_1FormalParmVFGNode.html +1 -1
  199. package/SVF-doxygen/html/html/classSVF_1_1FormalRetVFGNode.html +1 -1
  200. package/SVF-doxygen/html/html/classSVF_1_1FunEntryICFGNode.html +3 -3
  201. package/SVF-doxygen/html/html/classSVF_1_1FunExitICFGNode.html +4 -4
  202. package/SVF-doxygen/html/html/classSVF_1_1GepObjVar.html +1 -1
  203. package/SVF-doxygen/html/html/classSVF_1_1GepStmt.html +1 -1
  204. package/SVF-doxygen/html/html/classSVF_1_1GepVFGNode.html +1 -1
  205. package/SVF-doxygen/html/html/classSVF_1_1GepValVar.html +1 -1
  206. package/SVF-doxygen/html/html/classSVF_1_1GlobalICFGNode.html +1 -1
  207. package/SVF-doxygen/html/html/classSVF_1_1ICFG.html +2 -2
  208. package/SVF-doxygen/html/html/classSVF_1_1ICFGBuilder.html +13 -13
  209. package/SVF-doxygen/html/html/classSVF_1_1ICFGEdge.html +1 -1
  210. package/SVF-doxygen/html/html/classSVF_1_1ICFGNode.html +1 -1
  211. package/SVF-doxygen/html/html/classSVF_1_1ICFGPrinter.html +1 -1
  212. package/SVF-doxygen/html/html/classSVF_1_1IRAnnotator.html +1 -1
  213. package/SVF-doxygen/html/html/classSVF_1_1IndirectSVFGEdge.html +1 -1
  214. package/SVF-doxygen/html/html/classSVF_1_1InterDisjointMRG.html +1 -1
  215. package/SVF-doxygen/html/html/classSVF_1_1InterMSSAPHISVFGNode.html +1 -1
  216. package/SVF-doxygen/html/html/classSVF_1_1InterPHIVFGNode.html +1 -1
  217. package/SVF-doxygen/html/html/classSVF_1_1IntraCFGEdge.html +1 -1
  218. package/SVF-doxygen/html/html/classSVF_1_1IntraDirSVFGEdge.html +1 -1
  219. package/SVF-doxygen/html/html/classSVF_1_1IntraDisjointMRG.html +1 -1
  220. package/SVF-doxygen/html/html/classSVF_1_1IntraICFGNode.html +1 -1
  221. package/SVF-doxygen/html/html/classSVF_1_1IntraIndSVFGEdge.html +1 -1
  222. package/SVF-doxygen/html/html/classSVF_1_1IntraMSSAPHISVFGNode.html +1 -1
  223. package/SVF-doxygen/html/html/classSVF_1_1IntraPHIVFGNode.html +1 -1
  224. package/SVF-doxygen/html/html/classSVF_1_1IteratedDominanceFrontier.html +2 -2
  225. package/SVF-doxygen/html/html/classSVF_1_1LLVMLoopAnalysis.html +3 -3
  226. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet-members.html +20 -19
  227. package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +95 -54
  228. package/SVF-doxygen/html/html/classSVF_1_1LeakChecker.html +4 -4
  229. package/SVF-doxygen/html/html/classSVF_1_1LoadStmt.html +1 -1
  230. package/SVF-doxygen/html/html/classSVF_1_1LoadVFGNode.html +1 -1
  231. package/SVF-doxygen/html/html/classSVF_1_1LocationSet.html +4 -4
  232. package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +20 -20
  233. package/SVF-doxygen/html/html/classSVF_1_1LockResultValidator.html +9 -9
  234. package/SVF-doxygen/html/html/classSVF_1_1MHP.html +19 -19
  235. package/SVF-doxygen/html/html/classSVF_1_1MRGenerator.html +12 -12
  236. package/SVF-doxygen/html/html/classSVF_1_1MRSVFGNode.html +1 -1
  237. package/SVF-doxygen/html/html/classSVF_1_1MSSAPHISVFGNode.html +1 -1
  238. package/SVF-doxygen/html/html/classSVF_1_1MTA.html +4 -4
  239. package/SVF-doxygen/html/html/classSVF_1_1MTAAnnotator.html +10 -10
  240. package/SVF-doxygen/html/html/classSVF_1_1MTAResultValidator.html +15 -15
  241. package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +4 -4
  242. package/SVF-doxygen/html/html/classSVF_1_1MemObj.html +1 -1
  243. package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +13 -13
  244. package/SVF-doxygen/html/html/classSVF_1_1MemSSADF.html +1 -1
  245. package/SVF-doxygen/html/html/classSVF_1_1MutablePTData.html +2 -2
  246. package/SVF-doxygen/html/html/classSVF_1_1NullPtrVFGNode.html +1 -1
  247. package/SVF-doxygen/html/html/classSVF_1_1ObjVar.html +1 -1
  248. package/SVF-doxygen/html/html/classSVF_1_1PCG.html +11 -11
  249. package/SVF-doxygen/html/html/classSVF_1_1PHIVFGNode.html +1 -1
  250. package/SVF-doxygen/html/html/classSVF_1_1PTACFInfoBuilder.html +4 -4
  251. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraph.html +1 -1
  252. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphEdge.html +4 -4
  253. package/SVF-doxygen/html/html/classSVF_1_1PTACallGraphNode.html +2 -2
  254. package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +1 -1
  255. package/SVF-doxygen/html/html/classSVF_1_1PersistentIncDFPTData.html +2 -2
  256. package/SVF-doxygen/html/html/classSVF_1_1PersistentPTData.html +2 -2
  257. package/SVF-doxygen/html/html/classSVF_1_1PhiStmt.html +1 -1
  258. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +16 -16
  259. package/SVF-doxygen/html/html/classSVF_1_1PointsTo.html +3 -3
  260. package/SVF-doxygen/html/html/classSVF_1_1PointsTo_1_1PointsToIterator.html +2 -2
  261. package/SVF-doxygen/html/html/classSVF_1_1ProgSlice.html +1 -1
  262. package/SVF-doxygen/html/html/classSVF_1_1RaceResultValidator.html +4 -4
  263. package/SVF-doxygen/html/html/classSVF_1_1RetCFGEdge.html +1 -1
  264. package/SVF-doxygen/html/html/classSVF_1_1RetDirSVFGEdge.html +1 -1
  265. package/SVF-doxygen/html/html/classSVF_1_1RetICFGNode.html +1 -1
  266. package/SVF-doxygen/html/html/classSVF_1_1RetIndSVFGEdge.html +1 -1
  267. package/SVF-doxygen/html/html/classSVF_1_1RetPE.html +1 -1
  268. package/SVF-doxygen/html/html/classSVF_1_1RetPN.html +1 -1
  269. package/SVF-doxygen/html/html/classSVF_1_1SVFBasicBlock.html +3 -3
  270. package/SVF-doxygen/html/html/classSVF_1_1SVFFunction.html +61 -61
  271. package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +3 -3
  272. package/SVF-doxygen/html/html/classSVF_1_1SVFGBuilder.html +4 -4
  273. package/SVF-doxygen/html/html/classSVF_1_1SVFGlobal.html +3 -3
  274. package/SVF-doxygen/html/html/classSVF_1_1SVFIRBuilder.html +79 -79
  275. package/SVF-doxygen/html/html/classSVF_1_1SVFStmt.html +1 -1
  276. package/SVF-doxygen/html/html/classSVF_1_1SVFVar.html +3 -3
  277. package/SVF-doxygen/html/html/classSVF_1_1SaberAnnotator.html +5 -5
  278. package/SVF-doxygen/html/html/classSVF_1_1SaberCheckerAPI.html +4 -4
  279. package/SVF-doxygen/html/html/classSVF_1_1SaberCondAllocator.html +14 -14
  280. package/SVF-doxygen/html/html/classSVF_1_1SaberSVFGBuilder.html +1 -1
  281. package/SVF-doxygen/html/html/classSVF_1_1SelectStmt.html +1 -1
  282. package/SVF-doxygen/html/html/classSVF_1_1SparseBitVector.html +2 -2
  283. package/SVF-doxygen/html/html/classSVF_1_1StmtVFGNode.html +1 -1
  284. package/SVF-doxygen/html/html/classSVF_1_1StoreStmt.html +1 -1
  285. package/SVF-doxygen/html/html/classSVF_1_1StoreVFGNode.html +1 -1
  286. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableBuilder.html +40 -40
  287. package/SVF-doxygen/html/html/classSVF_1_1SymbolTableInfo.html +8 -8
  288. package/SVF-doxygen/html/html/classSVF_1_1TCT.html +19 -19
  289. package/SVF-doxygen/html/html/classSVF_1_1TDForkPE.html +1 -1
  290. package/SVF-doxygen/html/html/classSVF_1_1TDJoinPE.html +1 -1
  291. package/SVF-doxygen/html/html/classSVF_1_1ThreadAPI.html +4 -4
  292. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraph.html +4 -4
  293. package/SVF-doxygen/html/html/classSVF_1_1ThreadCallGraphBuilder.html +1 -1
  294. package/SVF-doxygen/html/html/classSVF_1_1ThreadForkEdge.html +1 -1
  295. package/SVF-doxygen/html/html/classSVF_1_1ThreadJoinEdge.html +1 -1
  296. package/SVF-doxygen/html/html/classSVF_1_1ThreadMHPIndSVFGEdge.html +1 -1
  297. package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
  298. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPStmt.html +1 -1
  299. package/SVF-doxygen/html/html/classSVF_1_1UnaryOPVFGNode.html +1 -1
  300. package/SVF-doxygen/html/html/classSVF_1_1VFG.html +4 -4
  301. package/SVF-doxygen/html/html/classSVF_1_1VFGEdge.html +1 -1
  302. package/SVF-doxygen/html/html/classSVF_1_1VFGNode.html +1 -1
  303. package/SVF-doxygen/html/html/classSVF_1_1ValVar.html +1 -1
  304. package/SVF-doxygen/html/html/classSVF_1_1VarArgPN.html +1 -1
  305. package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +1 -1
  306. package/SVF-doxygen/html/html/classSVF_1_1WPAPass-members.html +4 -5
  307. package/SVF-doxygen/html/html/classSVF_1_1WPAPass.html +28 -66
  308. package/SVF-doxygen/html/html/functions_b.html +1 -1
  309. package/SVF-doxygen/html/html/functions_func_b.html +1 -1
  310. package/SVF-doxygen/html/html/functions_func_g.html +6 -6
  311. package/SVF-doxygen/html/html/functions_func_r.html +3 -3
  312. package/SVF-doxygen/html/html/functions_g.html +7 -7
  313. package/SVF-doxygen/html/html/functions_r.html +2 -4
  314. package/SVF-doxygen/html/html/namespaceSVF.html +141 -141
  315. package/SVF-doxygen/html/html/namespaceSVF_1_1LLVMUtil.html +49 -49
  316. package/SVF-doxygen/html/html/namespaceSVF_1_1SVFUtil.html +168 -171
  317. package/SVF-doxygen/html/html/namespaceSVF_1_1cppUtil.html +28 -28
  318. package/SVF-doxygen/html/html/search/all_11.js +1 -1
  319. package/SVF-doxygen/html/html/search/all_13.js +1 -1
  320. package/SVF-doxygen/html/html/search/all_2.js +1 -1
  321. package/SVF-doxygen/html/html/search/all_7.js +1 -1
  322. package/SVF-doxygen/html/html/search/functions_1.js +1 -1
  323. package/SVF-doxygen/html/html/search/functions_10.js +1 -1
  324. package/SVF-doxygen/html/html/search/functions_6.js +1 -1
  325. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01CFLGraph_01_5_01_4.html +3 -3
  326. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ConstraintGraph_01_5_01_4.html +1 -1
  327. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01ICFG_01_5_01_4.html +2 -2
  328. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +1 -1
  329. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01PTACallGraph_01_5_01_4.html +3 -3
  330. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01SVFG_01_5_01_4.html +4 -4
  331. package/SVF-doxygen/html/html/structllvm_1_1DOTGraphTraits_3_01VFG_01_5_01_4.html +4 -4
  332. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CallSite_01_4.html +3 -3
  333. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1CxtProc_01_4.html +1 -1
  334. package/SVF-doxygen/html/html/svf-ex_8cpp.html +1 -1
  335. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  336. package/include/DDA/DDAPass.h +0 -3
  337. package/include/SVF-FE/BasicTypes.h +1 -0
  338. package/include/SVF-FE/CHGBuilder.h +1 -0
  339. package/include/SVF-FE/DCHG.h +1 -1
  340. package/include/SVF-FE/LLVMModule.h +17 -0
  341. package/include/Util/BasicTypes.h +0 -1
  342. package/include/Util/SVFUtil.h +1 -13
  343. package/include/WPA/WPAPass.h +0 -3
  344. package/lib/DDA/DDAPass.cpp +0 -7
  345. package/lib/SVF-FE/DCHG.cpp +4 -7
  346. package/lib/WPA/WPAPass.cpp +0 -10
  347. package/package.json +1 -1
@@ -86,7 +86,7 @@ struct std::hash&lt; SVF::CallSite &gt;</h3>
86
86
 
87
87
  <p>Specialise hash for CallSites. </p>
88
88
 
89
- <p class="definition">Definition at line <a class="el" href="Util_2BasicTypes_8h_source.html#l00342">342</a> of file <a class="el" href="Util_2BasicTypes_8h_source.html">BasicTypes.h</a>.</p>
89
+ <p class="definition">Definition at line <a class="el" href="Util_2BasicTypes_8h_source.html#l00341">341</a> of file <a class="el" href="Util_2BasicTypes_8h_source.html">BasicTypes.h</a>.</p>
90
90
  </div><h2 class="groupheader">Member Function Documentation</h2>
91
91
  <a id="a6ed3f621cd155faae27cbd844338409a"></a>
92
92
  <h2 class="memtitle"><span class="permalink"><a href="#a6ed3f621cd155faae27cbd844338409a">&#9670;&nbsp;</a></span>operator()()</h2>
@@ -112,8 +112,8 @@ struct std::hash&lt; SVF::CallSite &gt;</h3>
112
112
  </table>
113
113
  </div><div class="memdoc">
114
114
 
115
- <p class="definition">Definition at line <a class="el" href="Util_2BasicTypes_8h_source.html#l00344">344</a> of file <a class="el" href="Util_2BasicTypes_8h_source.html">BasicTypes.h</a>.</p>
116
- <div class="fragment"><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; {</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; std::hash&lt;SVF::Instruction *&gt; h;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">return</span> h(cs.<a class="code" href="classSVF_1_1CallSite.html#ab36a6a35eea673d4bdca615efc4336b1">getInstruction</a>());</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; }</div><div class="ttc" id="classSVF_1_1CallSite_html_ab36a6a35eea673d4bdca615efc4336b1"><div class="ttname"><a href="classSVF_1_1CallSite.html#ab36a6a35eea673d4bdca615efc4336b1">SVF::CallSite::getInstruction</a></div><div class="ttdeci">CallBase * getInstruction() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00259">BasicTypes.h:259</a></div></div>
115
+ <p class="definition">Definition at line <a class="el" href="Util_2BasicTypes_8h_source.html#l00343">343</a> of file <a class="el" href="Util_2BasicTypes_8h_source.html">BasicTypes.h</a>.</p>
116
+ <div class="fragment"><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; {</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; std::hash&lt;SVF::Instruction *&gt; h;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">return</span> h(cs.<a class="code" href="classSVF_1_1CallSite.html#ab36a6a35eea673d4bdca615efc4336b1">getInstruction</a>());</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; }</div><div class="ttc" id="classSVF_1_1CallSite_html_ab36a6a35eea673d4bdca615efc4336b1"><div class="ttname"><a href="classSVF_1_1CallSite.html#ab36a6a35eea673d4bdca615efc4336b1">SVF::CallSite::getInstruction</a></div><div class="ttdeci">CallBase * getInstruction() const</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00258">BasicTypes.h:258</a></div></div>
117
117
  </div><!-- fragment -->
118
118
  </div>
119
119
  </div>
@@ -109,7 +109,7 @@ struct std::hash&lt; SVF::CxtProc &gt;</h3>
109
109
  </div><div class="memdoc">
110
110
 
111
111
  <p class="definition">Definition at line <a class="el" href="CxtStmt_8h_source.html#l00493">493</a> of file <a class="el" href="CxtStmt_8h_source.html">CxtStmt.h</a>.</p>
112
- <div class="fragment"><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; {</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; std::hash&lt;SVF::SVFFunction*&gt; h;</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <a class="code" href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a>* fun = <span class="keyword">const_cast&lt;</span><a class="code" href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a>*<span class="keyword">&gt;</span> (cs.<a class="code" href="classSVF_1_1CxtProc.html#ab9ac6459c90873b7dea35e0a22700189">getProc</a>());</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keywordflow">return</span> h(fun);</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00126">BasicTypes.h:126</a></div></div>
112
+ <div class="fragment"><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; {</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; std::hash&lt;SVF::SVFFunction*&gt; h;</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <a class="code" href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a>* fun = <span class="keyword">const_cast&lt;</span><a class="code" href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a>*<span class="keyword">&gt;</span> (cs.<a class="code" href="classSVF_1_1CxtProc.html#ab9ac6459c90873b7dea35e0a22700189">getProc</a>());</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keywordflow">return</span> h(fun);</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; }</div><div class="ttc" id="classSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00125">BasicTypes.h:125</a></div></div>
113
113
  <div class="ttc" id="classSVF_1_1CxtProc_html_ab9ac6459c90873b7dea35e0a22700189"><div class="ttname"><a href="classSVF_1_1CxtProc.html#ab9ac6459c90873b7dea35e0a22700189">SVF::CxtProc::getProc</a></div><div class="ttdeci">const SVFFunction * getProc() const</div><div class="ttdoc">Return current procedure. </div><div class="ttdef"><b>Definition:</b> <a href="CxtStmt_8h_source.html#l00325">CxtStmt.h:325</a></div></div>
114
114
  </div><!-- fragment -->
115
115
  </div>
@@ -262,7 +262,7 @@ Functions</h2></td></tr>
262
262
  <div class="ttc" id="classSVF_1_1SVFVar_html"><div class="ttname"><a href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00045">SVFVariables.h:45</a></div></div>
263
263
  <div class="ttc" id="classSVF_1_1IRGraph_html_abffddd41cc308b9b3bd5ad4a7f8f1624"><div class="ttname"><a href="classSVF_1_1IRGraph.html#abffddd41cc308b9b3bd5ad4a7f8f1624">SVF::IRGraph::getValueNode</a></div><div class="ttdeci">NodeID getValueNode(const Value *V)</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00124">IRGraph.h:124</a></div></div>
264
264
  <div class="ttc" id="classSVF_1_1PointsTo_html_aa53962e561399bf493d1f2b9137356f6"><div class="ttname"><a href="classSVF_1_1PointsTo.html#aa53962e561399bf493d1f2b9137356f6">SVF::PointsTo::begin</a></div><div class="ttdeci">const_iterator begin(void) const</div><div class="ttdef"><b>Definition:</b> <a href="PointsTo_8h_source.html#l00128">PointsTo.h:128</a></div></div>
265
- <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
265
+ <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
266
266
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00201">PointerAnalysis.h:201</a></div></div>
267
267
  <div class="ttc" id="classSVF_1_1SVFVar_html_a1ace69053c2c4436fd78d5624bd0086a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a1ace69053c2c4436fd78d5624bd0086a">SVF::SVFVar::hasValue</a></div><div class="ttdeci">bool hasValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00107">SVFVariables.h:107</a></div></div>
268
268
  <div class="ttc" id="classSVF_1_1SVFVar_html_afaa33caa8d2a306f6741d9d066243e40"><div class="ttname"><a href="classSVF_1_1SVFVar.html#afaa33caa8d2a306f6741d9d066243e40">SVF::SVFVar::getValue</a></div><div class="ttdeci">const Value * getValue() const</div><div class="ttdoc">Get/has methods of the components. </div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00091">SVFVariables.h:91</a></div></div>
@@ -98,7 +98,7 @@ $(function() {
98
98
  <div class="ttc" id="namespaceSVF_html_a7875172ff434b2210eea7cecfbbd959e"><div class="ttname"><a href="namespaceSVF.html#a7875172ff434b2210eea7cecfbbd959e">SVF::Instruction</a></div><div class="ttdeci">llvm::Instruction Instruction</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00073">BasicTypes.h:73</a></div></div>
99
99
  <div class="ttc" id="classSVF_1_1LLVMModuleSet_html_a2f8e91c075d90be66412a079fe73e936"><div class="ttname"><a href="classSVF_1_1LLVMModuleSet.html#a2f8e91c075d90be66412a079fe73e936">SVF::LLVMModuleSet::releaseLLVMModuleSet</a></div><div class="ttdeci">static void releaseLLVMModuleSet()</div><div class="ttdef"><b>Definition:</b> <a href="LLVMModule_8h_source.html#l00077">LLVMModule.h:77</a></div></div>
100
100
  <div class="ttc" id="classSVF_1_1PTACallGraph_html"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html">SVF::PTACallGraph</a></div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00218">PTACallGraph.h:218</a></div></div>
101
- <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00083">BasicTypes.h:83</a></div></div>
101
+ <div class="ttc" id="namespaceSVF_html_a726981481ac082dcda3e4921416b65a0"><div class="ttname"><a href="namespaceSVF.html#a726981481ac082dcda3e4921416b65a0">SVF::raw_string_ostream</a></div><div class="ttdeci">llvm::raw_string_ostream raw_string_ostream</div><div class="ttdoc">LLVM outputs. </div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00082">BasicTypes.h:82</a></div></div>
102
102
  <div class="ttc" id="classSVF_1_1PointerAnalysis_html_a240219c2dc4f5cc5f85445e18c79b83b"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">SVF::PointerAnalysis::getPAG</a></div><div class="ttdeci">SVFIR * getPAG() const</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00201">PointerAnalysis.h:201</a></div></div>
103
103
  <div class="ttc" id="classSVF_1_1SVFVar_html_a1ace69053c2c4436fd78d5624bd0086a"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a1ace69053c2c4436fd78d5624bd0086a">SVF::SVFVar::hasValue</a></div><div class="ttdeci">bool hasValue() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00107">SVFVariables.h:107</a></div></div>
104
104
  <div class="ttc" id="classSVF_1_1ICFG_html_a5f2c0aaba07d6fdd63058da0fb60ca8b"><div class="ttname"><a href="classSVF_1_1ICFG.html#a5f2c0aaba07d6fdd63058da0fb60ca8b">SVF::ICFG::getICFGNode</a></div><div class="ttdeci">ICFGNode * getICFGNode(NodeID id) const</div><div class="ttdoc">Get a ICFG node. </div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00087">ICFG.h:87</a></div></div>
@@ -43,9 +43,6 @@ public:
43
43
  /// We start from here
44
44
  virtual void runOnModule(SVFModule* module);
45
45
 
46
- /// We start from here
47
- virtual bool runOnModule(Module& module);
48
-
49
46
  /// Select a client
50
47
  virtual void selectClient(SVFModule* module);
51
48
 
@@ -38,6 +38,7 @@ typedef llvm::UnifyFunctionExitNodesLegacyPass UnifyFunctionExitNodes;
38
38
  typedef llvm::UnifyFunctionExitNodes UnifyFunctionExitNodes;
39
39
  #endif
40
40
 
41
+ typedef llvm::Module Module;
41
42
 
42
43
  typedef llvm::SMDiagnostic SMDiagnostic;
43
44
 
@@ -28,6 +28,7 @@
28
28
  */
29
29
 
30
30
  #include "Graphs/CHG.h"
31
+ #include "SVF-FE/BasicTypes.h"
31
32
 
32
33
  namespace SVF
33
34
  {
@@ -386,7 +386,7 @@ private:
386
386
  void handleDISubroutineType(const DISubroutineType *subroutineType);
387
387
 
388
388
  /// Finds all defined virtual functions and attaches them to nodes.
389
- void buildVTables(const Module &module);
389
+ void buildVTables(const SVFModule &module);
390
390
 
391
391
  /// Returns a set of all children of type (CHA). Also gradually builds chaMap.
392
392
  const NodeBS &cha(const DIType *type, bool firstField);
@@ -116,6 +116,23 @@ public:
116
116
  return svfModule->getSVFFunction(fun);
117
117
  }
118
118
 
119
+ /// Get the corresponding Function based on its name
120
+ inline const SVFFunction *getSVFFunction(std::string name)
121
+ {
122
+ Function *fun = nullptr;
123
+
124
+ for (u32_t i = 0; i < llvmModuleSet->getModuleNum(); ++i)
125
+ {
126
+ Module *mod = llvmModuleSet->getModule(i);
127
+ fun = mod->getFunction(name);
128
+ if (fun)
129
+ {
130
+ return llvmModuleSet->getSVFFunction(fun);
131
+ }
132
+ }
133
+ return nullptr;
134
+ }
135
+
119
136
  /// Fun decl --> def
120
137
  bool hasDefinition(const Function *fun) const
121
138
  {
@@ -74,7 +74,6 @@ typedef llvm::Instruction Instruction;
74
74
  typedef llvm::CallBase CallBase;
75
75
  typedef llvm::GlobalValue GlobalValue;
76
76
  typedef llvm::GlobalVariable GlobalVariable;
77
- typedef llvm::Module Module;
78
77
  typedef llvm::User User;
79
78
  typedef llvm::Loop Loop;
80
79
  typedef llvm::LoopInfo LoopInfo;
@@ -224,19 +224,7 @@ inline CallSite getLLVMCallSite(const Instruction* inst)
224
224
  /// Get the corresponding Function based on its name
225
225
  inline const SVFFunction* getFunction(std::string name)
226
226
  {
227
- Function* fun = nullptr;
228
- LLVMModuleSet* llvmModuleset = LLVMModuleSet::getLLVMModuleSet();
229
-
230
- for (u32_t i = 0; i < llvmModuleset->getModuleNum(); ++i)
231
- {
232
- Module *mod = llvmModuleset->getModule(i);
233
- fun = mod->getFunction(name);
234
- if(fun)
235
- {
236
- return llvmModuleset->getSVFFunction(fun);
237
- }
238
- }
239
- return nullptr;
227
+ return LLVMModuleSet::getLLVMModuleSet()->getSVFFunction(name);
240
228
  }
241
229
 
242
230
  /// Split into two substrings around the first occurrence of a separator string.
@@ -99,9 +99,6 @@ public:
99
99
  /// Run pointer analysis on SVFModule
100
100
  virtual void runOnModule(SVFModule* svfModule);
101
101
 
102
- /// Run pointer analysis on LLVM module
103
- virtual bool runOnModule(Module& module);
104
-
105
102
  /// PTA name
106
103
  virtual inline std::string getPassName() const
107
104
  {
@@ -44,13 +44,6 @@ void DDAPass::runOnModule(SVFModule* module)
44
44
  }
45
45
  }
46
46
 
47
- bool DDAPass::runOnModule(Module& module)
48
- {
49
- SVFModule* svfModule = LLVMModuleSet::getLLVMModuleSet()->buildSVFModule(module);
50
- runOnModule(svfModule);
51
- return false;
52
- }
53
-
54
47
  /// select a client to initialize queries
55
48
  void DDAPass::selectClient(SVFModule* module)
56
49
  {
@@ -163,12 +163,12 @@ void DCHGraph::handleTypedef(const DIType *typedefType)
163
163
  }
164
164
  }
165
165
 
166
- void DCHGraph::buildVTables(const Module &module)
166
+ void DCHGraph::buildVTables(const SVFModule &module)
167
167
  {
168
- for (Module::const_global_iterator gvI = module.global_begin(); gvI != module.global_end(); ++gvI)
168
+ for (SVFModule::const_global_iterator gvI = module.global_begin(); gvI != module.global_end(); ++gvI)
169
169
  {
170
170
  // Though this will return more than GlobalVariables, we only care about GlobalVariables (for the vtbls).
171
- const GlobalVariable *gv = SVFUtil::dyn_cast<const GlobalVariable>(&(*gvI));
171
+ const GlobalVariable *gv = SVFUtil::dyn_cast<const GlobalVariable>(*gvI);
172
172
  if (gv == nullptr) continue;
173
173
  if (gv->hasMetadata(cppUtil::ctir::vtMDName) && gv->getNumOperands() > 0)
174
174
  {
@@ -507,10 +507,7 @@ void DCHGraph::buildCHG(bool extend)
507
507
  }
508
508
  }
509
509
 
510
- for (u32_t i = 0; i < LLVMModuleSet::getLLVMModuleSet()->getModuleNum(); ++i)
511
- {
512
- buildVTables(*(LLVMModuleSet::getLLVMModuleSet()->getModule(i)));
513
- }
510
+ buildVTables(*(LLVMModuleSet::getLLVMModuleSet()->getSVFModule()));
514
511
 
515
512
  // Build the void/char/everything else relation.
516
513
  if (extended && charType != nullptr)
@@ -77,16 +77,6 @@ void WPAPass::runOnModule(SVFModule* svfModule)
77
77
  assert(!ptaVector.empty() && "No pointer analysis is specified.\n");
78
78
  }
79
79
 
80
- /*!
81
- * We start from here
82
- */
83
- bool WPAPass::runOnModule(Module& module)
84
- {
85
- SVFModule* svfModule = LLVMModuleSet::getLLVMModuleSet()->buildSVFModule(module);
86
- runOnModule(svfModule);
87
- return false;
88
- }
89
-
90
80
  /*!
91
81
  * Create pointer analysis according to a specified kind and then analyze the module.
92
82
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-tools",
3
- "version": "1.0.553",
3
+ "version": "1.0.554",
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": {