svf-tools 1.0.905 → 1.0.906

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 (394) hide show
  1. package/SVF-doxygen/html/AbstractInterpretation_8cpp.html +217 -0
  2. package/SVF-doxygen/html/AbstractInterpretation_8cpp_source.html +2094 -0
  3. package/SVF-doxygen/html/AbstractInterpretation_8h.html +115 -0
  4. package/SVF-doxygen/html/AbstractInterpretation_8h_source.html +460 -0
  5. package/SVF-doxygen/html/AbstractState_8cpp.html +84 -0
  6. package/SVF-doxygen/html/AbstractState_8cpp_source.html +461 -0
  7. package/SVF-doxygen/html/AbstractState_8h.html +106 -0
  8. package/SVF-doxygen/html/AbstractState_8h_source.html +893 -0
  9. package/SVF-doxygen/html/AbstractValue_8h.html +3 -3
  10. package/SVF-doxygen/html/AbstractValue_8h_source.html +652 -62
  11. package/SVF-doxygen/html/AddressValue_8h.html +4 -4
  12. package/SVF-doxygen/html/AddressValue_8h_source.html +180 -177
  13. package/SVF-doxygen/html/BufOverflowChecker_8cpp_source.html +784 -778
  14. package/SVF-doxygen/html/BufOverflowChecker_8h.html +1 -1
  15. package/SVF-doxygen/html/BufOverflowChecker_8h_source.html +19 -19
  16. package/SVF-doxygen/html/CSC_8h_source.html +1 -1
  17. package/SVF-doxygen/html/ConsExeState_8cpp_source.html +1 -1
  18. package/SVF-doxygen/html/ConsExeState_8h_source.html +2 -2
  19. package/SVF-doxygen/html/ExeState_8cpp.html +1 -1
  20. package/SVF-doxygen/html/ExeState_8cpp_source.html +2 -2
  21. package/SVF-doxygen/html/ExeState_8h_source.html +8 -8
  22. package/SVF-doxygen/html/IntervalValue_8h.html +1 -2
  23. package/SVF-doxygen/html/IntervalValue_8h_source.html +937 -956
  24. package/SVF-doxygen/html/LLVMModule_8cpp_source.html +1 -1
  25. package/SVF-doxygen/html/MSSAMuChi_8h_source.html +1 -1
  26. package/SVF-doxygen/html/MemRegion_8cpp_source.html +1 -1
  27. package/SVF-doxygen/html/ObjTypeInference_8cpp_source.html +1 -1
  28. package/SVF-doxygen/html/PointsTo_8cpp_source.html +3 -3
  29. package/SVF-doxygen/html/PointsTo_8h_source.html +3 -3
  30. package/SVF-doxygen/html/RelExeState_8h_source.html +4 -4
  31. package/SVF-doxygen/html/RelationSolver_8cpp_source.html +68 -69
  32. package/SVF-doxygen/html/RelationSolver_8h.html +1 -1
  33. package/SVF-doxygen/html/RelationSolver_8h_source.html +17 -17
  34. package/SVF-doxygen/html/SVFIR2ConsExeState_8cpp_source.html +9 -8
  35. package/SVF-doxygen/html/SVFIR2ItvExeState_8cpp_source.html +920 -952
  36. package/SVF-doxygen/html/SVFIR2ItvExeState_8h.html +2 -3
  37. package/SVF-doxygen/html/SVFIR2ItvExeState_8h_source.html +202 -207
  38. package/SVF-doxygen/html/SVFIR2Relation_8cpp_source.html +62 -58
  39. package/SVF-doxygen/html/SVFType_8cpp_source.html +1 -1
  40. package/SVF-doxygen/html/SVFType_8h_source.html +1 -1
  41. package/SVF-doxygen/html/SVFValue_8h_source.html +1 -1
  42. package/SVF-doxygen/html/SparseBitVector_8h_source.html +3 -3
  43. package/SVF-doxygen/html/WorkList_8h_source.html +1 -1
  44. package/SVF-doxygen/html/ae_8cpp.html +57 -57
  45. package/SVF-doxygen/html/ae_8cpp_source.html +465 -469
  46. package/SVF-doxygen/html/annotated.html +349 -349
  47. package/SVF-doxygen/html/classSVF_1_1AEStat-members.html +2 -2
  48. package/SVF-doxygen/html/classSVF_1_1AEStat.html +184 -190
  49. package/SVF-doxygen/html/classSVF_1_1AbstractInterpretation-members.html +161 -0
  50. package/SVF-doxygen/html/classSVF_1_1AbstractInterpretation.html +4326 -0
  51. package/SVF-doxygen/html/classSVF_1_1AbstractInterpretation.png +0 -0
  52. package/SVF-doxygen/html/classSVF_1_1AbstractState-members.html +134 -0
  53. package/SVF-doxygen/html/classSVF_1_1AbstractState.html +2166 -0
  54. package/SVF-doxygen/html/classSVF_1_1AbstractState.png +0 -0
  55. package/SVF-doxygen/html/classSVF_1_1AddressValue-members.html +15 -28
  56. package/SVF-doxygen/html/classSVF_1_1AddressValue.html +171 -230
  57. package/SVF-doxygen/html/classSVF_1_1BufOverflowChecker-members.html +73 -73
  58. package/SVF-doxygen/html/classSVF_1_1BufOverflowChecker.html +578 -574
  59. package/SVF-doxygen/html/classSVF_1_1BufOverflowChecker.png +0 -0
  60. package/SVF-doxygen/html/classSVF_1_1ConsExeState.html +1 -1
  61. package/SVF-doxygen/html/classSVF_1_1ExeState.html +12 -14
  62. package/SVF-doxygen/html/classSVF_1_1ExeState.png +0 -0
  63. package/SVF-doxygen/html/classSVF_1_1FILOWorkList.html +3 -3
  64. package/SVF-doxygen/html/classSVF_1_1IntervalValue-members.html +50 -64
  65. package/SVF-doxygen/html/classSVF_1_1IntervalValue.html +397 -507
  66. package/SVF-doxygen/html/classSVF_1_1LLVMModuleSet.html +1 -1
  67. package/SVF-doxygen/html/classSVF_1_1ObjTypeInference.html +1 -1
  68. package/SVF-doxygen/html/classSVF_1_1RelExeState.html +3 -3
  69. package/SVF-doxygen/html/classSVF_1_1RelationSolver-members.html +8 -8
  70. package/SVF-doxygen/html/classSVF_1_1RelationSolver.html +107 -108
  71. package/SVF-doxygen/html/classSVF_1_1SVFIR2ConsExeState.html +5 -5
  72. package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState-members.html +56 -57
  73. package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState.html +1128 -1178
  74. package/SVF-doxygen/html/classSVF_1_1SparseAbstractState-members.html +157 -0
  75. package/SVF-doxygen/html/classSVF_1_1SparseAbstractState.html +1512 -0
  76. package/SVF-doxygen/html/classSVF_1_1SparseAbstractState.png +0 -0
  77. package/SVF-doxygen/html/classSymblicAbstractionTest-members.html +3 -3
  78. package/SVF-doxygen/html/classSymblicAbstractionTest.html +401 -405
  79. package/SVF-doxygen/html/classes.html +292 -292
  80. package/SVF-doxygen/html/dir_2c6fb801affc4b3efe6e1ed5974683f6.html +2 -2
  81. package/SVF-doxygen/html/dir_81caa96ab1d3de93b353e2bbe80e6067.html +1 -1
  82. package/SVF-doxygen/html/dir_9a8e7a56f4029a0d9f62b1c6d1f6e85b.html +2 -2
  83. package/SVF-doxygen/html/dir_fbec400583b4bd6c5f2e89c86c5943a6.html +1 -1
  84. package/SVF-doxygen/html/fastcluster__dm_8cpp_8inc_source.html +1 -1
  85. package/SVF-doxygen/html/files.html +13 -13
  86. package/SVF-doxygen/html/functions.html +31 -32
  87. package/SVF-doxygen/html/functions_a.html +29 -27
  88. package/SVF-doxygen/html/functions_b.html +6 -6
  89. package/SVF-doxygen/html/functions_c.html +36 -42
  90. package/SVF-doxygen/html/functions_d.html +7 -4
  91. package/SVF-doxygen/html/functions_e.html +10 -9
  92. package/SVF-doxygen/html/functions_enum.html +4 -4
  93. package/SVF-doxygen/html/functions_eval.html +2 -2
  94. package/SVF-doxygen/html/functions_eval_c.html +0 -3
  95. package/SVF-doxygen/html/functions_eval_i.html +4 -2
  96. package/SVF-doxygen/html/functions_eval_m.html +2 -2
  97. package/SVF-doxygen/html/functions_eval_s.html +2 -2
  98. package/SVF-doxygen/html/functions_eval_u.html +4 -1
  99. package/SVF-doxygen/html/functions_f.html +3 -3
  100. package/SVF-doxygen/html/functions_func.html +23 -20
  101. package/SVF-doxygen/html/functions_func_b.html +6 -6
  102. package/SVF-doxygen/html/functions_func_c.html +32 -35
  103. package/SVF-doxygen/html/functions_func_d.html +1 -1
  104. package/SVF-doxygen/html/functions_func_e.html +9 -8
  105. package/SVF-doxygen/html/functions_func_g.html +59 -61
  106. package/SVF-doxygen/html/functions_func_h.html +20 -20
  107. package/SVF-doxygen/html/functions_func_i.html +64 -51
  108. package/SVF-doxygen/html/functions_func_j.html +5 -4
  109. package/SVF-doxygen/html/functions_func_l.html +10 -10
  110. package/SVF-doxygen/html/functions_func_m.html +7 -6
  111. package/SVF-doxygen/html/functions_func_n.html +9 -8
  112. package/SVF-doxygen/html/functions_func_o.html +59 -33
  113. package/SVF-doxygen/html/functions_func_p.html +5 -5
  114. package/SVF-doxygen/html/functions_func_r.html +4 -4
  115. package/SVF-doxygen/html/functions_func_s.html +41 -33
  116. package/SVF-doxygen/html/functions_func_t.html +6 -4
  117. package/SVF-doxygen/html/functions_func_u.html +6 -5
  118. package/SVF-doxygen/html/functions_func_w.html +9 -8
  119. package/SVF-doxygen/html/functions_func_~.html +10 -10
  120. package/SVF-doxygen/html/functions_g.html +58 -60
  121. package/SVF-doxygen/html/functions_h.html +20 -20
  122. package/SVF-doxygen/html/functions_i.html +69 -51
  123. package/SVF-doxygen/html/functions_j.html +5 -4
  124. package/SVF-doxygen/html/functions_l.html +19 -19
  125. package/SVF-doxygen/html/functions_m.html +9 -8
  126. package/SVF-doxygen/html/functions_n.html +12 -11
  127. package/SVF-doxygen/html/functions_o.html +70 -58
  128. package/SVF-doxygen/html/functions_p.html +16 -16
  129. package/SVF-doxygen/html/functions_r.html +10 -14
  130. package/SVF-doxygen/html/functions_rela.html +2 -2
  131. package/SVF-doxygen/html/functions_rela_r.html +2 -2
  132. package/SVF-doxygen/html/functions_rela_s.html +3 -3
  133. package/SVF-doxygen/html/functions_s.html +44 -38
  134. package/SVF-doxygen/html/functions_t.html +12 -9
  135. package/SVF-doxygen/html/functions_type.html +0 -1
  136. package/SVF-doxygen/html/functions_type_c.html +1 -1
  137. package/SVF-doxygen/html/functions_type_l.html +3 -1
  138. package/SVF-doxygen/html/functions_type_v.html +3 -1
  139. package/SVF-doxygen/html/functions_u.html +8 -4
  140. package/SVF-doxygen/html/functions_v.html +6 -4
  141. package/SVF-doxygen/html/functions_vars.html +31 -32
  142. package/SVF-doxygen/html/functions_vars_a.html +3 -0
  143. package/SVF-doxygen/html/functions_vars_g.html +2 -2
  144. package/SVF-doxygen/html/functions_vars_i.html +3 -0
  145. package/SVF-doxygen/html/functions_vars_t.html +1 -0
  146. package/SVF-doxygen/html/functions_w.html +11 -10
  147. package/SVF-doxygen/html/functions_~.html +10 -10
  148. package/SVF-doxygen/html/globals.html +2 -2
  149. package/SVF-doxygen/html/globals_defs.html +1 -1
  150. package/SVF-doxygen/html/globals_s.html +1 -1
  151. package/SVF-doxygen/html/globals_vars.html +2 -2
  152. package/SVF-doxygen/html/hierarchy.html +639 -639
  153. package/SVF-doxygen/html/namespaceSVF.html +451 -450
  154. package/SVF-doxygen/html/search/all_0.js +29 -29
  155. package/SVF-doxygen/html/search/all_1.js +502 -499
  156. package/SVF-doxygen/html/search/all_10.js +326 -326
  157. package/SVF-doxygen/html/search/all_11.js +227 -227
  158. package/SVF-doxygen/html/search/all_12.js +575 -574
  159. package/SVF-doxygen/html/search/all_13.js +208 -208
  160. package/SVF-doxygen/html/search/all_14.js +74 -73
  161. package/SVF-doxygen/html/search/all_15.js +177 -176
  162. package/SVF-doxygen/html/search/all_16.js +77 -77
  163. package/SVF-doxygen/html/search/all_17.js +1 -1
  164. package/SVF-doxygen/html/search/all_18.js +1 -1
  165. package/SVF-doxygen/html/search/all_19.js +27 -27
  166. package/SVF-doxygen/html/search/all_1a.js +179 -179
  167. package/SVF-doxygen/html/search/all_2.js +182 -182
  168. package/SVF-doxygen/html/search/all_3.js +640 -642
  169. package/SVF-doxygen/html/search/all_4.js +237 -236
  170. package/SVF-doxygen/html/search/all_5.js +126 -126
  171. package/SVF-doxygen/html/search/all_6.js +236 -236
  172. package/SVF-doxygen/html/search/all_7.js +635 -637
  173. package/SVF-doxygen/html/search/all_8.js +24 -24
  174. package/SVF-doxygen/html/search/all_9.js +356 -354
  175. package/SVF-doxygen/html/search/all_a.js +46 -46
  176. package/SVF-doxygen/html/search/all_b.js +26 -26
  177. package/SVF-doxygen/html/search/all_c.js +116 -115
  178. package/SVF-doxygen/html/search/all_d.js +205 -205
  179. package/SVF-doxygen/html/search/all_e.js +209 -209
  180. package/SVF-doxygen/html/search/all_f.js +122 -122
  181. package/SVF-doxygen/html/search/classes_0.js +29 -28
  182. package/SVF-doxygen/html/search/classes_1.js +11 -11
  183. package/SVF-doxygen/html/search/classes_10.js +75 -74
  184. package/SVF-doxygen/html/search/classes_11.js +14 -14
  185. package/SVF-doxygen/html/search/classes_12.js +2 -2
  186. package/SVF-doxygen/html/search/classes_13.js +10 -10
  187. package/SVF-doxygen/html/search/classes_14.js +19 -19
  188. package/SVF-doxygen/html/search/classes_15.js +1 -1
  189. package/SVF-doxygen/html/search/classes_2.js +73 -73
  190. package/SVF-doxygen/html/search/classes_3.js +35 -35
  191. package/SVF-doxygen/html/search/classes_4.js +8 -8
  192. package/SVF-doxygen/html/search/classes_5.js +28 -28
  193. package/SVF-doxygen/html/search/classes_6.js +98 -98
  194. package/SVF-doxygen/html/search/classes_7.js +38 -38
  195. package/SVF-doxygen/html/search/classes_8.js +57 -59
  196. package/SVF-doxygen/html/search/classes_9.js +1 -1
  197. package/SVF-doxygen/html/search/classes_a.js +12 -12
  198. package/SVF-doxygen/html/search/classes_b.js +29 -29
  199. package/SVF-doxygen/html/search/classes_c.js +6 -6
  200. package/SVF-doxygen/html/search/classes_d.js +19 -19
  201. package/SVF-doxygen/html/search/classes_e.js +36 -36
  202. package/SVF-doxygen/html/search/classes_f.js +25 -25
  203. package/SVF-doxygen/html/search/defines_0.js +3 -3
  204. package/SVF-doxygen/html/search/defines_1.js +3 -3
  205. package/SVF-doxygen/html/search/defines_10.js +2 -2
  206. package/SVF-doxygen/html/search/defines_2.js +30 -30
  207. package/SVF-doxygen/html/search/defines_3.js +20 -20
  208. package/SVF-doxygen/html/search/defines_4.js +3 -3
  209. package/SVF-doxygen/html/search/defines_5.js +4 -4
  210. package/SVF-doxygen/html/search/defines_6.js +2 -2
  211. package/SVF-doxygen/html/search/defines_7.js +5 -5
  212. package/SVF-doxygen/html/search/defines_8.js +11 -11
  213. package/SVF-doxygen/html/search/defines_9.js +9 -9
  214. package/SVF-doxygen/html/search/defines_a.js +2 -2
  215. package/SVF-doxygen/html/search/defines_b.js +1 -1
  216. package/SVF-doxygen/html/search/defines_c.js +4 -4
  217. package/SVF-doxygen/html/search/defines_d.js +2 -2
  218. package/SVF-doxygen/html/search/defines_e.js +8 -8
  219. package/SVF-doxygen/html/search/defines_f.js +4 -4
  220. package/SVF-doxygen/html/search/enums_0.js +3 -4
  221. package/SVF-doxygen/html/search/enums_1.js +2 -2
  222. package/SVF-doxygen/html/search/enums_10.js +1 -1
  223. package/SVF-doxygen/html/search/enums_11.js +1 -1
  224. package/SVF-doxygen/html/search/enums_2.js +9 -9
  225. package/SVF-doxygen/html/search/enums_3.js +2 -1
  226. package/SVF-doxygen/html/search/enums_4.js +4 -4
  227. package/SVF-doxygen/html/search/enums_5.js +1 -1
  228. package/SVF-doxygen/html/search/enums_6.js +2 -2
  229. package/SVF-doxygen/html/search/enums_7.js +2 -2
  230. package/SVF-doxygen/html/search/enums_8.js +4 -4
  231. package/SVF-doxygen/html/search/enums_9.js +1 -1
  232. package/SVF-doxygen/html/search/enums_a.js +1 -1
  233. package/SVF-doxygen/html/search/enums_b.js +7 -7
  234. package/SVF-doxygen/html/search/enums_c.js +1 -1
  235. package/SVF-doxygen/html/search/enums_d.js +4 -4
  236. package/SVF-doxygen/html/search/enums_e.js +2 -2
  237. package/SVF-doxygen/html/search/enums_f.js +4 -4
  238. package/SVF-doxygen/html/search/enumvalues_0.js +15 -15
  239. package/SVF-doxygen/html/search/enumvalues_1.js +16 -16
  240. package/SVF-doxygen/html/search/enumvalues_10.js +36 -36
  241. package/SVF-doxygen/html/search/enumvalues_11.js +6 -5
  242. package/SVF-doxygen/html/search/enumvalues_12.js +10 -10
  243. package/SVF-doxygen/html/search/enumvalues_13.js +1 -1
  244. package/SVF-doxygen/html/search/enumvalues_14.js +1 -1
  245. package/SVF-doxygen/html/search/enumvalues_15.js +4 -4
  246. package/SVF-doxygen/html/search/enumvalues_2.js +36 -37
  247. package/SVF-doxygen/html/search/enumvalues_3.js +13 -13
  248. package/SVF-doxygen/html/search/enumvalues_4.js +2 -2
  249. package/SVF-doxygen/html/search/enumvalues_5.js +50 -50
  250. package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
  251. package/SVF-doxygen/html/search/enumvalues_7.js +8 -8
  252. package/SVF-doxygen/html/search/enumvalues_8.js +25 -24
  253. package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
  254. package/SVF-doxygen/html/search/enumvalues_a.js +17 -17
  255. package/SVF-doxygen/html/search/enumvalues_b.js +11 -11
  256. package/SVF-doxygen/html/search/enumvalues_c.js +5 -5
  257. package/SVF-doxygen/html/search/enumvalues_d.js +19 -19
  258. package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
  259. package/SVF-doxygen/html/search/enumvalues_f.js +49 -49
  260. package/SVF-doxygen/html/search/files_0.js +18 -16
  261. package/SVF-doxygen/html/search/files_1.js +9 -9
  262. package/SVF-doxygen/html/search/files_10.js +8 -8
  263. package/SVF-doxygen/html/search/files_11.js +8 -8
  264. package/SVF-doxygen/html/search/files_12.js +2 -2
  265. package/SVF-doxygen/html/search/files_2.js +53 -53
  266. package/SVF-doxygen/html/search/files_3.js +14 -14
  267. package/SVF-doxygen/html/search/files_4.js +5 -5
  268. package/SVF-doxygen/html/search/files_5.js +13 -13
  269. package/SVF-doxygen/html/search/files_6.js +10 -10
  270. package/SVF-doxygen/html/search/files_7.js +15 -17
  271. package/SVF-doxygen/html/search/files_8.js +13 -13
  272. package/SVF-doxygen/html/search/files_9.js +18 -18
  273. package/SVF-doxygen/html/search/files_a.js +3 -3
  274. package/SVF-doxygen/html/search/files_b.js +4 -4
  275. package/SVF-doxygen/html/search/files_c.js +20 -20
  276. package/SVF-doxygen/html/search/files_d.js +4 -4
  277. package/SVF-doxygen/html/search/files_e.js +62 -62
  278. package/SVF-doxygen/html/search/files_f.js +8 -8
  279. package/SVF-doxygen/html/search/functions_0.js +13 -13
  280. package/SVF-doxygen/html/search/functions_1.js +369 -368
  281. package/SVF-doxygen/html/search/functions_10.js +140 -140
  282. package/SVF-doxygen/html/search/functions_11.js +140 -140
  283. package/SVF-doxygen/html/search/functions_12.js +300 -299
  284. package/SVF-doxygen/html/search/functions_13.js +73 -73
  285. package/SVF-doxygen/html/search/functions_14.js +41 -41
  286. package/SVF-doxygen/html/search/functions_15.js +72 -72
  287. package/SVF-doxygen/html/search/functions_16.js +38 -38
  288. package/SVF-doxygen/html/search/functions_17.js +3 -3
  289. package/SVF-doxygen/html/search/functions_18.js +179 -179
  290. package/SVF-doxygen/html/search/functions_2.js +94 -94
  291. package/SVF-doxygen/html/search/functions_3.js +260 -261
  292. package/SVF-doxygen/html/search/functions_4.js +85 -85
  293. package/SVF-doxygen/html/search/functions_5.js +57 -57
  294. package/SVF-doxygen/html/search/functions_6.js +65 -65
  295. package/SVF-doxygen/html/search/functions_7.js +870 -872
  296. package/SVF-doxygen/html/search/functions_8.js +162 -162
  297. package/SVF-doxygen/html/search/functions_9.js +448 -446
  298. package/SVF-doxygen/html/search/functions_a.js +30 -30
  299. package/SVF-doxygen/html/search/functions_b.js +2 -2
  300. package/SVF-doxygen/html/search/functions_c.js +25 -25
  301. package/SVF-doxygen/html/search/functions_d.js +82 -82
  302. package/SVF-doxygen/html/search/functions_e.js +36 -36
  303. package/SVF-doxygen/html/search/functions_f.js +58 -58
  304. package/SVF-doxygen/html/search/namespaces_0.js +1 -1
  305. package/SVF-doxygen/html/search/namespaces_1.js +7 -7
  306. package/SVF-doxygen/html/search/related_0.js +4 -4
  307. package/SVF-doxygen/html/search/related_1.js +2 -2
  308. package/SVF-doxygen/html/search/related_2.js +2 -2
  309. package/SVF-doxygen/html/search/related_3.js +2 -2
  310. package/SVF-doxygen/html/search/related_4.js +2 -2
  311. package/SVF-doxygen/html/search/related_5.js +1 -1
  312. package/SVF-doxygen/html/search/related_6.js +2 -2
  313. package/SVF-doxygen/html/search/related_7.js +5 -5
  314. package/SVF-doxygen/html/search/related_8.js +2 -2
  315. package/SVF-doxygen/html/search/related_9.js +4 -4
  316. package/SVF-doxygen/html/search/related_a.js +19 -19
  317. package/SVF-doxygen/html/search/related_b.js +4 -4
  318. package/SVF-doxygen/html/search/related_c.js +2 -2
  319. package/SVF-doxygen/html/search/related_d.js +12 -12
  320. package/SVF-doxygen/html/search/related_e.js +2 -2
  321. package/SVF-doxygen/html/search/related_f.js +2 -2
  322. package/SVF-doxygen/html/search/typedefs_0.js +19 -19
  323. package/SVF-doxygen/html/search/typedefs_1.js +27 -27
  324. package/SVF-doxygen/html/search/typedefs_10.js +65 -65
  325. package/SVF-doxygen/html/search/typedefs_11.js +13 -13
  326. package/SVF-doxygen/html/search/typedefs_12.js +13 -13
  327. package/SVF-doxygen/html/search/typedefs_13.js +41 -40
  328. package/SVF-doxygen/html/search/typedefs_14.js +11 -11
  329. package/SVF-doxygen/html/search/typedefs_2.js +125 -125
  330. package/SVF-doxygen/html/search/typedefs_3.js +39 -39
  331. package/SVF-doxygen/html/search/typedefs_4.js +17 -17
  332. package/SVF-doxygen/html/search/typedefs_5.js +42 -42
  333. package/SVF-doxygen/html/search/typedefs_6.js +54 -54
  334. package/SVF-doxygen/html/search/typedefs_7.js +47 -47
  335. package/SVF-doxygen/html/search/typedefs_8.js +1 -1
  336. package/SVF-doxygen/html/search/typedefs_9.js +6 -6
  337. package/SVF-doxygen/html/search/typedefs_a.js +30 -29
  338. package/SVF-doxygen/html/search/typedefs_b.js +29 -29
  339. package/SVF-doxygen/html/search/typedefs_c.js +41 -41
  340. package/SVF-doxygen/html/search/typedefs_d.js +15 -15
  341. package/SVF-doxygen/html/search/typedefs_e.js +52 -52
  342. package/SVF-doxygen/html/search/typedefs_f.js +14 -14
  343. package/SVF-doxygen/html/search/variables_0.js +177 -177
  344. package/SVF-doxygen/html/search/variables_1.js +78 -77
  345. package/SVF-doxygen/html/search/variables_10.js +98 -98
  346. package/SVF-doxygen/html/search/variables_11.js +47 -47
  347. package/SVF-doxygen/html/search/variables_12.js +93 -93
  348. package/SVF-doxygen/html/search/variables_13.js +76 -76
  349. package/SVF-doxygen/html/search/variables_14.js +14 -14
  350. package/SVF-doxygen/html/search/variables_15.js +49 -49
  351. package/SVF-doxygen/html/search/variables_16.js +11 -11
  352. package/SVF-doxygen/html/search/variables_17.js +1 -1
  353. package/SVF-doxygen/html/search/variables_18.js +17 -17
  354. package/SVF-doxygen/html/search/variables_2.js +40 -40
  355. package/SVF-doxygen/html/search/variables_3.js +143 -143
  356. package/SVF-doxygen/html/search/variables_4.js +51 -51
  357. package/SVF-doxygen/html/search/variables_5.js +39 -39
  358. package/SVF-doxygen/html/search/variables_6.js +66 -66
  359. package/SVF-doxygen/html/search/variables_7.js +34 -34
  360. package/SVF-doxygen/html/search/variables_8.js +8 -8
  361. package/SVF-doxygen/html/search/variables_9.js +80 -79
  362. package/SVF-doxygen/html/search/variables_a.js +4 -4
  363. package/SVF-doxygen/html/search/variables_b.js +10 -10
  364. package/SVF-doxygen/html/search/variables_c.js +44 -44
  365. package/SVF-doxygen/html/search/variables_d.js +58 -58
  366. package/SVF-doxygen/html/search/variables_e.js +123 -123
  367. package/SVF-doxygen/html/search/variables_f.js +31 -31
  368. package/SVF-doxygen/html/structSVF_1_1AbstractValue-members.html +164 -0
  369. package/SVF-doxygen/html/structSVF_1_1AbstractValue.html +2820 -0
  370. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1SparseAbstractState_01_4-members.html +84 -0
  371. package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1SparseAbstractState_01_4.html +130 -0
  372. package/SVF-doxygen/html/svf-ex_8cpp.html +11 -11
  373. package/SVF-doxygen/html/svf-ex_8cpp_source.html +11 -11
  374. package/package.json +1 -1
  375. package/svf/include/AE/Core/AbstractState.h +750 -0
  376. package/svf/include/AE/Core/AbstractValue.h +514 -39
  377. package/svf/include/AE/Core/AddressValue.h +32 -25
  378. package/svf/include/AE/Core/ExeState.h +2 -2
  379. package/svf/include/AE/Core/IntervalValue.h +9 -24
  380. package/svf/include/AE/Core/RelationSolver.h +9 -9
  381. package/svf/include/AE/Svfexe/{AbstractExecution.h → AbstractInterpretation.h} +24 -22
  382. package/svf/include/AE/Svfexe/BufOverflowChecker.h +5 -5
  383. package/svf/include/AE/Svfexe/SVFIR2ItvExeState.h +23 -25
  384. package/svf/lib/AE/Core/AbstractState.cpp +357 -0
  385. package/svf/lib/AE/Core/ExeState.cpp +1 -1
  386. package/svf/lib/AE/Core/RelationSolver.cpp +31 -31
  387. package/svf/lib/AE/Core/SVFIR2Relation.cpp +6 -5
  388. package/svf/lib/AE/Svfexe/{AbstractExecution.cpp → AbstractInterpretation.cpp} +162 -152
  389. package/svf/lib/AE/Svfexe/BufOverflowChecker.cpp +51 -47
  390. package/svf/lib/AE/Svfexe/SVFIR2ConsExeState.cpp +2 -2
  391. package/svf/lib/AE/Svfexe/SVFIR2ItvExeState.cpp +194 -230
  392. package/svf-llvm/tools/AE/ae.cpp +105 -108
  393. package/svf/include/AE/Core/IntervalExeState.h +0 -650
  394. package/svf/lib/AE/Core/IntervalExeState.cpp +0 -329
