svf-tools 1.0.798 → 1.0.800

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 (366) hide show
  1. package/SVF-doxygen/html/AccessPath_8cpp_source.html +145 -144
  2. package/SVF-doxygen/html/AccessPath_8h_source.html +6 -6
  3. package/SVF-doxygen/html/AndersenSCD_8cpp_source.html +1 -1
  4. package/SVF-doxygen/html/AndersenStat_8cpp_source.html +1 -1
  5. package/SVF-doxygen/html/AndersenWaveDiff_8cpp_source.html +1 -1
  6. package/SVF-doxygen/html/Andersen_8cpp_source.html +5 -5
  7. package/SVF-doxygen/html/CFLAlias_8cpp_source.html +4 -4
  8. package/SVF-doxygen/html/CFLAlias_8h_source.html +3 -3
  9. package/SVF-doxygen/html/CFLBase_8cpp_source.html +1 -1
  10. package/SVF-doxygen/html/CHGBuilder_8cpp_source.html +4 -4
  11. package/SVF-doxygen/html/ContextDDA_8cpp_source.html +5 -5
  12. package/SVF-doxygen/html/ContextDDA_8h_source.html +2 -2
  13. package/SVF-doxygen/html/DCHG_8cpp_source.html +1 -1
  14. package/SVF-doxygen/html/DDAClient_8cpp_source.html +4 -4
  15. package/SVF-doxygen/html/DDAPass_8cpp_source.html +2 -2
  16. package/SVF-doxygen/html/DDAPass_8h_source.html +1 -1
  17. package/SVF-doxygen/html/DDAStat_8cpp_source.html +1 -1
  18. package/SVF-doxygen/html/DDAVFSolver_8h_source.html +4 -4
  19. package/SVF-doxygen/html/FSMPTA_8cpp_source.html +3 -3
  20. package/SVF-doxygen/html/FlowDDA_8cpp_source.html +5 -5
  21. package/SVF-doxygen/html/FlowDDA_8h_source.html +2 -2
  22. package/SVF-doxygen/html/FlowSensitiveStat_8cpp_source.html +1 -1
  23. package/SVF-doxygen/html/FlowSensitive_8cpp_source.html +5 -5
  24. package/SVF-doxygen/html/ICFGBuilder_8cpp_source.html +2 -2
  25. package/SVF-doxygen/html/IRGraph_8cpp_source.html +2 -2
  26. package/SVF-doxygen/html/LLVMLoopAnalysis_8cpp_source.html +2 -2
  27. package/SVF-doxygen/html/LLVMModule_8cpp_source.html +177 -167
  28. package/SVF-doxygen/html/LLVMModule_8h_source.html +3 -3
  29. package/SVF-doxygen/html/LLVMUtil_8cpp_source.html +1 -1
  30. package/SVF-doxygen/html/LLVMUtil_8h_source.html +138 -135
  31. package/SVF-doxygen/html/LockAnalysis_8cpp_source.html +5 -5
  32. package/SVF-doxygen/html/LockAnalysis_8h_source.html +2 -2
  33. package/SVF-doxygen/html/MHP_8cpp_source.html +5 -5
  34. package/SVF-doxygen/html/MTAAnnotator_8cpp_source.html +2 -2
  35. package/SVF-doxygen/html/MTA_8cpp_source.html +5 -5
  36. package/SVF-doxygen/html/MemRegion_8cpp_source.html +7 -7
  37. package/SVF-doxygen/html/MemRegion_8h_source.html +1 -1
  38. package/SVF-doxygen/html/MemSSA_8cpp_source.html +3 -3
  39. package/SVF-doxygen/html/NodeIDAllocator_8cpp_source.html +2 -2
  40. package/SVF-doxygen/html/PCG_8cpp_source.html +2 -2
  41. package/SVF-doxygen/html/PointerAnalysisImpl_8cpp_source.html +3 -3
  42. package/SVF-doxygen/html/PointerAnalysisImpl_8h_source.html +4 -4
  43. package/SVF-doxygen/html/PointerAnalysis_8cpp_source.html +5 -5
  44. package/SVF-doxygen/html/PointerAnalysis_8h_source.html +1 -1
  45. package/SVF-doxygen/html/ProgSlice_8cpp_source.html +2 -2
  46. package/SVF-doxygen/html/SVFFileSystem_8cpp_source.html +6 -6
  47. package/SVF-doxygen/html/SVFFileSystem_8h_source.html +5 -5
  48. package/SVF-doxygen/html/SVFGBuilder_8cpp_source.html +2 -2
  49. package/SVF-doxygen/html/SVFGOPT_8cpp_source.html +2 -2
  50. package/SVF-doxygen/html/SVFGStat_8cpp_source.html +1 -1
  51. package/SVF-doxygen/html/SVFG_8cpp_source.html +2 -2
  52. package/SVF-doxygen/html/SVFIR2ItvExeState_8cpp_source.html +1 -1
  53. package/SVF-doxygen/html/SVFIRBuilder_8cpp_source.html +4 -4
  54. package/SVF-doxygen/html/SVFIRExtAPI_8cpp_source.html +1 -1
  55. package/SVF-doxygen/html/SVFStat_8cpp_source.html +1 -1
  56. package/SVF-doxygen/html/SVFStatements_8h_source.html +1 -1
  57. package/SVF-doxygen/html/SVFType_8cpp_source.html +7 -7
  58. package/SVF-doxygen/html/SVFType_8h.html +23 -23
  59. package/SVF-doxygen/html/SVFType_8h_source.html +340 -332
  60. package/SVF-doxygen/html/SVFValue_8cpp_source.html +1 -1
  61. package/SVF-doxygen/html/SVFValue_8h_source.html +2 -2
  62. package/SVF-doxygen/html/SaberCondAllocator_8cpp_source.html +3 -3
  63. package/SVF-doxygen/html/SaberSVFGBuilder_8cpp_source.html +2 -2
  64. package/SVF-doxygen/html/SrcSnkDDA_8cpp_source.html +3 -3
  65. package/SVF-doxygen/html/Steensgaard_8cpp_source.html +4 -4
  66. package/SVF-doxygen/html/SymbolTableBuilder_8cpp_source.html +5 -5
  67. package/SVF-doxygen/html/SymbolTableInfo_8cpp_source.html +4 -4
  68. package/SVF-doxygen/html/SymbolTableInfo_8h_source.html +1 -1
  69. package/SVF-doxygen/html/TCT_8cpp_source.html +2 -2
  70. package/SVF-doxygen/html/ThreadCallGraph_8cpp_source.html +2 -2
  71. package/SVF-doxygen/html/VFG_8cpp_source.html +2 -2
  72. package/SVF-doxygen/html/VersionedFlowSensitiveStat_8cpp_source.html +1 -1
  73. package/SVF-doxygen/html/VersionedFlowSensitive_8cpp_source.html +1 -1
  74. package/SVF-doxygen/html/WPAPass_8cpp_source.html +4 -4
  75. package/SVF-doxygen/html/WPAPass_8h_source.html +2 -2
  76. package/SVF-doxygen/html/classSVF_1_1AccessPath.html +131 -130
  77. package/SVF-doxygen/html/classSVF_1_1AliasDDAClient.html +1 -1
  78. package/SVF-doxygen/html/classSVF_1_1Andersen.html +4 -4
  79. package/SVF-doxygen/html/classSVF_1_1AndersenBase.html +2 -2
  80. package/SVF-doxygen/html/classSVF_1_1AndersenSCD.html +1 -1
  81. package/SVF-doxygen/html/classSVF_1_1AndersenStat.html +1 -1
  82. package/SVF-doxygen/html/classSVF_1_1AndersenWaveDiff.html +1 -1
  83. package/SVF-doxygen/html/classSVF_1_1BVDataPTAImpl.html +2 -2
  84. package/SVF-doxygen/html/classSVF_1_1CFLAlias.html +6 -6
  85. package/SVF-doxygen/html/classSVF_1_1CFLBase.html +1 -1
  86. package/SVF-doxygen/html/classSVF_1_1CHGBuilder.html +4 -4
  87. package/SVF-doxygen/html/classSVF_1_1CondPTAImpl.html +3 -3
  88. package/SVF-doxygen/html/classSVF_1_1ContextDDA.html +5 -5
  89. package/SVF-doxygen/html/classSVF_1_1DCHGraph.html +1 -1
  90. package/SVF-doxygen/html/classSVF_1_1DDAClient.html +3 -3
  91. package/SVF-doxygen/html/classSVF_1_1DDAPass.html +1 -1
  92. package/SVF-doxygen/html/classSVF_1_1DDAStat.html +1 -1
  93. package/SVF-doxygen/html/classSVF_1_1DDAVFSolver.html +4 -4
  94. package/SVF-doxygen/html/classSVF_1_1FlowDDA.html +5 -5
  95. package/SVF-doxygen/html/classSVF_1_1FlowSensitive.html +5 -5
  96. package/SVF-doxygen/html/classSVF_1_1FlowSensitiveStat.html +1 -1
  97. package/SVF-doxygen/html/classSVF_1_1ForkJoinAnalysis.html +2 -2
  98. package/SVF-doxygen/html/classSVF_1_1GepStmt.html +1 -1
  99. package/SVF-doxygen/html/classSVF_1_1ICFGBuilder.html +2 -2
  100. package/SVF-doxygen/html/classSVF_1_1IRGraph.html +2 -2
  101. package/SVF-doxygen/html/classSVF_1_1LLVMLoopAnalysis.html +2 -2
  102. package/SVF-doxygen/html/classSVF_1_1LLVMModuleSet.html +172 -162
  103. package/SVF-doxygen/html/classSVF_1_1LockAnalysis.html +5 -5
  104. package/SVF-doxygen/html/classSVF_1_1MHP.html +5 -5
  105. package/SVF-doxygen/html/classSVF_1_1MRGenerator.html +6 -6
  106. package/SVF-doxygen/html/classSVF_1_1MTA.html +5 -5
  107. package/SVF-doxygen/html/classSVF_1_1MTAAnnotator.html +2 -2
  108. package/SVF-doxygen/html/classSVF_1_1MTASVFGBuilder.html +3 -3
  109. package/SVF-doxygen/html/classSVF_1_1MemSSA.html +3 -3
  110. package/SVF-doxygen/html/classSVF_1_1MemSSAStat.html +1 -1
  111. package/SVF-doxygen/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +2 -2
  112. package/SVF-doxygen/html/classSVF_1_1PCG.html +2 -2
  113. package/SVF-doxygen/html/classSVF_1_1PointerAnalysis.html +5 -5
  114. package/SVF-doxygen/html/classSVF_1_1ProgSlice.html +2 -2
  115. package/SVF-doxygen/html/classSVF_1_1SVFArrayType.html +27 -27
  116. package/SVF-doxygen/html/classSVF_1_1SVFFunction.html +1 -1
  117. package/SVF-doxygen/html/classSVF_1_1SVFFunctionType.html +18 -18
  118. package/SVF-doxygen/html/classSVF_1_1SVFG.html +2 -2
  119. package/SVF-doxygen/html/classSVF_1_1SVFGBuilder.html +2 -2
  120. package/SVF-doxygen/html/classSVF_1_1SVFGOPT.html +2 -2
  121. package/SVF-doxygen/html/classSVF_1_1SVFGStat.html +1 -1
  122. package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState.html +1 -1
  123. package/SVF-doxygen/html/classSVF_1_1SVFIRBuilder.html +5 -5
  124. package/SVF-doxygen/html/classSVF_1_1SVFIntegerType.html +19 -19
  125. package/SVF-doxygen/html/classSVF_1_1SVFOtherType.html +23 -23
  126. package/SVF-doxygen/html/classSVF_1_1SVFPointerType-members.html +18 -17
  127. package/SVF-doxygen/html/classSVF_1_1SVFPointerType.html +49 -16
  128. package/SVF-doxygen/html/classSVF_1_1SVFStat.html +1 -1
  129. package/SVF-doxygen/html/classSVF_1_1SVFStructType.html +23 -23
  130. package/SVF-doxygen/html/classSVF_1_1SaberCondAllocator.html +3 -3
  131. package/SVF-doxygen/html/classSVF_1_1SaberSVFGBuilder.html +2 -2
  132. package/SVF-doxygen/html/classSVF_1_1SrcSnkDDA.html +3 -3
  133. package/SVF-doxygen/html/classSVF_1_1Steensgaard.html +4 -4
  134. package/SVF-doxygen/html/classSVF_1_1SymbolTableBuilder.html +5 -5
  135. package/SVF-doxygen/html/classSVF_1_1SymbolTableInfo.html +4 -4
  136. package/SVF-doxygen/html/classSVF_1_1TCT.html +2 -2
  137. package/SVF-doxygen/html/classSVF_1_1ThreadCallGraph.html +2 -2
  138. package/SVF-doxygen/html/classSVF_1_1VFG.html +2 -2
  139. package/SVF-doxygen/html/classSVF_1_1VersionedFlowSensitive.html +1 -1
  140. package/SVF-doxygen/html/classSVF_1_1VersionedFlowSensitiveStat.html +1 -1
  141. package/SVF-doxygen/html/classSVF_1_1WPAPass.html +3 -3
  142. package/SVF-doxygen/html/functions_func_s.html +23 -20
  143. package/SVF-doxygen/html/functions_l.html +5 -5
  144. package/SVF-doxygen/html/functions_n.html +3 -3
  145. package/SVF-doxygen/html/functions_o.html +10 -10
  146. package/SVF-doxygen/html/functions_p.html +9 -5
  147. package/SVF-doxygen/html/functions_r.html +5 -5
  148. package/SVF-doxygen/html/functions_s.html +19 -18
  149. package/SVF-doxygen/html/functions_t.html +3 -3
  150. package/SVF-doxygen/html/functions_v.html +3 -3
  151. package/SVF-doxygen/html/functions_w.html +1 -1
  152. package/SVF-doxygen/html/namespaceSVF.html +23 -23
  153. package/SVF-doxygen/html/namespaceSVF_1_1LLVMUtil.html +42 -39
  154. package/SVF-doxygen/html/search/all_10.js +3 -3
  155. package/SVF-doxygen/html/search/all_11.js +2 -2
  156. package/SVF-doxygen/html/search/all_12.js +396 -395
  157. package/SVF-doxygen/html/search/all_13.js +191 -191
  158. package/SVF-doxygen/html/search/all_14.js +67 -67
  159. package/SVF-doxygen/html/search/all_15.js +170 -170
  160. package/SVF-doxygen/html/search/all_16.js +63 -63
  161. package/SVF-doxygen/html/search/all_17.js +1 -1
  162. package/SVF-doxygen/html/search/all_18.js +1 -1
  163. package/SVF-doxygen/html/search/all_19.js +11 -11
  164. package/SVF-doxygen/html/search/all_1a.js +172 -172
  165. package/SVF-doxygen/html/search/all_9.js +1 -1
  166. package/SVF-doxygen/html/search/all_b.js +1 -1
  167. package/SVF-doxygen/html/search/all_c.js +4 -4
  168. package/SVF-doxygen/html/search/all_e.js +1 -1
  169. package/SVF-doxygen/html/search/all_f.js +4 -4
  170. package/SVF-doxygen/html/search/classes_0.js +26 -26
  171. package/SVF-doxygen/html/search/classes_1.js +9 -9
  172. package/SVF-doxygen/html/search/classes_10.js +73 -73
  173. package/SVF-doxygen/html/search/classes_11.js +15 -15
  174. package/SVF-doxygen/html/search/classes_12.js +2 -2
  175. package/SVF-doxygen/html/search/classes_13.js +10 -10
  176. package/SVF-doxygen/html/search/classes_14.js +14 -14
  177. package/SVF-doxygen/html/search/classes_15.js +1 -1
  178. package/SVF-doxygen/html/search/classes_2.js +80 -80
  179. package/SVF-doxygen/html/search/classes_3.js +37 -37
  180. package/SVF-doxygen/html/search/classes_4.js +9 -9
  181. package/SVF-doxygen/html/search/classes_5.js +28 -28
  182. package/SVF-doxygen/html/search/classes_6.js +104 -104
  183. package/SVF-doxygen/html/search/classes_7.js +33 -33
  184. package/SVF-doxygen/html/search/classes_8.js +56 -56
  185. package/SVF-doxygen/html/search/classes_9.js +1 -1
  186. package/SVF-doxygen/html/search/classes_a.js +12 -12
  187. package/SVF-doxygen/html/search/classes_b.js +29 -29
  188. package/SVF-doxygen/html/search/classes_c.js +6 -6
  189. package/SVF-doxygen/html/search/classes_d.js +18 -18
  190. package/SVF-doxygen/html/search/classes_e.js +36 -36
  191. package/SVF-doxygen/html/search/classes_f.js +25 -25
  192. package/SVF-doxygen/html/search/defines_0.js +3 -3
  193. package/SVF-doxygen/html/search/defines_1.js +2 -2
  194. package/SVF-doxygen/html/search/defines_2.js +30 -30
  195. package/SVF-doxygen/html/search/defines_3.js +21 -21
  196. package/SVF-doxygen/html/search/defines_4.js +2 -2
  197. package/SVF-doxygen/html/search/defines_5.js +4 -4
  198. package/SVF-doxygen/html/search/defines_6.js +2 -2
  199. package/SVF-doxygen/html/search/defines_7.js +5 -5
  200. package/SVF-doxygen/html/search/defines_8.js +11 -11
  201. package/SVF-doxygen/html/search/defines_9.js +9 -9
  202. package/SVF-doxygen/html/search/defines_a.js +2 -2
  203. package/SVF-doxygen/html/search/defines_b.js +1 -1
  204. package/SVF-doxygen/html/search/defines_c.js +3 -3
  205. package/SVF-doxygen/html/search/defines_d.js +2 -2
  206. package/SVF-doxygen/html/search/defines_e.js +7 -7
  207. package/SVF-doxygen/html/search/defines_f.js +3 -3
  208. package/SVF-doxygen/html/search/enums_0.js +3 -3
  209. package/SVF-doxygen/html/search/enums_1.js +2 -2
  210. package/SVF-doxygen/html/search/enums_10.js +1 -1
  211. package/SVF-doxygen/html/search/enums_11.js +1 -1
  212. package/SVF-doxygen/html/search/enums_2.js +8 -8
  213. package/SVF-doxygen/html/search/enums_3.js +1 -1
  214. package/SVF-doxygen/html/search/enums_4.js +3 -3
  215. package/SVF-doxygen/html/search/enums_5.js +1 -1
  216. package/SVF-doxygen/html/search/enums_6.js +2 -2
  217. package/SVF-doxygen/html/search/enums_7.js +2 -2
  218. package/SVF-doxygen/html/search/enums_8.js +4 -4
  219. package/SVF-doxygen/html/search/enums_9.js +1 -1
  220. package/SVF-doxygen/html/search/enums_a.js +1 -1
  221. package/SVF-doxygen/html/search/enums_b.js +7 -7
  222. package/SVF-doxygen/html/search/enums_c.js +1 -1
  223. package/SVF-doxygen/html/search/enums_d.js +4 -4
  224. package/SVF-doxygen/html/search/enums_e.js +2 -2
  225. package/SVF-doxygen/html/search/enums_f.js +4 -4
  226. package/SVF-doxygen/html/search/enumvalues_0.js +14 -14
  227. package/SVF-doxygen/html/search/enumvalues_1.js +14 -14
  228. package/SVF-doxygen/html/search/enumvalues_10.js +35 -35
  229. package/SVF-doxygen/html/search/enumvalues_11.js +3 -3
  230. package/SVF-doxygen/html/search/enumvalues_12.js +10 -10
  231. package/SVF-doxygen/html/search/enumvalues_13.js +1 -1
  232. package/SVF-doxygen/html/search/enumvalues_14.js +1 -1
  233. package/SVF-doxygen/html/search/enumvalues_15.js +3 -3
  234. package/SVF-doxygen/html/search/enumvalues_2.js +36 -36
  235. package/SVF-doxygen/html/search/enumvalues_3.js +13 -13
  236. package/SVF-doxygen/html/search/enumvalues_4.js +2 -2
  237. package/SVF-doxygen/html/search/enumvalues_5.js +47 -47
  238. package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
  239. package/SVF-doxygen/html/search/enumvalues_7.js +9 -9
  240. package/SVF-doxygen/html/search/enumvalues_8.js +23 -23
  241. package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
  242. package/SVF-doxygen/html/search/enumvalues_a.js +15 -15
  243. package/SVF-doxygen/html/search/enumvalues_b.js +11 -11
  244. package/SVF-doxygen/html/search/enumvalues_c.js +5 -5
  245. package/SVF-doxygen/html/search/enumvalues_d.js +18 -18
  246. package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
  247. package/SVF-doxygen/html/search/enumvalues_f.js +45 -45
  248. package/SVF-doxygen/html/search/files_0.js +13 -13
  249. package/SVF-doxygen/html/search/files_1.js +7 -7
  250. package/SVF-doxygen/html/search/files_10.js +8 -8
  251. package/SVF-doxygen/html/search/files_11.js +8 -8
  252. package/SVF-doxygen/html/search/files_12.js +2 -2
  253. package/SVF-doxygen/html/search/files_2.js +55 -55
  254. package/SVF-doxygen/html/search/files_3.js +14 -14
  255. package/SVF-doxygen/html/search/files_4.js +5 -5
  256. package/SVF-doxygen/html/search/files_5.js +13 -13
  257. package/SVF-doxygen/html/search/files_6.js +9 -9
  258. package/SVF-doxygen/html/search/files_7.js +14 -14
  259. package/SVF-doxygen/html/search/files_8.js +13 -13
  260. package/SVF-doxygen/html/search/files_9.js +18 -18
  261. package/SVF-doxygen/html/search/files_a.js +3 -3
  262. package/SVF-doxygen/html/search/files_b.js +2 -2
  263. package/SVF-doxygen/html/search/files_c.js +20 -20
  264. package/SVF-doxygen/html/search/files_d.js +4 -4
  265. package/SVF-doxygen/html/search/files_e.js +62 -62
  266. package/SVF-doxygen/html/search/files_f.js +8 -8
  267. package/SVF-doxygen/html/search/functions_0.js +12 -12
  268. package/SVF-doxygen/html/search/functions_1.js +359 -359
  269. package/SVF-doxygen/html/search/functions_10.js +140 -140
  270. package/SVF-doxygen/html/search/functions_11.js +138 -138
  271. package/SVF-doxygen/html/search/functions_12.js +277 -276
  272. package/SVF-doxygen/html/search/functions_13.js +59 -59
  273. package/SVF-doxygen/html/search/functions_14.js +39 -39
  274. package/SVF-doxygen/html/search/functions_15.js +71 -71
  275. package/SVF-doxygen/html/search/functions_16.js +32 -32
  276. package/SVF-doxygen/html/search/functions_17.js +3 -3
  277. package/SVF-doxygen/html/search/functions_18.js +172 -172
  278. package/SVF-doxygen/html/search/functions_2.js +86 -86
  279. package/SVF-doxygen/html/search/functions_3.js +257 -257
  280. package/SVF-doxygen/html/search/functions_4.js +75 -75
  281. package/SVF-doxygen/html/search/functions_5.js +53 -53
  282. package/SVF-doxygen/html/search/functions_6.js +59 -59
  283. package/SVF-doxygen/html/search/functions_7.js +851 -851
  284. package/SVF-doxygen/html/search/functions_8.js +146 -146
  285. package/SVF-doxygen/html/search/functions_9.js +428 -428
  286. package/SVF-doxygen/html/search/functions_a.js +30 -30
  287. package/SVF-doxygen/html/search/functions_b.js +2 -2
  288. package/SVF-doxygen/html/search/functions_c.js +26 -26
  289. package/SVF-doxygen/html/search/functions_d.js +77 -77
  290. package/SVF-doxygen/html/search/functions_e.js +35 -35
  291. package/SVF-doxygen/html/search/functions_f.js +56 -56
  292. package/SVF-doxygen/html/search/namespaces_0.js +1 -1
  293. package/SVF-doxygen/html/search/namespaces_1.js +7 -7
  294. package/SVF-doxygen/html/search/related_0.js +2 -2
  295. package/SVF-doxygen/html/search/related_1.js +2 -2
  296. package/SVF-doxygen/html/search/related_2.js +2 -2
  297. package/SVF-doxygen/html/search/related_3.js +2 -2
  298. package/SVF-doxygen/html/search/related_4.js +2 -2
  299. package/SVF-doxygen/html/search/related_5.js +1 -1
  300. package/SVF-doxygen/html/search/related_6.js +2 -2
  301. package/SVF-doxygen/html/search/related_7.js +4 -4
  302. package/SVF-doxygen/html/search/related_8.js +2 -2
  303. package/SVF-doxygen/html/search/related_9.js +4 -4
  304. package/SVF-doxygen/html/search/related_a.js +19 -19
  305. package/SVF-doxygen/html/search/related_b.js +4 -4
  306. package/SVF-doxygen/html/search/related_c.js +1 -1
  307. package/SVF-doxygen/html/search/related_d.js +11 -11
  308. package/SVF-doxygen/html/search/related_e.js +2 -2
  309. package/SVF-doxygen/html/search/related_f.js +2 -2
  310. package/SVF-doxygen/html/search/typedefs_0.js +18 -18
  311. package/SVF-doxygen/html/search/typedefs_1.js +26 -26
  312. package/SVF-doxygen/html/search/typedefs_10.js +61 -61
  313. package/SVF-doxygen/html/search/typedefs_11.js +13 -13
  314. package/SVF-doxygen/html/search/typedefs_12.js +11 -11
  315. package/SVF-doxygen/html/search/typedefs_13.js +35 -35
  316. package/SVF-doxygen/html/search/typedefs_14.js +8 -8
  317. package/SVF-doxygen/html/search/typedefs_2.js +129 -129
  318. package/SVF-doxygen/html/search/typedefs_3.js +39 -39
  319. package/SVF-doxygen/html/search/typedefs_4.js +17 -17
  320. package/SVF-doxygen/html/search/typedefs_5.js +41 -41
  321. package/SVF-doxygen/html/search/typedefs_6.js +55 -55
  322. package/SVF-doxygen/html/search/typedefs_7.js +42 -42
  323. package/SVF-doxygen/html/search/typedefs_8.js +1 -1
  324. package/SVF-doxygen/html/search/typedefs_9.js +6 -6
  325. package/SVF-doxygen/html/search/typedefs_a.js +29 -29
  326. package/SVF-doxygen/html/search/typedefs_b.js +29 -29
  327. package/SVF-doxygen/html/search/typedefs_c.js +41 -41
  328. package/SVF-doxygen/html/search/typedefs_d.js +15 -15
  329. package/SVF-doxygen/html/search/typedefs_e.js +52 -52
  330. package/SVF-doxygen/html/search/typedefs_f.js +14 -14
  331. package/SVF-doxygen/html/search/variables_0.js +151 -151
  332. package/SVF-doxygen/html/search/variables_1.js +75 -75
  333. package/SVF-doxygen/html/search/variables_10.js +97 -97
  334. package/SVF-doxygen/html/search/variables_11.js +46 -46
  335. package/SVF-doxygen/html/search/variables_12.js +92 -92
  336. package/SVF-doxygen/html/search/variables_13.js +75 -75
  337. package/SVF-doxygen/html/search/variables_14.js +14 -14
  338. package/SVF-doxygen/html/search/variables_15.js +48 -48
  339. package/SVF-doxygen/html/search/variables_16.js +9 -9
  340. package/SVF-doxygen/html/search/variables_17.js +1 -1
  341. package/SVF-doxygen/html/search/variables_18.js +2 -2
  342. package/SVF-doxygen/html/search/variables_2.js +37 -37
  343. package/SVF-doxygen/html/search/variables_3.js +142 -142
  344. package/SVF-doxygen/html/search/variables_4.js +55 -55
  345. package/SVF-doxygen/html/search/variables_5.js +39 -39
  346. package/SVF-doxygen/html/search/variables_6.js +66 -66
  347. package/SVF-doxygen/html/search/variables_7.js +33 -33
  348. package/SVF-doxygen/html/search/variables_8.js +7 -7
  349. package/SVF-doxygen/html/search/variables_9.js +77 -77
  350. package/SVF-doxygen/html/search/variables_a.js +4 -4
  351. package/SVF-doxygen/html/search/variables_b.js +10 -10
  352. package/SVF-doxygen/html/search/variables_c.js +45 -45
  353. package/SVF-doxygen/html/search/variables_d.js +56 -56
  354. package/SVF-doxygen/html/search/variables_e.js +123 -123
  355. package/SVF-doxygen/html/search/variables_f.js +30 -30
  356. package/SVF-doxygen/html/structSVF_1_1Hash_3_01NodePair_01_4.html +11 -11
  357. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1NodePair_01_4.html +11 -11
  358. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1SparseBitVector_3_01N_01_4_01_4.html +7 -7
  359. package/SVF-doxygen/html/structstd_1_1hash_3_01std_1_1vector_3_01T_01_4_01_4.html +14 -14
  360. package/SVF-doxygen/html/svf-ex_8cpp_source.html +1 -1
  361. package/package.json +1 -1
  362. package/svf/include/SVFIR/SVFType.h +9 -2
  363. package/svf/lib/MemoryModel/AccessPath.cpp +5 -4
  364. package/svf/lib/SVFIR/SVFFileSystem.cpp +1 -1
  365. package/svf-llvm/include/SVF-LLVM/LLVMUtil.h +7 -4
  366. package/svf-llvm/lib/LLVMModule.cpp +11 -2
@@ -358,7 +358,7 @@ $(function() {
358
358
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a4dfb43679e9fa794ebad99b6584c32ec"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a4dfb43679e9fa794ebad99b6584c32ec">SVF::PointerAnalysis::getPts</a></div><div class="ttdeci">virtual const PointsTo &amp; getPts(NodeID ptr)=0</div><div class="ttdoc">Get points-to targets of a pointer. It needs to be implemented in child class.</div></div>
359
359
  <div class="ttc" id="aclassSVF_1_1SVFIRBuilder_html"><div class="ttname"><a href="classSVF_1_1SVFIRBuilder.html">SVF::SVFIRBuilder</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFIRBuilder_8h_source.html#l00046">SVFIRBuilder.h:46</a></div></div>
360
360
  <div class="ttc" id="aclassSVF_1_1SVFIR2ItvExeState_html_aed2e41879bae8389c49e69356b7aaac5"><div class="ttname"><a href="classSVF_1_1SVFIR2ItvExeState.html#aed2e41879bae8389c49e69356b7aaac5">SVF::SVFIR2ItvExeState::translateStore</a></div><div class="ttdeci">void translateStore(const StoreStmt *store)</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2ItvExeState_8cpp_source.html#l00800">SVFIR2ItvExeState.cpp:800</a></div></div>
361
- <div class="ttc" id="anamespaceSVF_html_a61c01e2e687ab3a001fb806737583943"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">SVF::AliasResult</a></div><div class="ttdeci">AliasResult</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00604">SVFType.h:604</a></div></div>
361
+ <div class="ttc" id="anamespaceSVF_html_a61c01e2e687ab3a001fb806737583943"><div class="ttname"><a href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">SVF::AliasResult</a></div><div class="ttdeci">AliasResult</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00611">SVFType.h:611</a></div></div>
362
362
  <div class="ttc" id="aclassSVF_1_1SVFStmt_html"><div class="ttname"><a href="classSVF_1_1SVFStmt.html">SVF::SVFStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00051">SVFStatements.h:51</a></div></div>
363
363
  <div class="ttc" id="aclassSVF_1_1VFGNode_html"><div class="ttname"><a href="classSVF_1_1VFGNode.html">SVF::VFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="VFGNode_8h_source.html#l00046">VFGNode.h:46</a></div></div>
364
364
  <div class="ttc" id="asvf-ex_8cpp_html_a985b6c880c7922538046c6a1fa987829"><div class="ttname"><a href="svf-ex_8cpp.html#a985b6c880c7922538046c6a1fa987829">printPts</a></div><div class="ttdeci">std::string printPts(PointerAnalysis *pta, SVFValue *val)</div><div class="ttdef"><b>Definition:</b> <a href="svf-ex_8cpp_source.html#l00051">svf-ex.cpp:51</a></div></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-tools",
3
- "version": "1.0.798",
3
+ "version": "1.0.800",
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": {
@@ -350,19 +350,26 @@ private:
350
350
  const SVFType* ptrElementType;
351
351
 
352
352
  public:
353
- SVFPointerType(const SVFType* pty)
354
- : SVFType(true, SVFPointerTy), ptrElementType(pty)
353
+ SVFPointerType()
354
+ : SVFType(true, SVFPointerTy), ptrElementType(nullptr)
355
355
  {
356
356
  }
357
+
357
358
  static inline bool classof(const SVFType* node)
358
359
  {
359
360
  return node->getKind() == SVFPointerTy;
360
361
  }
361
362
  inline const SVFType* getPtrElementType() const
362
363
  {
364
+ assert(ptrElementType && "ptrElementType is nullptr");
363
365
  return ptrElementType;
364
366
  }
365
367
 
368
+ inline void setPtrElementType(SVFType* _ptrElementType)
369
+ {
370
+ ptrElementType = _ptrElementType;
371
+ }
372
+
366
373
  void print(std::ostream& os) const override;
367
374
  };
368
375
 
@@ -129,12 +129,13 @@ APOffset AccessPath::computeConstantByteOffset() const
129
129
  if (const SVFStructType* structType = SVFUtil::dyn_cast<SVFStructType>(type))
130
130
  {
131
131
  /// for (1) structType: %struct.DEST
132
- /// structField = 0, type2: int
133
- /// structField = 1, type2: char[10]
134
- /// structField = 2, type2: int[5]
132
+ /// structField = 0, flattenIdx = 0, type2: int
133
+ /// structField = 1, flattenIdx = 1, type2: char[10]
134
+ /// structField = 2, flattenIdx = 11, type2: int[5]
135
135
  for (u32_t structField = 0; structField < (u32_t)op->getSExtValue(); ++structField)
136
136
  {
137
- type2 = structType->getTypeInfo()->getOriginalElemType(structField);
137
+ u32_t flattenIdx = structType->getTypeInfo()->getFlattenedFieldIdxVec()[structField];
138
+ type2 = structType->getTypeInfo()->getOriginalElemType(flattenIdx);
138
139
  totalConstOffset += type2->getLLVMByteSize();
139
140
  }
140
141
  }
@@ -24,7 +24,7 @@ SVFType* createSVFType(SVFType::GNodeK kind, bool isSingleValTy)
24
24
  ABORT_MSG("Creation of RAW SVFType isn't allowed");
25
25
  case SVFType::SVFPointerTy:
26
26
  ABORT_IFNOT(isSingleValTy, "Pointer type must be single-valued");
27
- return new SVFPointerType(nullptr);
27
+ return new SVFPointerType();
28
28
  case SVFType::SVFIntegerTy:
29
29
  ABORT_IFNOT(isSingleValTy, "Integer type must be single-valued");
30
30
  return new SVFIntegerType();
@@ -119,7 +119,7 @@ inline bool isNullPtrSym(const Value* val)
119
119
  static inline Type* getPtrElementType(const PointerType* pty)
120
120
  {
121
121
  #if (LLVM_VERSION_MAJOR < 14)
122
- return pty->getElementType();
122
+ return pty->getPointerElementType();
123
123
  #else
124
124
  assert(!pty->isOpaque() && "Opaque Pointer is used, please recompile the source adding '-Xclang -no-opaque-pointers'");
125
125
  return pty->getNonOpaquePointerElementType();
@@ -384,11 +384,14 @@ void removeUnusedFuncsAndAnnotationsAndGlobalVariables(std::vector<Function*> re
384
384
  inline u32_t SVFType2ByteSize(const SVFType* type)
385
385
  {
386
386
  const llvm::Type* llvm_rhs = LLVMModuleSet::getLLVMModuleSet()->getLLVMType(type);
387
- u32_t llvm_rhs_size = LLVMUtil::getTypeSizeInBytes(llvm_rhs->getPointerElementType());
387
+ const llvm::PointerType* llvm_rhs_ptr = SVFUtil::dyn_cast<PointerType>(llvm_rhs);
388
+ assert(llvm_rhs_ptr && "not a pointer type?");
389
+ const Type *ptrElementType = getPtrElementType(llvm_rhs_ptr);
390
+ u32_t llvm_rhs_size = LLVMUtil::getTypeSizeInBytes(ptrElementType);
388
391
  u32_t llvm_elem_size = -1;
389
- if (llvm_rhs->getPointerElementType()->isArrayTy() && llvm_rhs_size > 0)
392
+ if (ptrElementType->isArrayTy() && llvm_rhs_size > 0)
390
393
  {
391
- size_t array_len = llvm_rhs->getPointerElementType()->getArrayNumElements();
394
+ size_t array_len = ptrElementType->getArrayNumElements();
392
395
  llvm_elem_size = llvm_rhs_size / array_len;
393
396
  }
394
397
  else
@@ -1253,8 +1253,10 @@ SVFType* LLVMModuleSet::addSVFTypeInfo(const Type* T)
1253
1253
  "SVFType has been added before");
1254
1254
 
1255
1255
  SVFType* svftype;
1256
- if (const PointerType* pt = SVFUtil::dyn_cast<PointerType>(T))
1257
- svftype = new SVFPointerType(getSVFType(LLVMUtil::getPtrElementType(pt)));
1256
+ if (SVFUtil::isa<PointerType>(T))
1257
+ {
1258
+ svftype = new SVFPointerType();
1259
+ }
1258
1260
  else if (const IntegerType* intT = SVFUtil::dyn_cast<IntegerType>(T))
1259
1261
  {
1260
1262
  auto svfIntT = new SVFIntegerType();
@@ -1290,6 +1292,13 @@ SVFType* LLVMModuleSet::addSVFTypeInfo(const Type* T)
1290
1292
 
1291
1293
  symInfo->addTypeInfo(svftype);
1292
1294
  LLVMType2SVFType[T] = svftype;
1295
+ if (const PointerType* pt = SVFUtil::dyn_cast<PointerType>(T))
1296
+ {
1297
+ //cast svftype to SVFPointerType
1298
+ SVFPointerType* svfPtrType = SVFUtil::dyn_cast<SVFPointerType>(svftype);
1299
+ assert(svfPtrType && "this is not SVFPointerType");
1300
+ svfPtrType->setPtrElementType(getSVFType(LLVMUtil::getPtrElementType(pt)));
1301
+ }
1293
1302
  return svftype;
1294
1303
  }
1295
1304