@@ -0,0 +1,217 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
+ <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6
+ <meta name="generator" content="Doxygen 1.8.17"/>
7
+ <meta name="viewport" content="width=device-width, initial-scale=1"/>
8
+ <title>Static Value-Flow Analysis: /home/runner/work/SVF/SVF/svf/lib/AE/Svfexe/AbstractInterpretation.cpp File Reference</title>
9
+ <link href="tabs.css" rel="stylesheet" type="text/css"/>
10
+ <script type="text/javascript" src="jquery.js"></script>
11
+ <script type="text/javascript" src="dynsections.js"></script>
12
+ <link href="search/search.css" rel="stylesheet" type="text/css"/>
13
+ <script type="text/javascript" src="search/searchdata.js"></script>
14
+ <script type="text/javascript" src="search/search.js"></script>
15
+ <link href="doxygen.css" rel="stylesheet" type="text/css" />
16
+ </head>
17
+ <body>
18
+ <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
19
+ <div id="titlearea">
20
+ <table cellspacing="0" cellpadding="0">
21
+ <tbody>
22
+ <tr style="height: 56px;">
23
+ <td id="projectalign" style="padding-left: 0.5em;">
24
+ <div id="projectname">Static Value-Flow Analysis
25
+ </div>
26
+ </td>
27
+ </tr>
28
+ </tbody>
29
+ </table>
30
+ </div>
31
+ <!-- end header part -->
32
+ <!-- Generated by Doxygen 1.8.17 -->
33
+ <script type="text/javascript">
34
+ /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
35
+ var searchBox = new SearchBox("searchBox", "search",false,'Search');
36
+ /* @license-end */
37
+ </script>
38
+ <script type="text/javascript" src="menudata.js"></script>
39
+ <script type="text/javascript" src="menu.js"></script>
40
+ <script type="text/javascript">
41
+ /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
42
+ $(function() {
43
+ initMenu('',true,false,'search.php','Search');
44
+ $(document).ready(function() { init_search(); });
45
+ });
46
+ /* @license-end */</script>
47
+ <div id="main-nav"></div>
48
+ <!-- window showing the filter options -->
49
+ <div id="MSearchSelectWindow"
50
+ onmouseover="return searchBox.OnSearchSelectShow()"
51
+ onmouseout="return searchBox.OnSearchSelectHide()"
52
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
53
+ </div>
54
+
55
+ <!-- iframe showing the search results (closed by default) -->
56
+ <div id="MSearchResultsWindow">
57
+ <iframe src="javascript:void(0)" frameborder="0"
58
+ name="MSearchResults" id="MSearchResults">
59
+ </iframe>
60
+ </div>
61
+
62
+ <div id="nav-path" class="navpath">
63
+ <ul>
64
+ <li class="navelem"><a class="el" href="dir_f984cfbe93434e3daf67f2a9bd6d521f.html">svf</a></li><li class="navelem"><a class="el" href="dir_946e55d8e7afdb1629c1e1d7cdc5486a.html">lib</a></li><li class="navelem"><a class="el" href="dir_7e02b97230e2801c6749b0b00985526f.html">AE</a></li><li class="navelem"><a class="el" href="dir_81caa96ab1d3de93b353e2bbe80e6067.html">Svfexe</a></li> </ul>
65
+ </div>
66
+ </div><!-- top -->
67
+ <div class="header">
68
+ <div class="summary">
69
+ <a href="#define-members">Macros</a> &#124;
70
+ <a href="#var-members">Variables</a> </div>
71
+ <div class="headertitle">
72
+ <div class="title">AbstractInterpretation.cpp File Reference</div> </div>
73
+ </div><!--header-->
74
+ <div class="contents">
75
+ <div class="textblock"><code>#include &quot;<a class="el" href="AbstractInterpretation_8h_source.html">AE/Svfexe/AbstractInterpretation.h</a>&quot;</code><br />
76
+ <code>#include &quot;<a class="el" href="SVFIR_8h_source.html">SVFIR/SVFIR.h</a>&quot;</code><br />
77
+ <code>#include &quot;<a class="el" href="Options_8h_source.html">Util/Options.h</a>&quot;</code><br />
78
+ <code>#include &quot;<a class="el" href="WorkList_8h_source.html">Util/WorkList.h</a>&quot;</code><br />
79
+ <code>#include &lt;cmath&gt;</code><br />
80
+ </div>
81
+ <p><a href="AbstractInterpretation_8cpp_source.html">Go to the source code of this file.</a></p>
82
+ <table class="memberdecls">
83
+ <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
84
+ Macros</h2></td></tr>
85
+ <tr class="memitem:a6ded577f411d8dd34071fba96989f93a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="AbstractInterpretation_8cpp.html#a6ded577f411d8dd34071fba96989f93a">SSE_FUNC_PROCESS</a>(LLVM_NAME, FUNC_NAME)</td></tr>
86
+ <tr class="separator:a6ded577f411d8dd34071fba96989f93a"><td class="memSeparator" colspan="2">&#160;</td></tr>
87
+ </table><table class="memberdecls">
88
+ <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
89
+ Variables</h2></td></tr>
90
+ <tr class="memitem:a6baa35cec0782ac3179849752a732e5c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt; <a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>, <a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="AbstractInterpretation_8cpp.html#a6baa35cec0782ac3179849752a732e5c">_reverse_predicate</a></td></tr>
91
+ <tr class="separator:a6baa35cec0782ac3179849752a732e5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
92
+ <tr class="memitem:a3b70282b79998dcb9f6df78370bc1fe9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt; <a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>, <a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="AbstractInterpretation_8cpp.html#a3b70282b79998dcb9f6df78370bc1fe9">_switch_lhsrhs_predicate</a></td></tr>
93
+ <tr class="separator:a3b70282b79998dcb9f6df78370bc1fe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
94
+ </table>
95
+ <h2 class="groupheader">Macro Definition Documentation</h2>
96
+ <a id="a6ded577f411d8dd34071fba96989f93a"></a>
97
+ <h2 class="memtitle"><span class="permalink"><a href="#a6ded577f411d8dd34071fba96989f93a">&#9670;&nbsp;</a></span>SSE_FUNC_PROCESS</h2>
98
+
99
+ <div class="memitem">
100
+ <div class="memproto">
101
+ <table class="memname">
102
+ <tr>
103
+ <td class="memname">#define SSE_FUNC_PROCESS</td>
104
+ <td>(</td>
105
+ <td class="paramtype">&#160;</td>
106
+ <td class="paramname">LLVM_NAME, </td>
107
+ </tr>
108
+ <tr>
109
+ <td class="paramkey"></td>
110
+ <td></td>
111
+ <td class="paramtype">&#160;</td>
112
+ <td class="paramname">FUNC_NAME&#160;</td>
113
+ </tr>
114
+ <tr>
115
+ <td></td>
116
+ <td>)</td>
117
+ <td></td><td></td>
118
+ </tr>
119
+ </table>
120
+ </div><div class="memdoc">
121
+ <b>Value:</b><div class="fragment"><div class="line"> <span class="keyword">auto</span> sse_##FUNC_NAME = [<span class="keyword">this</span>](<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallSite.html">CallSite</a> &amp;cs) { \</div>
122
+ <div class="line"> <span class="comment">/* run real ext function */</span> \</div>
123
+ <div class="line"> SparseAbstractState&amp;es = _svfir2ExeState-&gt;getEs(); \</div>
124
+ <div class="line"> u32_t rhs_id = _svfir-&gt;getValueNode(cs.getArgument(0)); \</div>
125
+ <div class="line"> if (!es.inVarToValTable(rhs_id)) <span class="keywordflow">return</span>; \</div>
126
+ <div class="line"> u32_t rhs = _svfir2ExeState-&gt;getEs()[rhs_id].getInterval().lb().getIntNumeral(); \</div>
127
+ <div class="line"> s32_t res = FUNC_NAME(rhs); \</div>
128
+ <div class="line"> u32_t lhsId = _svfir-&gt;getValueNode(cs.getInstruction()); \</div>
129
+ <div class="line"> _svfir2ExeState-&gt;getEs()[lhsId] = <a class="code" href="classSVF_1_1IntervalValue.html">IntervalValue</a>(res); \</div>
130
+ <div class="line"> return; \</div>
131
+ <div class="line"> }; \</div>
132
+ <div class="line"> _func_map[#FUNC_NAME] = sse_##FUNC_NAME; \</div>
133
+ </div><!-- fragment -->
134
+ </div>
135
+ </div>
136
+ <h2 class="groupheader">Variable Documentation</h2>
137
+ <a id="a6baa35cec0782ac3179849752a732e5c"></a>
138
+ <h2 class="memtitle"><span class="permalink"><a href="#a6baa35cec0782ac3179849752a732e5c">&#9670;&nbsp;</a></span>_reverse_predicate</h2>
139
+
140
+ <div class="memitem">
141
+ <div class="memproto">
142
+ <table class="memname">
143
+ <tr>
144
+ <td class="memname"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt;<a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>, <a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>&gt; _reverse_predicate</td>
145
+ </tr>
146
+ </table>
147
+ </div><div class="memdoc">
148
+ <b>Initial value:</b><div class="fragment"><div class="line">=</div>
149
+ <div class="line">{</div>
150
+ <div class="line"> {CmpStmt::Predicate::FCMP_OEQ, CmpStmt::Predicate::FCMP_ONE}, </div>
151
+ <div class="line"> {CmpStmt::Predicate::FCMP_UEQ, CmpStmt::Predicate::FCMP_UNE}, </div>
152
+ <div class="line"> {CmpStmt::Predicate::FCMP_OGT, CmpStmt::Predicate::FCMP_OLE}, </div>
153
+ <div class="line"> {CmpStmt::Predicate::FCMP_OGE, CmpStmt::Predicate::FCMP_OLT}, </div>
154
+ <div class="line"> {CmpStmt::Predicate::FCMP_OLT, CmpStmt::Predicate::FCMP_OGE}, </div>
155
+ <div class="line"> {CmpStmt::Predicate::FCMP_OLE, CmpStmt::Predicate::FCMP_OGT}, </div>
156
+ <div class="line"> {CmpStmt::Predicate::FCMP_ONE, CmpStmt::Predicate::FCMP_OEQ}, </div>
157
+ <div class="line"> {CmpStmt::Predicate::FCMP_UNE, CmpStmt::Predicate::FCMP_UEQ}, </div>
158
+ <div class="line"> {CmpStmt::Predicate::ICMP_EQ, CmpStmt::Predicate::ICMP_NE}, </div>
159
+ <div class="line"> {CmpStmt::Predicate::ICMP_NE, CmpStmt::Predicate::ICMP_EQ}, </div>
160
+ <div class="line"> {CmpStmt::Predicate::ICMP_UGT, CmpStmt::Predicate::ICMP_ULE}, </div>
161
+ <div class="line"> {CmpStmt::Predicate::ICMP_ULT, CmpStmt::Predicate::ICMP_UGE}, </div>
162
+ <div class="line"> {CmpStmt::Predicate::ICMP_UGE, CmpStmt::Predicate::ICMP_ULT}, </div>
163
+ <div class="line"> {CmpStmt::Predicate::ICMP_SGT, CmpStmt::Predicate::ICMP_SLE}, </div>
164
+ <div class="line"> {CmpStmt::Predicate::ICMP_SLT, CmpStmt::Predicate::ICMP_SGE}, </div>
165
+ <div class="line"> {CmpStmt::Predicate::ICMP_SGE, CmpStmt::Predicate::ICMP_SLT}, </div>
166
+ <div class="line">}</div>
167
+ </div><!-- fragment -->
168
+ <p class="definition">Definition at line <a class="el" href="AbstractInterpretation_8cpp_source.html#l00045">45</a> of file <a class="el" href="AbstractInterpretation_8cpp_source.html">AbstractInterpretation.cpp</a>.</p>
169
+
170
+ </div>
171
+ </div>
172
+ <a id="a3b70282b79998dcb9f6df78370bc1fe9"></a>
173
+ <h2 class="memtitle"><span class="permalink"><a href="#a3b70282b79998dcb9f6df78370bc1fe9">&#9670;&nbsp;</a></span>_switch_lhsrhs_predicate</h2>
174
+
175
+ <div class="memitem">
176
+ <div class="memproto">
177
+ <table class="memname">
178
+ <tr>
179
+ <td class="memname"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt;<a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>, <a class="el" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>&gt; _switch_lhsrhs_predicate</td>
180
+ </tr>
181
+ </table>
182
+ </div><div class="memdoc">
183
+ <b>Initial value:</b><div class="fragment"><div class="line">=</div>
184
+ <div class="line">{</div>
185
+ <div class="line"> {CmpStmt::Predicate::FCMP_OEQ, CmpStmt::Predicate::FCMP_OEQ}, </div>
186
+ <div class="line"> {CmpStmt::Predicate::FCMP_UEQ, CmpStmt::Predicate::FCMP_UEQ}, </div>
187
+ <div class="line"> {CmpStmt::Predicate::FCMP_OGT, CmpStmt::Predicate::FCMP_OLT}, </div>
188
+ <div class="line"> {CmpStmt::Predicate::FCMP_OGE, CmpStmt::Predicate::FCMP_OLE}, </div>
189
+ <div class="line"> {CmpStmt::Predicate::FCMP_OLT, CmpStmt::Predicate::FCMP_OGT}, </div>
190
+ <div class="line"> {CmpStmt::Predicate::FCMP_OLE, CmpStmt::Predicate::FCMP_OGE}, </div>
191
+ <div class="line"> {CmpStmt::Predicate::FCMP_ONE, CmpStmt::Predicate::FCMP_ONE}, </div>
192
+ <div class="line"> {CmpStmt::Predicate::FCMP_UNE, CmpStmt::Predicate::FCMP_UNE}, </div>
193
+ <div class="line"> {CmpStmt::Predicate::ICMP_EQ, CmpStmt::Predicate::ICMP_EQ}, </div>
194
+ <div class="line"> {CmpStmt::Predicate::ICMP_NE, CmpStmt::Predicate::ICMP_NE}, </div>
195
+ <div class="line"> {CmpStmt::Predicate::ICMP_UGT, CmpStmt::Predicate::ICMP_ULT}, </div>
196
+ <div class="line"> {CmpStmt::Predicate::ICMP_ULT, CmpStmt::Predicate::ICMP_UGT}, </div>
197
+ <div class="line"> {CmpStmt::Predicate::ICMP_UGE, CmpStmt::Predicate::ICMP_ULE}, </div>
198
+ <div class="line"> {CmpStmt::Predicate::ICMP_SGT, CmpStmt::Predicate::ICMP_SLT}, </div>
199
+ <div class="line"> {CmpStmt::Predicate::ICMP_SLT, CmpStmt::Predicate::ICMP_SGT}, </div>
200
+ <div class="line"> {CmpStmt::Predicate::ICMP_SGE, CmpStmt::Predicate::ICMP_SLE}, </div>
201
+ <div class="line">}</div>
202
+ </div><!-- fragment -->
203
+ <p class="definition">Definition at line <a class="el" href="AbstractInterpretation_8cpp_source.html#l00066">66</a> of file <a class="el" href="AbstractInterpretation_8cpp_source.html">AbstractInterpretation.cpp</a>.</p>
204
+
205
+ </div>
206
+ </div>
207
+ </div><!-- contents -->
208
+ <div class="ttc" id="aclassSVF_1_1IntervalValue_html"><div class="ttname"><a href="classSVF_1_1IntervalValue.html">SVF::IntervalValue</a></div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00042">IntervalValue.h:42</a></div></div>
209
+ <div class="ttc" id="aclassSVF_1_1CallSite_html"><div class="ttname"><a href="classSVF_1_1CallSite.html">SVF::CallSite</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l01113">SVFValue.h:1113</a></div></div>
210
+ <!-- start footer part -->
211
+ <hr class="footer"/><address class="footer"><small>
212
+ Generated by &#160;<a href="http://www.doxygen.org/index.html">
213
+ <img class="footer" src="doxygen.png" alt="doxygen"/>
214
+ </a> 1.8.17
215
+ </small></address>
216
+ </body>
217
+ </html>