svf-tools 1.0.913 → 1.0.915

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 (264) hide show
  1. package/SVF-doxygen/html/AbstractInterpretation_8cpp.html +7 -5
  2. package/SVF-doxygen/html/AbstractInterpretation_8cpp_source.html +1593 -1610
  3. package/SVF-doxygen/html/AbstractInterpretation_8h_source.html +157 -144
  4. package/SVF-doxygen/html/BufOverflowChecker_8cpp_source.html +797 -786
  5. package/SVF-doxygen/html/BufOverflowChecker_8h_source.html +7 -7
  6. package/SVF-doxygen/html/SVFIR2AbsState_8cpp_source.html +815 -826
  7. package/SVF-doxygen/html/SVFIR2AbsState_8h_source.html +153 -196
  8. package/SVF-doxygen/html/classSVF_1_1AEStat.html +116 -120
  9. package/SVF-doxygen/html/classSVF_1_1AbstractInterpretation-members.html +33 -33
  10. package/SVF-doxygen/html/classSVF_1_1AbstractInterpretation.html +1739 -1684
  11. package/SVF-doxygen/html/classSVF_1_1BufOverflowChecker-members.html +33 -33
  12. package/SVF-doxygen/html/classSVF_1_1BufOverflowChecker.html +471 -462
  13. package/SVF-doxygen/html/classSVF_1_1SVFIR2AbsState-members.html +35 -47
  14. package/SVF-doxygen/html/classSVF_1_1SVFIR2AbsState.html +1261 -1546
  15. package/SVF-doxygen/html/dir_9a8e7a56f4029a0d9f62b1c6d1f6e85b.html +0 -2
  16. package/SVF-doxygen/html/files.html +0 -1
  17. package/SVF-doxygen/html/functions.html +4 -7
  18. package/SVF-doxygen/html/functions_a.html +2 -2
  19. package/SVF-doxygen/html/functions_f.html +3 -3
  20. package/SVF-doxygen/html/functions_func.html +2 -2
  21. package/SVF-doxygen/html/functions_func_g.html +16 -16
  22. package/SVF-doxygen/html/functions_func_h.html +21 -57
  23. package/SVF-doxygen/html/functions_func_i.html +21 -12
  24. package/SVF-doxygen/html/functions_func_n.html +1 -1
  25. package/SVF-doxygen/html/functions_func_s.html +13 -19
  26. package/SVF-doxygen/html/functions_func_t.html +1 -1
  27. package/SVF-doxygen/html/functions_func_w.html +1 -1
  28. package/SVF-doxygen/html/functions_g.html +16 -16
  29. package/SVF-doxygen/html/functions_h.html +18 -54
  30. package/SVF-doxygen/html/functions_i.html +32 -23
  31. package/SVF-doxygen/html/functions_l.html +3 -3
  32. package/SVF-doxygen/html/functions_n.html +1 -1
  33. package/SVF-doxygen/html/functions_o.html +4 -4
  34. package/SVF-doxygen/html/functions_p.html +19 -17
  35. package/SVF-doxygen/html/functions_r.html +6 -6
  36. package/SVF-doxygen/html/functions_s.html +18 -26
  37. package/SVF-doxygen/html/functions_t.html +4 -4
  38. package/SVF-doxygen/html/functions_v.html +6 -6
  39. package/SVF-doxygen/html/functions_vars.html +4 -7
  40. package/SVF-doxygen/html/functions_w.html +1 -1
  41. package/SVF-doxygen/html/search/all_0.js +131 -132
  42. package/SVF-doxygen/html/search/all_1.js +504 -504
  43. package/SVF-doxygen/html/search/all_10.js +326 -326
  44. package/SVF-doxygen/html/search/all_11.js +227 -227
  45. package/SVF-doxygen/html/search/all_12.js +559 -562
  46. package/SVF-doxygen/html/search/all_13.js +186 -186
  47. package/SVF-doxygen/html/search/all_14.js +74 -74
  48. package/SVF-doxygen/html/search/all_15.js +175 -175
  49. package/SVF-doxygen/html/search/all_16.js +77 -77
  50. package/SVF-doxygen/html/search/all_17.js +1 -1
  51. package/SVF-doxygen/html/search/all_18.js +1 -1
  52. package/SVF-doxygen/html/search/all_19.js +27 -27
  53. package/SVF-doxygen/html/search/all_1a.js +174 -174
  54. package/SVF-doxygen/html/search/all_2.js +180 -180
  55. package/SVF-doxygen/html/search/all_3.js +635 -635
  56. package/SVF-doxygen/html/search/all_4.js +237 -237
  57. package/SVF-doxygen/html/search/all_5.js +120 -120
  58. package/SVF-doxygen/html/search/all_6.js +236 -236
  59. package/SVF-doxygen/html/search/all_7.js +1039 -1039
  60. package/SVF-doxygen/html/search/all_8.js +212 -224
  61. package/SVF-doxygen/html/search/all_9.js +630 -627
  62. package/SVF-doxygen/html/search/all_a.js +46 -46
  63. package/SVF-doxygen/html/search/all_b.js +24 -24
  64. package/SVF-doxygen/html/search/all_c.js +111 -111
  65. package/SVF-doxygen/html/search/all_d.js +204 -204
  66. package/SVF-doxygen/html/search/all_e.js +207 -207
  67. package/SVF-doxygen/html/search/all_f.js +122 -122
  68. package/SVF-doxygen/html/search/classes_0.js +29 -29
  69. package/SVF-doxygen/html/search/classes_1.js +11 -11
  70. package/SVF-doxygen/html/search/classes_10.js +71 -71
  71. package/SVF-doxygen/html/search/classes_11.js +14 -14
  72. package/SVF-doxygen/html/search/classes_12.js +2 -2
  73. package/SVF-doxygen/html/search/classes_13.js +10 -10
  74. package/SVF-doxygen/html/search/classes_14.js +19 -19
  75. package/SVF-doxygen/html/search/classes_15.js +1 -1
  76. package/SVF-doxygen/html/search/classes_2.js +72 -72
  77. package/SVF-doxygen/html/search/classes_3.js +35 -35
  78. package/SVF-doxygen/html/search/classes_4.js +7 -7
  79. package/SVF-doxygen/html/search/classes_5.js +28 -28
  80. package/SVF-doxygen/html/search/classes_6.js +98 -98
  81. package/SVF-doxygen/html/search/classes_7.js +33 -33
  82. package/SVF-doxygen/html/search/classes_8.js +57 -57
  83. package/SVF-doxygen/html/search/classes_9.js +1 -1
  84. package/SVF-doxygen/html/search/classes_a.js +12 -12
  85. package/SVF-doxygen/html/search/classes_b.js +29 -29
  86. package/SVF-doxygen/html/search/classes_c.js +6 -6
  87. package/SVF-doxygen/html/search/classes_d.js +19 -19
  88. package/SVF-doxygen/html/search/classes_e.js +36 -36
  89. package/SVF-doxygen/html/search/classes_f.js +25 -25
  90. package/SVF-doxygen/html/search/defines_0.js +3 -3
  91. package/SVF-doxygen/html/search/defines_1.js +3 -3
  92. package/SVF-doxygen/html/search/defines_10.js +2 -2
  93. package/SVF-doxygen/html/search/defines_2.js +30 -30
  94. package/SVF-doxygen/html/search/defines_3.js +20 -20
  95. package/SVF-doxygen/html/search/defines_4.js +3 -3
  96. package/SVF-doxygen/html/search/defines_5.js +4 -4
  97. package/SVF-doxygen/html/search/defines_6.js +2 -2
  98. package/SVF-doxygen/html/search/defines_7.js +5 -5
  99. package/SVF-doxygen/html/search/defines_8.js +11 -11
  100. package/SVF-doxygen/html/search/defines_9.js +9 -9
  101. package/SVF-doxygen/html/search/defines_a.js +2 -2
  102. package/SVF-doxygen/html/search/defines_b.js +1 -1
  103. package/SVF-doxygen/html/search/defines_c.js +3 -3
  104. package/SVF-doxygen/html/search/defines_d.js +2 -2
  105. package/SVF-doxygen/html/search/defines_e.js +8 -8
  106. package/SVF-doxygen/html/search/defines_f.js +4 -4
  107. package/SVF-doxygen/html/search/enums_0.js +3 -3
  108. package/SVF-doxygen/html/search/enums_1.js +2 -2
  109. package/SVF-doxygen/html/search/enums_10.js +1 -1
  110. package/SVF-doxygen/html/search/enums_11.js +1 -1
  111. package/SVF-doxygen/html/search/enums_2.js +9 -9
  112. package/SVF-doxygen/html/search/enums_3.js +2 -2
  113. package/SVF-doxygen/html/search/enums_4.js +3 -3
  114. package/SVF-doxygen/html/search/enums_5.js +1 -1
  115. package/SVF-doxygen/html/search/enums_6.js +2 -2
  116. package/SVF-doxygen/html/search/enums_7.js +2 -2
  117. package/SVF-doxygen/html/search/enums_8.js +4 -4
  118. package/SVF-doxygen/html/search/enums_9.js +1 -1
  119. package/SVF-doxygen/html/search/enums_a.js +1 -1
  120. package/SVF-doxygen/html/search/enums_b.js +7 -7
  121. package/SVF-doxygen/html/search/enums_c.js +1 -1
  122. package/SVF-doxygen/html/search/enums_d.js +4 -4
  123. package/SVF-doxygen/html/search/enums_e.js +2 -2
  124. package/SVF-doxygen/html/search/enums_f.js +4 -4
  125. package/SVF-doxygen/html/search/enumvalues_0.js +15 -15
  126. package/SVF-doxygen/html/search/enumvalues_1.js +16 -16
  127. package/SVF-doxygen/html/search/enumvalues_10.js +36 -36
  128. package/SVF-doxygen/html/search/enumvalues_11.js +6 -6
  129. package/SVF-doxygen/html/search/enumvalues_12.js +10 -10
  130. package/SVF-doxygen/html/search/enumvalues_13.js +1 -1
  131. package/SVF-doxygen/html/search/enumvalues_14.js +1 -1
  132. package/SVF-doxygen/html/search/enumvalues_15.js +4 -4
  133. package/SVF-doxygen/html/search/enumvalues_2.js +36 -36
  134. package/SVF-doxygen/html/search/enumvalues_3.js +13 -13
  135. package/SVF-doxygen/html/search/enumvalues_4.js +2 -2
  136. package/SVF-doxygen/html/search/enumvalues_5.js +50 -50
  137. package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
  138. package/SVF-doxygen/html/search/enumvalues_7.js +8 -8
  139. package/SVF-doxygen/html/search/enumvalues_8.js +24 -24
  140. package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
  141. package/SVF-doxygen/html/search/enumvalues_a.js +17 -17
  142. package/SVF-doxygen/html/search/enumvalues_b.js +11 -11
  143. package/SVF-doxygen/html/search/enumvalues_c.js +5 -5
  144. package/SVF-doxygen/html/search/enumvalues_d.js +19 -19
  145. package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
  146. package/SVF-doxygen/html/search/enumvalues_f.js +48 -48
  147. package/SVF-doxygen/html/search/files_0.js +18 -18
  148. package/SVF-doxygen/html/search/files_1.js +9 -9
  149. package/SVF-doxygen/html/search/files_10.js +8 -8
  150. package/SVF-doxygen/html/search/files_11.js +8 -8
  151. package/SVF-doxygen/html/search/files_12.js +2 -2
  152. package/SVF-doxygen/html/search/files_2.js +51 -51
  153. package/SVF-doxygen/html/search/files_3.js +14 -14
  154. package/SVF-doxygen/html/search/files_4.js +3 -3
  155. package/SVF-doxygen/html/search/files_5.js +13 -13
  156. package/SVF-doxygen/html/search/files_6.js +10 -10
  157. package/SVF-doxygen/html/search/files_7.js +15 -15
  158. package/SVF-doxygen/html/search/files_8.js +13 -13
  159. package/SVF-doxygen/html/search/files_9.js +18 -18
  160. package/SVF-doxygen/html/search/files_a.js +3 -3
  161. package/SVF-doxygen/html/search/files_b.js +4 -4
  162. package/SVF-doxygen/html/search/files_c.js +20 -20
  163. package/SVF-doxygen/html/search/files_d.js +4 -4
  164. package/SVF-doxygen/html/search/files_e.js +56 -57
  165. package/SVF-doxygen/html/search/files_f.js +8 -8
  166. package/SVF-doxygen/html/search/functions_0.js +13 -13
  167. package/SVF-doxygen/html/search/functions_1.js +366 -366
  168. package/SVF-doxygen/html/search/functions_10.js +140 -140
  169. package/SVF-doxygen/html/search/functions_11.js +140 -140
  170. package/SVF-doxygen/html/search/functions_12.js +291 -293
  171. package/SVF-doxygen/html/search/functions_13.js +52 -52
  172. package/SVF-doxygen/html/search/functions_14.js +41 -41
  173. package/SVF-doxygen/html/search/functions_15.js +70 -70
  174. package/SVF-doxygen/html/search/functions_16.js +38 -38
  175. package/SVF-doxygen/html/search/functions_17.js +3 -3
  176. package/SVF-doxygen/html/search/functions_18.js +174 -174
  177. package/SVF-doxygen/html/search/functions_2.js +92 -92
  178. package/SVF-doxygen/html/search/functions_3.js +257 -257
  179. package/SVF-doxygen/html/search/functions_4.js +85 -85
  180. package/SVF-doxygen/html/search/functions_5.js +54 -54
  181. package/SVF-doxygen/html/search/functions_6.js +65 -65
  182. package/SVF-doxygen/html/search/functions_7.js +857 -857
  183. package/SVF-doxygen/html/search/functions_8.js +164 -176
  184. package/SVF-doxygen/html/search/functions_9.js +439 -436
  185. package/SVF-doxygen/html/search/functions_a.js +30 -30
  186. package/SVF-doxygen/html/search/functions_b.js +2 -2
  187. package/SVF-doxygen/html/search/functions_c.js +22 -22
  188. package/SVF-doxygen/html/search/functions_d.js +81 -81
  189. package/SVF-doxygen/html/search/functions_e.js +34 -34
  190. package/SVF-doxygen/html/search/functions_f.js +58 -58
  191. package/SVF-doxygen/html/search/namespaces_0.js +1 -1
  192. package/SVF-doxygen/html/search/namespaces_1.js +7 -7
  193. package/SVF-doxygen/html/search/related_0.js +4 -4
  194. package/SVF-doxygen/html/search/related_1.js +2 -2
  195. package/SVF-doxygen/html/search/related_2.js +2 -2
  196. package/SVF-doxygen/html/search/related_3.js +2 -2
  197. package/SVF-doxygen/html/search/related_4.js +2 -2
  198. package/SVF-doxygen/html/search/related_5.js +1 -1
  199. package/SVF-doxygen/html/search/related_6.js +2 -2
  200. package/SVF-doxygen/html/search/related_7.js +5 -5
  201. package/SVF-doxygen/html/search/related_8.js +2 -2
  202. package/SVF-doxygen/html/search/related_9.js +4 -4
  203. package/SVF-doxygen/html/search/related_a.js +19 -19
  204. package/SVF-doxygen/html/search/related_b.js +4 -4
  205. package/SVF-doxygen/html/search/related_c.js +2 -2
  206. package/SVF-doxygen/html/search/related_d.js +11 -11
  207. package/SVF-doxygen/html/search/related_e.js +2 -2
  208. package/SVF-doxygen/html/search/related_f.js +2 -2
  209. package/SVF-doxygen/html/search/typedefs_0.js +20 -20
  210. package/SVF-doxygen/html/search/typedefs_1.js +27 -27
  211. package/SVF-doxygen/html/search/typedefs_10.js +65 -65
  212. package/SVF-doxygen/html/search/typedefs_11.js +12 -12
  213. package/SVF-doxygen/html/search/typedefs_12.js +13 -13
  214. package/SVF-doxygen/html/search/typedefs_13.js +40 -40
  215. package/SVF-doxygen/html/search/typedefs_14.js +11 -11
  216. package/SVF-doxygen/html/search/typedefs_2.js +125 -125
  217. package/SVF-doxygen/html/search/typedefs_3.js +39 -39
  218. package/SVF-doxygen/html/search/typedefs_4.js +17 -17
  219. package/SVF-doxygen/html/search/typedefs_5.js +42 -42
  220. package/SVF-doxygen/html/search/typedefs_6.js +54 -54
  221. package/SVF-doxygen/html/search/typedefs_7.js +47 -47
  222. package/SVF-doxygen/html/search/typedefs_8.js +1 -1
  223. package/SVF-doxygen/html/search/typedefs_9.js +4 -4
  224. package/SVF-doxygen/html/search/typedefs_a.js +28 -28
  225. package/SVF-doxygen/html/search/typedefs_b.js +29 -29
  226. package/SVF-doxygen/html/search/typedefs_c.js +41 -41
  227. package/SVF-doxygen/html/search/typedefs_d.js +15 -15
  228. package/SVF-doxygen/html/search/typedefs_e.js +52 -52
  229. package/SVF-doxygen/html/search/typedefs_f.js +14 -14
  230. package/SVF-doxygen/html/search/variables_0.js +169 -170
  231. package/SVF-doxygen/html/search/variables_1.js +78 -78
  232. package/SVF-doxygen/html/search/variables_10.js +98 -98
  233. package/SVF-doxygen/html/search/variables_11.js +47 -47
  234. package/SVF-doxygen/html/search/variables_12.js +93 -93
  235. package/SVF-doxygen/html/search/variables_13.js +76 -76
  236. package/SVF-doxygen/html/search/variables_14.js +14 -14
  237. package/SVF-doxygen/html/search/variables_15.js +49 -49
  238. package/SVF-doxygen/html/search/variables_16.js +11 -11
  239. package/SVF-doxygen/html/search/variables_17.js +1 -1
  240. package/SVF-doxygen/html/search/variables_18.js +17 -17
  241. package/SVF-doxygen/html/search/variables_2.js +40 -40
  242. package/SVF-doxygen/html/search/variables_3.js +143 -143
  243. package/SVF-doxygen/html/search/variables_4.js +51 -51
  244. package/SVF-doxygen/html/search/variables_5.js +39 -39
  245. package/SVF-doxygen/html/search/variables_6.js +66 -66
  246. package/SVF-doxygen/html/search/variables_7.js +32 -32
  247. package/SVF-doxygen/html/search/variables_8.js +8 -8
  248. package/SVF-doxygen/html/search/variables_9.js +80 -80
  249. package/SVF-doxygen/html/search/variables_a.js +4 -4
  250. package/SVF-doxygen/html/search/variables_b.js +10 -10
  251. package/SVF-doxygen/html/search/variables_c.js +44 -44
  252. package/SVF-doxygen/html/search/variables_d.js +58 -58
  253. package/SVF-doxygen/html/search/variables_e.js +123 -123
  254. package/SVF-doxygen/html/search/variables_f.js +31 -31
  255. package/SVF-doxygen/html/svf-ex_8cpp.html +199 -197
  256. package/SVF-doxygen/html/svf-ex_8cpp_source.html +204 -202
  257. package/package.json +1 -1
  258. package/svf/include/AE/Svfexe/AbstractInterpretation.h +28 -21
  259. package/svf/include/AE/Svfexe/SVFIR2AbsState.h +37 -67
  260. package/svf/lib/AE/Svfexe/AbstractInterpretation.cpp +153 -169
  261. package/svf/lib/AE/Svfexe/BufOverflowChecker.cpp +64 -54
  262. package/svf/lib/AE/Svfexe/SVFIR2AbsState.cpp +134 -146
  263. package/svf-llvm/tools/Example/svf-ex.cpp +13 -12
  264. package/svf/lib/AE/Core/SVFIR2Relation.cpp +0 -193
@@ -206,7 +206,7 @@ $(function() {
206
206
  <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
207
207
  <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a3a12a86670eef9cd22b1853c7c6fa208">propagateStateIfFeasible</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* curNode);</div>
208
208
  <div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; </div>
209
- <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a12cba4105a721ff73a7b13b70ee9c5b2">hasBranchES</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntraCFGEdge.html">IntraCFGEdge</a>* intraEdge, <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; es);</div>
209
+ <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a47e6ec5a99f0818c23a13976e553a848">isBranchFeasible</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntraCFGEdge.html">IntraCFGEdge</a>* intraEdge, <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as);</div>
210
210
  <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; </div>
211
211
  <div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a80d663262a8d909ef5756391cdd82246">handleWTONode</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* node);</div>
212
212
  <div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; </div>
@@ -222,226 +222,239 @@ $(function() {
222
222
  <div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; </div>
223
223
  <div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#af966130d5cb8d7db786c3ec056cc2dd4">SkipRecursiveCall</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callnode);</div>
224
224
  <div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; </div>
225
- <div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a2b0a2f7a662909d999634d0ec08cb29c">SkipRecursiveFunc</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFFunction.html">SVFFunction</a>* func);</div>
226
- <div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; </div>
227
- <div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a01650b2a16e327408ce180b2d1bc9631">hasCmpBranchES</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CmpStmt.html">CmpStmt</a>* cmpStmt, <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> succ,</div>
228
- <div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; es);</div>
229
- <div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; </div>
230
- <div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#ac3f8e4602627135c6fb03ba843893d6a">hasSwitchBranchES</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFVar.html">SVFVar</a>* var, <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> succ,</div>
231
- <div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; es);</div>
232
- <div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; </div>
233
- <div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; </div>
234
- <div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a6cac9b69d85111a5a26373ec848a3282">handleExtAPI</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *call);</div>
235
- <div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; </div>
236
- <div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#ab18fe64117c1692d94ce0e0ee44e940b">initExtFunMap</a>();</div>
237
- <div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; </div>
238
- <div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a0e8b546f608417e218c2fab5a5893135">getAllocaInstByteSize</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1AddrStmt.html">AddrStmt</a> *addr);</div>
239
- <div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; </div>
240
- <div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a7dfd11b987d9ff9528277e23191ed95d">strRead</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* rhs);</div>
241
- <div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; </div>
242
- <div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <a class="code" href="structSVF_1_1AbstractValue.html">AbstractValue</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a5bba3c0570d73acc743742a30af1b0b4">getStrlen</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVF::SVFValue</a> *strValue);</div>
243
- <div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; </div>
244
- <div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="structSVF_1_1AbstractValue.html">AbstractValue</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#ac9e8bc430cd530e47811e28f5a9fe963">traceMemoryAllocationSize</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a> *value);</div>
245
- <div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#ac941d1eb9b1216c8334d0685a471b774">handleStrcpy</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *call);</div>
246
- <div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#acba90e968cebacca3da78ac765df33ef">handleStrcat</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *call);</div>
247
- <div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#adf02c5bf1b86f00163b114a78e03120c">handleMemcpy</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* dst, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* src, <a class="code" href="structSVF_1_1AbstractValue.html">AbstractValue</a> len, <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> start_idx);</div>
248
- <div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a568e2247536de76694dabfc5a5052b57">handleMemset</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* dst, <a class="code" href="structSVF_1_1AbstractValue.html">AbstractValue</a> elem, <a class="code" href="structSVF_1_1AbstractValue.html">AbstractValue</a> len);</div>
249
- <div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; </div>
250
- <div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFType.html">SVFType</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#a2057e8e1c0aaf39e74f0a8fb2a1b580c">getPointeeElement</a>(<a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>);</div>
251
- <div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; </div>
252
- <div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#aae7c67e9c423599442be721b55cd7279">collectCheckPoint</a>();</div>
253
- <div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#acea2c82e5b463db6f097e9a9641f601b">checkPointAllSet</a>();</div>
254
- <div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="comment">// helper functions for traceMemoryAllocationSize and canSafelyAccessMemory</span></div>
255
- <div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a29fe7c63c61a7aec8ae1477a061f5bf2">AccessMemoryViaRetNode</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *callnode, <a class="code" href="classSVF_1_1FILOWorkList.html">SVF::FILOWorkList&lt;const SVFValue *&gt;</a>&amp; worklist, <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFValue *&gt;</a>&amp; visited);</div>
256
- <div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a550c12360c2149ba0e55bdf4cf7b8dd0">AccessMemoryViaCopyStmt</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CopyStmt.html">CopyStmt</a> *<a class="code" href="cJSON_8cpp.html#a7669ee67a0563250c1efaa24d130e1ac">copy</a>, <a class="code" href="classSVF_1_1FILOWorkList.html">SVF::FILOWorkList&lt;const SVFValue *&gt;</a>&amp; worklist, <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFValue *&gt;</a>&amp; visited);</div>
257
- <div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#ac60581a57407fa4c65b1975f5be687b8">AccessMemoryViaLoadStmt</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1LoadStmt.html">LoadStmt</a> *load, <a class="code" href="classSVF_1_1FILOWorkList.html">SVF::FILOWorkList&lt;const SVFValue *&gt;</a>&amp; worklist, <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFValue *&gt;</a>&amp; visited);</div>
258
- <div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a048e203517ac727e6fe0653e1f24052c">AccessMemoryViaCallArgs</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFArgument.html">SVF::SVFArgument</a> *arg, <a class="code" href="classSVF_1_1FILOWorkList.html">SVF::FILOWorkList&lt;const SVFValue *&gt;</a>&amp; worklist, <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFValue *&gt;</a>&amp; visited);</div>
259
- <div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; </div>
260
- <div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; </div>
261
- <div class="line"><a name="l00342"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a618fc324a6c205d7e1b471bd850377a9"> 342</a></span>&#160; <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#a618fc324a6c205d7e1b471bd850377a9">_svfir</a>;</div>
262
- <div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#adf3fad75a4f96aefe5c25e3405509fbe"> 343</a></span>&#160; <a class="code" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#adf3fad75a4f96aefe5c25e3405509fbe">_callgraph</a>;</div>
263
- <div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a9c592b91a1e3d72ada730387232a2fcf"> 345</a></span>&#160; <a class="code" href="classSVF_1_1SVFIR2AbsState.html">SVFIR2AbsState</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#a9c592b91a1e3d72ada730387232a2fcf">_svfir2AbsState</a>;</div>
264
- <div class="line"><a name="l00346"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a00154ebaceda1be070b38803c1a82535"> 346</a></span>&#160; <a class="code" href="classSVF_1_1AbstractInterpretation.html#ac0bcb586dffbfadeb33f501cafbaa1c9">AEAPI</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#a00154ebaceda1be070b38803c1a82535">_api</a>{<span class="keyword">nullptr</span>};</div>
265
- <div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; </div>
266
- <div class="line"><a name="l00348"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#ab988e460fe92f0ba3c4cbee8e0c480a0"> 348</a></span>&#160; <a class="code" href="classSVF_1_1ICFG.html">ICFG</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#ab988e460fe92f0ba3c4cbee8e0c480a0">_icfg</a>;</div>
267
- <div class="line"><a name="l00349"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a75e493e6b9db3e29428794432d293bc2"> 349</a></span>&#160; <a class="code" href="classSVF_1_1AEStat.html">AEStat</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#a75e493e6b9db3e29428794432d293bc2">_stat</a>;</div>
268
- <div class="line"><a name="l00350"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a5d3b15c3cdb9c8e91b942924bf8aee21"> 350</a></span>&#160; <a class="code" href="namespaceSVF.html#a41375daa7cc99317d0aa2a21dc643b88">AEKind</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a5d3b15c3cdb9c8e91b942924bf8aee21">_kind</a>;</div>
269
- <div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; </div>
270
- <div class="line"><a name="l00352"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a2a5e0a88ebef4ae740983726e7f1b5eb"> 352</a></span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a2a5e0a88ebef4ae740983726e7f1b5eb">_bugLoc</a>;</div>
271
- <div class="line"><a name="l00353"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a8e4f0c5f527e321369a19a0b37124079"> 353</a></span>&#160; <a class="code" href="classSVF_1_1SVFBugReport.html">SVFBugReport</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a8e4f0c5f527e321369a19a0b37124079">_recoder</a>;</div>
272
- <div class="line"><a name="l00354"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a9885b50cf28b65bebb488442085fab26"> 354</a></span>&#160; std::vector&lt;const CallICFGNode*&gt; <a class="code" href="classSVF_1_1AbstractInterpretation.html#a9885b50cf28b65bebb488442085fab26">_callSiteStack</a>;</div>
273
- <div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a09aa739395388f64fcb3d539d58d2041"> 355</a></span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const ICFGNode*, std::string&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a09aa739395388f64fcb3d539d58d2041">_nodeToBugInfo</a>;</div>
274
- <div class="line"><a name="l00356"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#abc0d4715611b8f4a61e1da82658ef95f"> 356</a></span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html">AndersenWaveDiff</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#abc0d4715611b8f4a61e1da82658ef95f">_ander</a>;</div>
275
- <div class="line"><a name="l00357"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#af41aa555a5b607ae7700263ac72f8dbb"> 357</a></span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFFunction*, ICFGWTO*&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#af41aa555a5b607ae7700263ac72f8dbb">_funcToWTO</a>;</div>
276
- <div class="line"><a name="l00358"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a9b5e58476c372570551da971d22c5c02"> 358</a></span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFFunction*&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a9b5e58476c372570551da971d22c5c02">_recursiveFuns</a>;</div>
277
- <div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; </div>
278
- <div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<span class="keyword">private</span>:</div>
279
- <div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="comment">// helper functions in handleCallSite</span></div>
280
- <div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a2eb84610d9a9eca6565e4a8a1e1156d1">isExtCall</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
281
- <div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a271d3ac0f8725108e324b5c391988c49">extCallPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
282
- <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a0e2af184576d9673f535fe80deb944f6">isRecursiveCall</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
283
- <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a0e36af6b826b9eacf183aebd0b8c5f1f">recursiveCallPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
284
- <div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a14c758bcbbc7d8197c5fa1851720b663">isDirectCall</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
285
- <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a2a317e4263c4d8acbc5088a18a3849aa">directCallFunPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
286
- <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a330379cef58219f72f4ec4c12a6d86ea">isIndirectCall</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
287
- <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a8a711cc127a422b4fa8e8fd781811c3f">indirectCallFunPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
288
- <div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; </div>
289
- <div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;<span class="keyword">protected</span>:</div>
290
- <div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="comment">// helper functions in handleCycle</span></div>
291
- <div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a1b8e1e0cc9803687a0eb951015ac59af">widenFixpointPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* cycle_head,</div>
292
- <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; pre_es);</div>
293
- <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a8a4b07e6c999bea0b0e69dcab0346933">narrowFixpointPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* cycle_head,</div>
294
- <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; pre_es);</div>
295
- <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; </div>
296
- <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;<span class="keyword">protected</span>:</div>
297
- <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="comment">// there data should be shared with subclasses</span></div>
298
- <div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#aa27d0ef684deec1f5385fdb0d4c64827"> 380</a></span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt;<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>, std::function&lt;void(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallSite.html">CallSite</a> &amp;)&gt;&gt; <a class="code" href="classSVF_1_1AbstractInterpretation.html#aa27d0ef684deec1f5385fdb0d4c64827">_func_map</a>;</div>
299
- <div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a219313e979d779221116c1bc45becc1b"> 381</a></span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const CallICFGNode*&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a219313e979d779221116c1bc45becc1b">_checkpoints</a>;</div>
300
- <div class="line"><a name="l00382"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a2a1e1b72ed740cef4c3e57e3e32c3f75"> 382</a></span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a2a1e1b72ed740cef4c3e57e3e32c3f75">_checkpoint_names</a>;</div>
301
- <div class="line"><a name="l00383"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#ac97c5979efd3049d18b6edb83f359a20"> 383</a></span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const ICFGNode*, AbstractState&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#ac97c5979efd3049d18b6edb83f359a20">_preAbstractTrace</a>;</div>
302
- <div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a5bcfbde64bd51082e8c587e0bc708377"> 384</a></span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const ICFGNode*, AbstractState&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a5bcfbde64bd51082e8c587e0bc708377">_postAbstractTrace</a>;</div>
303
- <div class="line"><a name="l00385"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#afefc0098ecd9bc01ce270a4a6f251b0c"> 385</a></span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#afefc0098ecd9bc01ce270a4a6f251b0c">_moduleName</a>;</div>
304
- <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;};</div>
305
- <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;}</div>
225
+ <div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; </div>
226
+ <div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#aae9a6382cb20ddc6837ea086fbeb96bc">isCmpBranchFeasible</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CmpStmt.html">CmpStmt</a>* cmpStmt, <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> succ,</div>
227
+ <div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as);</div>
228
+ <div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; </div>
229
+ <div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a58a20f54a14628ca4e94cbb608b307af">isSwitchBranchFeasible</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFVar.html">SVFVar</a>* var, <a class="code" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> succ,</div>
230
+ <div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as);</div>
231
+ <div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; </div>
232
+ <div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; </div>
233
+ <div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a6cac9b69d85111a5a26373ec848a3282">handleExtAPI</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *call);</div>
234
+ <div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; </div>
235
+ <div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#ab18fe64117c1692d94ce0e0ee44e940b">initExtFunMap</a>();</div>
236
+ <div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; </div>
237
+ <div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a60a21908a08864f01a66a3ac113c4a35">getAllocaInstByteSize</a>(<a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as, <span class="keyword">const</span> <a class="code" href="classSVF_1_1AddrStmt.html">AddrStmt</a> *addr);</div>
238
+ <div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; </div>
239
+ <div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a5e687d6247e396f77d523fb55e5b5627">strRead</a>(<a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as,<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* rhs);</div>
240
+ <div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; </div>
241
+ <div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <a class="code" href="structSVF_1_1AbstractValue.html">AbstractValue</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#ab076eddb7908768126c190c23b91eb85">getStrlen</a>(<a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVF::SVFValue</a> *strValue);</div>
242
+ <div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; </div>
243
+ <div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="code" href="structSVF_1_1AbstractValue.html">AbstractValue</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a90b54f715dfa24657bd3e058617bffac">traceMemoryAllocationSize</a>(<a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a> *value);</div>
244
+ <div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#ac941d1eb9b1216c8334d0685a471b774">handleStrcpy</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *call);</div>
245
+ <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#acba90e968cebacca3da78ac765df33ef">handleStrcat</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *call);</div>
246
+ <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a1c1d065a7cbee526ecdefdb1407c3c83">handleMemcpy</a>(<a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* dst, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* src, <a class="code" href="structSVF_1_1AbstractValue.html">AbstractValue</a> len, <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> start_idx);</div>
247
+ <div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#ab50b8867cfb0feb3ae0727e1c11f5d25">handleMemset</a>(<a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as, <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* dst, <a class="code" href="structSVF_1_1AbstractValue.html">AbstractValue</a> elem, <a class="code" href="structSVF_1_1AbstractValue.html">AbstractValue</a> len);</div>
248
+ <div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; </div>
249
+ <div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFType.html">SVFType</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#abb8dd7424d62b56b899d3f4d218eeaac">getPointeeElement</a>(<a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as, <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> <span class="keywordtype">id</span>);</div>
250
+ <div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; </div>
251
+ <div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#aae7c67e9c423599442be721b55cd7279">collectCheckPoint</a>();</div>
252
+ <div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#acea2c82e5b463db6f097e9a9641f601b">checkPointAllSet</a>();</div>
253
+ <div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="comment">// helper functions for traceMemoryAllocationSize and canSafelyAccessMemory</span></div>
254
+ <div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a29fe7c63c61a7aec8ae1477a061f5bf2">AccessMemoryViaRetNode</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *callnode, <a class="code" href="classSVF_1_1FILOWorkList.html">SVF::FILOWorkList&lt;const SVFValue *&gt;</a>&amp; worklist, <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFValue *&gt;</a>&amp; visited);</div>
255
+ <div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a550c12360c2149ba0e55bdf4cf7b8dd0">AccessMemoryViaCopyStmt</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CopyStmt.html">CopyStmt</a> *<a class="code" href="cJSON_8cpp.html#a7669ee67a0563250c1efaa24d130e1ac">copy</a>, <a class="code" href="classSVF_1_1FILOWorkList.html">SVF::FILOWorkList&lt;const SVFValue *&gt;</a>&amp; worklist, <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFValue *&gt;</a>&amp; visited);</div>
256
+ <div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#af7f57fc112a86d2710d011d37b496350">AccessMemoryViaLoadStmt</a>(<a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; as, <span class="keyword">const</span> <a class="code" href="classSVF_1_1LoadStmt.html">LoadStmt</a> *load, <a class="code" href="classSVF_1_1FILOWorkList.html">SVF::FILOWorkList&lt;const SVFValue *&gt;</a>&amp; worklist, <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFValue *&gt;</a>&amp; visited);</div>
257
+ <div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a048e203517ac727e6fe0653e1f24052c">AccessMemoryViaCallArgs</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFArgument.html">SVF::SVFArgument</a> *arg, <a class="code" href="classSVF_1_1FILOWorkList.html">SVF::FILOWorkList&lt;const SVFValue *&gt;</a>&amp; worklist, <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFValue *&gt;</a>&amp; visited);</div>
258
+ <div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; </div>
259
+ <div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; </div>
260
+ <div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a618fc324a6c205d7e1b471bd850377a9"> 336</a></span>&#160; <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#a618fc324a6c205d7e1b471bd850377a9">_svfir</a>;</div>
261
+ <div class="line"><a name="l00337"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#adf3fad75a4f96aefe5c25e3405509fbe"> 337</a></span>&#160; <a class="code" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#adf3fad75a4f96aefe5c25e3405509fbe">_callgraph</a>;</div>
262
+ <div class="line"><a name="l00339"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a9c592b91a1e3d72ada730387232a2fcf"> 339</a></span>&#160; <a class="code" href="classSVF_1_1SVFIR2AbsState.html">SVFIR2AbsState</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#a9c592b91a1e3d72ada730387232a2fcf">_svfir2AbsState</a>;</div>
263
+ <div class="line"><a name="l00340"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a00154ebaceda1be070b38803c1a82535"> 340</a></span>&#160; <a class="code" href="classSVF_1_1AbstractInterpretation.html#ac0bcb586dffbfadeb33f501cafbaa1c9">AEAPI</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#a00154ebaceda1be070b38803c1a82535">_api</a>{<span class="keyword">nullptr</span>};</div>
264
+ <div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; </div>
265
+ <div class="line"><a name="l00342"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#ab988e460fe92f0ba3c4cbee8e0c480a0"> 342</a></span>&#160; <a class="code" href="classSVF_1_1ICFG.html">ICFG</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#ab988e460fe92f0ba3c4cbee8e0c480a0">_icfg</a>;</div>
266
+ <div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a75e493e6b9db3e29428794432d293bc2"> 343</a></span>&#160; <a class="code" href="classSVF_1_1AEStat.html">AEStat</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#a75e493e6b9db3e29428794432d293bc2">_stat</a>;</div>
267
+ <div class="line"><a name="l00344"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a5d3b15c3cdb9c8e91b942924bf8aee21"> 344</a></span>&#160; <a class="code" href="namespaceSVF.html#a41375daa7cc99317d0aa2a21dc643b88">AEKind</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a5d3b15c3cdb9c8e91b942924bf8aee21">_kind</a>;</div>
268
+ <div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; </div>
269
+ <div class="line"><a name="l00346"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a2a5e0a88ebef4ae740983726e7f1b5eb"> 346</a></span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a2a5e0a88ebef4ae740983726e7f1b5eb">_bugLoc</a>;</div>
270
+ <div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a8e4f0c5f527e321369a19a0b37124079"> 347</a></span>&#160; <a class="code" href="classSVF_1_1SVFBugReport.html">SVFBugReport</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a8e4f0c5f527e321369a19a0b37124079">_recoder</a>;</div>
271
+ <div class="line"><a name="l00348"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a9885b50cf28b65bebb488442085fab26"> 348</a></span>&#160; std::vector&lt;const CallICFGNode*&gt; <a class="code" href="classSVF_1_1AbstractInterpretation.html#a9885b50cf28b65bebb488442085fab26">_callSiteStack</a>;</div>
272
+ <div class="line"><a name="l00349"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a09aa739395388f64fcb3d539d58d2041"> 349</a></span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const ICFGNode*, std::string&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a09aa739395388f64fcb3d539d58d2041">_nodeToBugInfo</a>;</div>
273
+ <div class="line"><a name="l00350"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#abc0d4715611b8f4a61e1da82658ef95f"> 350</a></span>&#160; <a class="code" href="classSVF_1_1AndersenWaveDiff.html">AndersenWaveDiff</a>* <a class="code" href="classSVF_1_1AbstractInterpretation.html#abc0d4715611b8f4a61e1da82658ef95f">_ander</a>;</div>
274
+ <div class="line"><a name="l00351"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#af41aa555a5b607ae7700263ac72f8dbb"> 351</a></span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const SVFFunction*, ICFGWTO*&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#af41aa555a5b607ae7700263ac72f8dbb">_funcToWTO</a>;</div>
275
+ <div class="line"><a name="l00352"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a9b5e58476c372570551da971d22c5c02"> 352</a></span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const SVFFunction*&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a9b5e58476c372570551da971d22c5c02">_recursiveFuns</a>;</div>
276
+ <div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; </div>
277
+ <div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;<span class="keyword">private</span>:</div>
278
+ <div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="comment">// helper functions in handleCallSite</span></div>
279
+ <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a2eb84610d9a9eca6565e4a8a1e1156d1">isExtCall</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
280
+ <div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a271d3ac0f8725108e324b5c391988c49">extCallPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
281
+ <div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a0e2af184576d9673f535fe80deb944f6">isRecursiveCall</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
282
+ <div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a0e36af6b826b9eacf183aebd0b8c5f1f">recursiveCallPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
283
+ <div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a14c758bcbbc7d8197c5fa1851720b663">isDirectCall</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
284
+ <div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a2a317e4263c4d8acbc5088a18a3849aa">directCallFunPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
285
+ <div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a330379cef58219f72f4ec4c12a6d86ea">isIndirectCall</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
286
+ <div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a8a711cc127a422b4fa8e8fd781811c3f">indirectCallFunPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* callNode);</div>
287
+ <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; </div>
288
+ <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;<span class="keyword">protected</span>:</div>
289
+ <div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="comment">// helper functions in handleCycle</span></div>
290
+ <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a1b8e1e0cc9803687a0eb951015ac59af">widenFixpointPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* cycle_head,</div>
291
+ <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; pre_es);</div>
292
+ <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a8a4b07e6c999bea0b0e69dcab0346933">narrowFixpointPass</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* cycle_head,</div>
293
+ <div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; pre_es);</div>
294
+ <div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; </div>
295
+ <div class="line"><a name="l00372"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a57e4ee3fde79c408dffe98894210d7c9"> 372</a></span>&#160; <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>&amp; <a class="code" href="classSVF_1_1AbstractInterpretation.html#a57e4ee3fde79c408dffe98894210d7c9">getAbsState</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* node)</div>
296
+ <div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; {</div>
297
+ <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keyword">const</span> <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* repNode = <a class="code" href="classSVF_1_1AbstractInterpretation.html#ab988e460fe92f0ba3c4cbee8e0c480a0">_icfg</a>-&gt;<a class="code" href="classSVF_1_1ICFG.html#a684340fd9fc7cbbcb259fff1684f8b05">getRepNode</a>(node);</div>
298
+ <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractInterpretation.html#a6371af4c3c07ced109be8c2f28dcaa09">_postAbsTrace</a>.count(repNode) == 0)</div>
299
+ <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; {</div>
300
+ <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; assert(0 &amp;&amp; <span class="stringliteral">&quot;No preAbsTrace for this node&quot;</span>);</div>
301
+ <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; }</div>
302
+ <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">else</span></div>
303
+ <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; {</div>
304
+ <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a6371af4c3c07ced109be8c2f28dcaa09">_postAbsTrace</a>[repNode];</div>
305
+ <div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; }</div>
306
+ <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; }</div>
307
+ <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; </div>
308
+ <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;<span class="keyword">protected</span>:</div>
309
+ <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="comment">// there data should be shared with subclasses</span></div>
310
+ <div class="line"><a name="l00387"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#aa27d0ef684deec1f5385fdb0d4c64827"> 387</a></span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt;<a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>, std::function&lt;void(<span class="keyword">const</span> <a class="code" href="classSVF_1_1CallSite.html">CallSite</a> &amp;)&gt;&gt; <a class="code" href="classSVF_1_1AbstractInterpretation.html#aa27d0ef684deec1f5385fdb0d4c64827">_func_map</a>;</div>
311
+ <div class="line"><a name="l00388"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a219313e979d779221116c1bc45becc1b"> 388</a></span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;const CallICFGNode*&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a219313e979d779221116c1bc45becc1b">_checkpoints</a>;</div>
312
+ <div class="line"><a name="l00389"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a2a1e1b72ed740cef4c3e57e3e32c3f75"> 389</a></span>&#160; <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set&lt;std::string&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a2a1e1b72ed740cef4c3e57e3e32c3f75">_checkpoint_names</a>;</div>
313
+ <div class="line"><a name="l00390"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a16ac184f8cbbeba3622ee9e5f84d4bec"> 390</a></span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const ICFGNode*, AbstractState&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a16ac184f8cbbeba3622ee9e5f84d4bec">_preAbsTrace</a>;</div>
314
+ <div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a6371af4c3c07ced109be8c2f28dcaa09"> 391</a></span>&#160; <a class="code" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map&lt;const ICFGNode*, AbstractState&gt;</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a6371af4c3c07ced109be8c2f28dcaa09">_postAbsTrace</a>;</div>
315
+ <div class="line"><a name="l00392"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#afefc0098ecd9bc01ce270a4a6f251b0c"> 392</a></span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1AbstractInterpretation.html#afefc0098ecd9bc01ce270a4a6f251b0c">_moduleName</a>;</div>
316
+ <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;};</div>
317
+ <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;}</div>
306
318
  </div><!-- fragment --></div><!-- contents -->
307
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_abc0d4715611b8f4a61e1da82658ef95f"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#abc0d4715611b8f4a61e1da82658ef95f">SVF::AbstractInterpretation::_ander</a></div><div class="ttdeci">AndersenWaveDiff * _ander</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00356">AbstractInterpretation.h:356</a></div></div>
319
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_abc0d4715611b8f4a61e1da82658ef95f"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#abc0d4715611b8f4a61e1da82658ef95f">SVF::AbstractInterpretation::_ander</a></div><div class="ttdeci">AndersenWaveDiff * _ander</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00350">AbstractInterpretation.h:350</a></div></div>
308
320
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html">SVF::AbstractInterpretation</a></div><div class="ttdoc">AbstractInterpretation is same as Abstract Execution.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00107">AbstractInterpretation.h:107</a></div></div>
309
321
  <div class="ttc" id="aclassSVF_1_1CopyStmt_html"><div class="ttname"><a href="classSVF_1_1CopyStmt.html">SVF::CopyStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00364">SVFStatements.h:364</a></div></div>
310
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a8a711cc127a422b4fa8e8fd781811c3f"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a8a711cc127a422b4fa8e8fd781811c3f">SVF::AbstractInterpretation::indirectCallFunPass</a></div><div class="ttdeci">virtual void indirectCallFunPass(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00644">AbstractInterpretation.cpp:644</a></div></div>
311
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_afefc0098ecd9bc01ce270a4a6f251b0c"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#afefc0098ecd9bc01ce270a4a6f251b0c">SVF::AbstractInterpretation::_moduleName</a></div><div class="ttdeci">std::string _moduleName</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00385">AbstractInterpretation.h:385</a></div></div>
312
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a75e493e6b9db3e29428794432d293bc2"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a75e493e6b9db3e29428794432d293bc2">SVF::AbstractInterpretation::_stat</a></div><div class="ttdeci">AEStat * _stat</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00349">AbstractInterpretation.h:349</a></div></div>
313
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a14c758bcbbc7d8197c5fa1851720b663"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a14c758bcbbc7d8197c5fa1851720b663">SVF::AbstractInterpretation::isDirectCall</a></div><div class="ttdeci">virtual bool isDirectCall(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00617">AbstractInterpretation.cpp:617</a></div></div>
322
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a8a711cc127a422b4fa8e8fd781811c3f"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a8a711cc127a422b4fa8e8fd781811c3f">SVF::AbstractInterpretation::indirectCallFunPass</a></div><div class="ttdeci">virtual void indirectCallFunPass(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00642">AbstractInterpretation.cpp:642</a></div></div>
323
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_aae9a6382cb20ddc6837ea086fbeb96bc"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#aae9a6382cb20ddc6837ea086fbeb96bc">SVF::AbstractInterpretation::isCmpBranchFeasible</a></div><div class="ttdeci">bool isCmpBranchFeasible(const CmpStmt *cmpStmt, s64_t succ, AbstractState &amp;as)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00225">AbstractInterpretation.cpp:225</a></div></div>
324
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_afefc0098ecd9bc01ce270a4a6f251b0c"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#afefc0098ecd9bc01ce270a4a6f251b0c">SVF::AbstractInterpretation::_moduleName</a></div><div class="ttdeci">std::string _moduleName</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00392">AbstractInterpretation.h:392</a></div></div>
325
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a75e493e6b9db3e29428794432d293bc2"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a75e493e6b9db3e29428794432d293bc2">SVF::AbstractInterpretation::_stat</a></div><div class="ttdeci">AEStat * _stat</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00343">AbstractInterpretation.h:343</a></div></div>
326
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a14c758bcbbc7d8197c5fa1851720b663"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a14c758bcbbc7d8197c5fa1851720b663">SVF::AbstractInterpretation::isDirectCall</a></div><div class="ttdeci">virtual bool isDirectCall(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00615">AbstractInterpretation.cpp:615</a></div></div>
314
327
  <div class="ttc" id="aclassSVF_1_1AddrStmt_html"><div class="ttname"><a href="classSVF_1_1AddrStmt.html">SVF::AddrStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00313">SVFStatements.h:313</a></div></div>
315
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_adf3fad75a4f96aefe5c25e3405509fbe"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#adf3fad75a4f96aefe5c25e3405509fbe">SVF::AbstractInterpretation::_callgraph</a></div><div class="ttdeci">PTACallGraph * _callgraph</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00343">AbstractInterpretation.h:343</a></div></div>
328
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_adf3fad75a4f96aefe5c25e3405509fbe"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#adf3fad75a4f96aefe5c25e3405509fbe">SVF::AbstractInterpretation::_callgraph</a></div><div class="ttdeci">PTACallGraph * _callgraph</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00337">AbstractInterpretation.h:337</a></div></div>
316
329
  <div class="ttc" id="aclassSVF_1_1SVFStat_html_abd7a79d1fe50110a0c1d448027492669"><div class="ttname"><a href="classSVF_1_1SVFStat.html#abd7a79d1fe50110a0c1d448027492669">SVF::SVFStat::startTime</a></div><div class="ttdeci">double startTime</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00080">SVFStat.h:80</a></div></div>
317
330
  <div class="ttc" id="anamespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set&lt; Key, Hash, KeyEqual, Allocator &gt; Set</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00096">GeneralType.h:96</a></div></div>
318
331
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a738d1768c632f86d04599ec1aa53952a"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a738d1768c632f86d04599ec1aa53952a">SVF::AbstractInterpretation::markRecursiveFuns</a></div><div class="ttdeci">void markRecursiveFuns()</div><div class="ttdoc">mark recursive functions by detecting SCC in callgraph</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00138">AbstractInterpretation.cpp:138</a></div></div>
319
332
  <div class="ttc" id="aclassSVF_1_1AEStat_html_a4b1f6388893e6aaef1acd411972cde19"><div class="ttname"><a href="classSVF_1_1AEStat.html#a4b1f6388893e6aaef1acd411972cde19">SVF::AEStat::memUsage</a></div><div class="ttdeci">std::string memUsage</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00076">AbstractInterpretation.h:76</a></div></div>
320
333
  <div class="ttc" id="anamespaceSVF_html"><div class="ttname"><a href="namespaceSVF.html">SVF</a></div><div class="ttdoc">for isBitcode</div><div class="ttdef"><b>Definition:</b> <a href="BasicTypes_8h_source.html#l00067">BasicTypes.h:67</a></div></div>
321
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a5bba3c0570d73acc743742a30af1b0b4"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a5bba3c0570d73acc743742a30af1b0b4">SVF::AbstractInterpretation::getStrlen</a></div><div class="ttdeci">AbstractValue getStrlen(const SVF::SVFValue *strValue)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01464">AbstractInterpretation.cpp:1464</a></div></div>
322
334
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_aae29a8da31fddd069cb0e19cc2f78d46"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#aae29a8da31fddd069cb0e19cc2f78d46">SVF::AbstractInterpretation::~AbstractInterpretation</a></div><div class="ttdeci">virtual ~AbstractInterpretation()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00129">AbstractInterpretation.cpp:129</a></div></div>
323
335
  <div class="ttc" id="anamespaceSVF_html_a41375daa7cc99317d0aa2a21dc643b88a53d18d0ea8b11173db3d2f60f838ffe1"><div class="ttname"><a href="namespaceSVF.html#a41375daa7cc99317d0aa2a21dc643b88a53d18d0ea8b11173db3d2f60f838ffe1">SVF::AEKind::AbstractExecution</a></div><div class="ttdeci">@ AbstractExecution</div></div>
336
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a1c1d065a7cbee526ecdefdb1407c3c83"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a1c1d065a7cbee526ecdefdb1407c3c83">SVF::AbstractInterpretation::handleMemcpy</a></div><div class="ttdeci">virtual void handleMemcpy(AbstractState &amp;as, const SVFValue *dst, const SVFValue *src, AbstractValue len, u32_t start_idx)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01546">AbstractInterpretation.cpp:1546</a></div></div>
324
337
  <div class="ttc" id="aclassSVF_1_1AEStat_html_a03a5abacf309902ce2bb9a9733ff195f"><div class="ttname"><a href="classSVF_1_1AEStat.html#a03a5abacf309902ce2bb9a9733ff195f">SVF::AEStat::count</a></div><div class="ttdeci">s32_t count</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00074">AbstractInterpretation.h:74</a></div></div>
325
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2b0a2f7a662909d999634d0ec08cb29c"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2b0a2f7a662909d999634d0ec08cb29c">SVF::AbstractInterpretation::SkipRecursiveFunc</a></div><div class="ttdeci">virtual void SkipRecursiveFunc(const SVFFunction *func)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00916">AbstractInterpretation.cpp:916</a></div></div>
326
338
  <div class="ttc" id="aclassSVF_1_1SVFBugReport_html"><div class="ttname"><a href="classSVF_1_1SVFBugReport.html">SVF::SVFBugReport</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBugReport_8h_source.html#l00288">SVFBugReport.h:288</a></div></div>
327
339
  <div class="ttc" id="aclassSVF_1_1CmpStmt_html"><div class="ttname"><a href="classSVF_1_1CmpStmt.html">SVF::CmpStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00936">SVFStatements.h:936</a></div></div>
328
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a5d3b15c3cdb9c8e91b942924bf8aee21"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a5d3b15c3cdb9c8e91b942924bf8aee21">SVF::AbstractInterpretation::_kind</a></div><div class="ttdeci">AEKind _kind</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00350">AbstractInterpretation.h:350</a></div></div>
340
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a5d3b15c3cdb9c8e91b942924bf8aee21"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a5d3b15c3cdb9c8e91b942924bf8aee21">SVF::AbstractInterpretation::_kind</a></div><div class="ttdeci">AEKind _kind</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00344">AbstractInterpretation.h:344</a></div></div>
329
341
  <div class="ttc" id="aclassSVF_1_1AEStat_html_a2387fafd4d8f7775cb4ebf7b41b07bf8"><div class="ttname"><a href="classSVF_1_1AEStat.html#a2387fafd4d8f7775cb4ebf7b41b07bf8">SVF::AEStat::bugStr</a></div><div class="ttdeci">std::string bugStr</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00077">AbstractInterpretation.h:77</a></div></div>
342
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a6371af4c3c07ced109be8c2f28dcaa09"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a6371af4c3c07ced109be8c2f28dcaa09">SVF::AbstractInterpretation::_postAbsTrace</a></div><div class="ttdeci">Map&lt; const ICFGNode *, AbstractState &gt; _postAbsTrace</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00391">AbstractInterpretation.h:391</a></div></div>
330
343
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a276182afcfe95235ebd2d452424e87e7"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a276182afcfe95235ebd2d452424e87e7">SVF::AbstractInterpretation::handleGlobalNode</a></div><div class="ttdeci">virtual void handleGlobalNode()</div><div class="ttdoc">Global ICFGNode is handled at the entry of the program,.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00164">AbstractInterpretation.cpp:164</a></div></div>
331
344
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a3c1b3407928ab39c68300e9d8f225d46"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a3c1b3407928ab39c68300e9d8f225d46">SVF::AbstractInterpretation::CallGraphSCC</a></div><div class="ttdeci">SCCDetection&lt; PTACallGraph * &gt; CallGraphSCC</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00114">AbstractInterpretation.h:114</a></div></div>
332
345
  <div class="ttc" id="aclassSVF_1_1AEStat_html_a9a3a1cc22654d3d259599005a5336923"><div class="ttname"><a href="classSVF_1_1AEStat.html#a9a3a1cc22654d3d259599005a5336923">SVF::AEStat::AEStat</a></div><div class="ttdeci">AEStat(AbstractInterpretation *ae)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00055">AbstractInterpretation.h:55</a></div></div>
333
346
  <div class="ttc" id="aclassSVF_1_1ICFGNode_html"><div class="ttname"><a href="classSVF_1_1ICFGNode.html">SVF::ICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00054">ICFGNode.h:54</a></div></div>
334
- <div class="ttc" id="aclassSVF_1_1AEStat_html_a798d07cc0a36ce0d9010ab86d1ec216f"><div class="ttname"><a href="classSVF_1_1AEStat.html#a798d07cc0a36ce0d9010ab86d1ec216f">SVF::AEStat::performStat</a></div><div class="ttdeci">void performStat() override</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01009">AbstractInterpretation.cpp:1009</a></div></div>
347
+ <div class="ttc" id="aclassSVF_1_1AEStat_html_a798d07cc0a36ce0d9010ab86d1ec216f"><div class="ttname"><a href="classSVF_1_1AEStat.html#a798d07cc0a36ce0d9010ab86d1ec216f">SVF::AEStat::performStat</a></div><div class="ttdeci">void performStat() override</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01000">AbstractInterpretation.cpp:1000</a></div></div>
348
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a5e687d6247e396f77d523fb55e5b5627"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a5e687d6247e396f77d523fb55e5b5627">SVF::AbstractInterpretation::strRead</a></div><div class="ttdeci">std::string strRead(AbstractState &amp;as, const SVFValue *rhs)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01135">AbstractInterpretation.cpp:1135</a></div></div>
335
349
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a13fdb4a6a6d09e3504fdad16b88616daad20658cd0f68b92583461b0b1f68d543"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a13fdb4a6a6d09e3504fdad16b88616daad20658cd0f68b92583461b0b1f68d543">SVF::AbstractInterpretation::UNCLASSIFIED</a></div><div class="ttdeci">@ UNCLASSIFIED</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00113">AbstractInterpretation.h:113</a></div></div>
336
350
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a80d663262a8d909ef5756391cdd82246"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a80d663262a8d909ef5756391cdd82246">SVF::AbstractInterpretation::handleWTONode</a></div><div class="ttdeci">virtual void handleWTONode(const ICFGNode *node)</div><div class="ttdoc">handle instructions in svf basic blocks</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00520">AbstractInterpretation.cpp:520</a></div></div>
337
351
  <div class="ttc" id="anamespaceSVF_html_a41375daa7cc99317d0aa2a21dc643b88aa5aa2ddadb5f0392b52dcbe487fe0ecd"><div class="ttname"><a href="namespaceSVF.html#a41375daa7cc99317d0aa2a21dc643b88aa5aa2ddadb5f0392b52dcbe487fe0ecd">SVF::AEKind::BufOverflowChecker</a></div><div class="ttdeci">@ BufOverflowChecker</div></div>
338
352
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a13fdb4a6a6d09e3504fdad16b88616daa93c9b2a9dc4bdfba5a7b23cfa5f80ccb"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a13fdb4a6a6d09e3504fdad16b88616daa93c9b2a9dc4bdfba5a7b23cfa5f80ccb">SVF::AbstractInterpretation::STRCPY</a></div><div class="ttdeci">@ STRCPY</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00113">AbstractInterpretation.h:113</a></div></div>
339
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a568e2247536de76694dabfc5a5052b57"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a568e2247536de76694dabfc5a5052b57">SVF::AbstractInterpretation::handleMemset</a></div><div class="ttdeci">virtual void handleMemset(const SVFValue *dst, AbstractValue elem, AbstractValue len)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01640">AbstractInterpretation.cpp:1640</a></div></div>
340
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a09aa739395388f64fcb3d539d58d2041"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a09aa739395388f64fcb3d539d58d2041">SVF::AbstractInterpretation::_nodeToBugInfo</a></div><div class="ttdeci">Map&lt; const ICFGNode *, std::string &gt; _nodeToBugInfo</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00355">AbstractInterpretation.h:355</a></div></div>
341
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a618fc324a6c205d7e1b471bd850377a9"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a618fc324a6c205d7e1b471bd850377a9">SVF::AbstractInterpretation::_svfir</a></div><div class="ttdeci">SVFIR * _svfir</div><div class="ttdoc">protected data members, also used in subclasses</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00342">AbstractInterpretation.h:342</a></div></div>
342
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a12cba4105a721ff73a7b13b70ee9c5b2"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a12cba4105a721ff73a7b13b70ee9c5b2">SVF::AbstractInterpretation::hasBranchES</a></div><div class="ttdeci">bool hasBranchES(const IntraCFGEdge *intraEdge, AbstractState &amp;es)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00493">AbstractInterpretation.cpp:493</a></div></div>
343
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2a1e1b72ed740cef4c3e57e3e32c3f75"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2a1e1b72ed740cef4c3e57e3e32c3f75">SVF::AbstractInterpretation::_checkpoint_names</a></div><div class="ttdeci">Set&lt; std::string &gt; _checkpoint_names</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00382">AbstractInterpretation.h:382</a></div></div>
344
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a0e8b546f608417e218c2fab5a5893135"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a0e8b546f608417e218c2fab5a5893135">SVF::AbstractInterpretation::getAllocaInstByteSize</a></div><div class="ttdeci">u32_t getAllocaInstByteSize(const AddrStmt *addr)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01296">AbstractInterpretation.cpp:1296</a></div></div>
353
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a09aa739395388f64fcb3d539d58d2041"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a09aa739395388f64fcb3d539d58d2041">SVF::AbstractInterpretation::_nodeToBugInfo</a></div><div class="ttdeci">Map&lt; const ICFGNode *, std::string &gt; _nodeToBugInfo</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00349">AbstractInterpretation.h:349</a></div></div>
354
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a618fc324a6c205d7e1b471bd850377a9"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a618fc324a6c205d7e1b471bd850377a9">SVF::AbstractInterpretation::_svfir</a></div><div class="ttdeci">SVFIR * _svfir</div><div class="ttdoc">protected data members, also used in subclasses</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00336">AbstractInterpretation.h:336</a></div></div>
355
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2a1e1b72ed740cef4c3e57e3e32c3f75"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2a1e1b72ed740cef4c3e57e3e32c3f75">SVF::AbstractInterpretation::_checkpoint_names</a></div><div class="ttdeci">Set&lt; std::string &gt; _checkpoint_names</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00389">AbstractInterpretation.h:389</a></div></div>
356
+ <div class="ttc" id="aclassSVF_1_1ICFG_html_a684340fd9fc7cbbcb259fff1684f8b05"><div class="ttname"><a href="classSVF_1_1ICFG.html#a684340fd9fc7cbbcb259fff1684f8b05">SVF::ICFG::getRepNode</a></div><div class="ttdeci">const ICFGNode * getRepNode(const ICFGNode *node) const</div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00226">ICFG.h:226</a></div></div>
345
357
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a4080994b793d9510c00cb3a0260e0a61"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a4080994b793d9510c00cb3a0260e0a61">SVF::AbstractInterpretation::AbstractInterpretation</a></div><div class="ttdeci">AbstractInterpretation()</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00123">AbstractInterpretation.cpp:123</a></div></div>
346
358
  <div class="ttc" id="aclassSVF_1_1SVFStat_html_ac9d390c417df6f6af6b274618b87010d"><div class="ttname"><a href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">SVF::SVFStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8cpp_source.html#l00047">SVFStat.cpp:47</a></div></div>
347
359
  <div class="ttc" id="aclassSVF_1_1AEStat_html_aeba2d77291837b9615c4f8b014cacfeb"><div class="ttname"><a href="classSVF_1_1AEStat.html#aeba2d77291837b9615c4f8b014cacfeb">SVF::AEStat::_ae</a></div><div class="ttdeci">AbstractInterpretation * _ae</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00073">AbstractInterpretation.h:73</a></div></div>
348
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a330379cef58219f72f4ec4c12a6d86ea"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a330379cef58219f72f4ec4c12a6d86ea">SVF::AbstractInterpretation::isIndirectCall</a></div><div class="ttdeci">virtual bool isIndirectCall(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00638">AbstractInterpretation.cpp:638</a></div></div>
360
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a330379cef58219f72f4ec4c12a6d86ea"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a330379cef58219f72f4ec4c12a6d86ea">SVF::AbstractInterpretation::isIndirectCall</a></div><div class="ttdeci">virtual bool isIndirectCall(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00636">AbstractInterpretation.cpp:636</a></div></div>
361
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a47e6ec5a99f0818c23a13976e553a848"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a47e6ec5a99f0818c23a13976e553a848">SVF::AbstractInterpretation::isBranchFeasible</a></div><div class="ttdeci">bool isBranchFeasible(const IntraCFGEdge *intraEdge, AbstractState &amp;as)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00490">AbstractInterpretation.cpp:490</a></div></div>
349
362
  <div class="ttc" id="aclassSVF_1_1SVFValue_html"><div class="ttname"><a href="classSVF_1_1SVFValue.html">SVF::SVFValue</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00177">SVFValue.h:177</a></div></div>
350
363
  <div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
351
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2a5e0a88ebef4ae740983726e7f1b5eb"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2a5e0a88ebef4ae740983726e7f1b5eb">SVF::AbstractInterpretation::_bugLoc</a></div><div class="ttdeci">Set&lt; std::string &gt; _bugLoc</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00352">AbstractInterpretation.h:352</a></div></div>
352
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a7dfd11b987d9ff9528277e23191ed95d"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a7dfd11b987d9ff9528277e23191ed95d">SVF::AbstractInterpretation::strRead</a></div><div class="ttdeci">std::string strRead(const SVFValue *rhs)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01142">AbstractInterpretation.cpp:1142</a></div></div>
353
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2a317e4263c4d8acbc5088a18a3849aa"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2a317e4263c4d8acbc5088a18a3849aa">SVF::AbstractInterpretation::directCallFunPass</a></div><div class="ttdeci">virtual void directCallFunPass(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00622">AbstractInterpretation.cpp:622</a></div></div>
364
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2a5e0a88ebef4ae740983726e7f1b5eb"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2a5e0a88ebef4ae740983726e7f1b5eb">SVF::AbstractInterpretation::_bugLoc</a></div><div class="ttdeci">Set&lt; std::string &gt; _bugLoc</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00346">AbstractInterpretation.h:346</a></div></div>
365
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2a317e4263c4d8acbc5088a18a3849aa"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2a317e4263c4d8acbc5088a18a3849aa">SVF::AbstractInterpretation::directCallFunPass</a></div><div class="ttdeci">virtual void directCallFunPass(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00620">AbstractInterpretation.cpp:620</a></div></div>
354
366
  <div class="ttc" id="aclassSVF_1_1CallICFGNode_html"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html">SVF::CallICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00385">ICFGNode.h:385</a></div></div>
355
367
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a13fdb4a6a6d09e3504fdad16b88616daa9cc269dadf9cff7d399c54d9570a6614"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a13fdb4a6a6d09e3504fdad16b88616daa9cc269dadf9cff7d399c54d9570a6614">SVF::AbstractInterpretation::MEMCPY</a></div><div class="ttdeci">@ MEMCPY</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00113">AbstractInterpretation.h:113</a></div></div>
356
368
  <div class="ttc" id="aclassSVF_1_1SVFType_html"><div class="ttname"><a href="classSVF_1_1SVFType.html">SVF::SVFType</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00156">SVFType.h:156</a></div></div>
357
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a048e203517ac727e6fe0653e1f24052c"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a048e203517ac727e6fe0653e1f24052c">SVF::AbstractInterpretation::AccessMemoryViaCallArgs</a></div><div class="ttdeci">void AccessMemoryViaCallArgs(const SVF::SVFArgument *arg, SVF::FILOWorkList&lt; const SVFValue * &gt; &amp;worklist, Set&lt; const SVFValue * &gt; &amp;visited)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01751">AbstractInterpretation.cpp:1751</a></div></div>
358
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ac3f8e4602627135c6fb03ba843893d6a"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ac3f8e4602627135c6fb03ba843893d6a">SVF::AbstractInterpretation::hasSwitchBranchES</a></div><div class="ttdeci">bool hasSwitchBranchES(const SVFVar *var, s64_t succ, AbstractState &amp;es)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00449">AbstractInterpretation.cpp:449</a></div></div>
369
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a048e203517ac727e6fe0653e1f24052c"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a048e203517ac727e6fe0653e1f24052c">SVF::AbstractInterpretation::AccessMemoryViaCallArgs</a></div><div class="ttdeci">void AccessMemoryViaCallArgs(const SVF::SVFArgument *arg, SVF::FILOWorkList&lt; const SVFValue * &gt; &amp;worklist, Set&lt; const SVFValue * &gt; &amp;visited)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01735">AbstractInterpretation.cpp:1735</a></div></div>
359
370
  <div class="ttc" id="aICFGWTO_8h_html"><div class="ttname"><a href="ICFGWTO_8h.html">ICFGWTO.h</a></div></div>
360
371
  <div class="ttc" id="aclassSVF_1_1IntraCFGEdge_html"><div class="ttname"><a href="classSVF_1_1IntraCFGEdge.html">SVF::IntraCFGEdge</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGEdge_8h_source.html#l00113">ICFGEdge.h:113</a></div></div>
361
372
  <div class="ttc" id="aclassSVF_1_1SVFFunction_html"><div class="ttname"><a href="classSVF_1_1SVFFunction.html">SVF::SVFFunction</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00297">SVFValue.h:297</a></div></div>
362
373
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_a630ff9c47f58f9b8df7c8a2b3711477c"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a630ff9c47f58f9b8df7c8a2b3711477c">SVF::SVFUtil::getMemoryUsageKB</a></div><div class="ttdeci">bool getMemoryUsageKB(u32_t *vmrss_kb, u32_t *vmsize_kb)</div><div class="ttdoc">Get memory usage from system file. Return TRUE if succeed.</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00177">SVFUtil.cpp:177</a></div></div>
363
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a550c12360c2149ba0e55bdf4cf7b8dd0"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a550c12360c2149ba0e55bdf4cf7b8dd0">SVF::AbstractInterpretation::AccessMemoryViaCopyStmt</a></div><div class="ttdeci">void AccessMemoryViaCopyStmt(const CopyStmt *copy, SVF::FILOWorkList&lt; const SVFValue * &gt; &amp;worklist, Set&lt; const SVFValue * &gt; &amp;visited)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01721">AbstractInterpretation.cpp:1721</a></div></div>
374
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a550c12360c2149ba0e55bdf4cf7b8dd0"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a550c12360c2149ba0e55bdf4cf7b8dd0">SVF::AbstractInterpretation::AccessMemoryViaCopyStmt</a></div><div class="ttdeci">void AccessMemoryViaCopyStmt(const CopyStmt *copy, SVF::FILOWorkList&lt; const SVFValue * &gt; &amp;worklist, Set&lt; const SVFValue * &gt; &amp;visited)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01705">AbstractInterpretation.cpp:1705</a></div></div>
364
375
  <div class="ttc" id="anamespaceSVF_html_a41375daa7cc99317d0aa2a21dc643b88"><div class="ttname"><a href="namespaceSVF.html#a41375daa7cc99317d0aa2a21dc643b88">SVF::AEKind</a></div><div class="ttdeci">AEKind</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00044">AbstractInterpretation.h:44</a></div></div>
365
376
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_aa2d9b63cb2d303e6a1d4fe84a0df265f"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#aa2d9b63cb2d303e6a1d4fe84a0df265f">SVF::AbstractInterpretation::classof</a></div><div class="ttdeci">static bool classof(const AbstractInterpretation *ae)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00126">AbstractInterpretation.h:126</a></div></div>
366
377
  <div class="ttc" id="aclassSVF_1_1AEStat_html_acc2262e59167d040da3b5c726bdbf36e"><div class="ttname"><a href="classSVF_1_1AEStat.html#acc2262e59167d040da3b5c726bdbf36e">SVF::AEStat::getMemUsage</a></div><div class="ttdeci">std::string getMemUsage()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00062">AbstractInterpretation.h:62</a></div></div>
367
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a9b5e58476c372570551da971d22c5c02"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a9b5e58476c372570551da971d22c5c02">SVF::AbstractInterpretation::_recursiveFuns</a></div><div class="ttdeci">Set&lt; const SVFFunction * &gt; _recursiveFuns</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00358">AbstractInterpretation.h:358</a></div></div>
378
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a9b5e58476c372570551da971d22c5c02"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a9b5e58476c372570551da971d22c5c02">SVF::AbstractInterpretation::_recursiveFuns</a></div><div class="ttdeci">Set&lt; const SVFFunction * &gt; _recursiveFuns</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00352">AbstractInterpretation.h:352</a></div></div>
368
379
  <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>
369
380
  <div class="ttc" id="aclassSVF_1_1SVFStat_html_a07b6f8cb424b84b468c4518140fa3a41"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">SVF::SVFStat::generalNumMap</a></div><div class="ttdeci">NUMStatMap generalNumMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00076">SVFStat.h:76</a></div></div>
370
381
  <div class="ttc" id="aclassSVF_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>
371
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a1b8e1e0cc9803687a0eb951015ac59af"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a1b8e1e0cc9803687a0eb951015ac59af">SVF::AbstractInterpretation::widenFixpointPass</a></div><div class="ttdeci">bool widenFixpointPass(const ICFGNode *cycle_head, AbstractState &amp;pre_es)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00760">AbstractInterpretation.cpp:760</a></div></div>
372
- <div class="ttc" id="aclassSVF_1_1AEStat_html_ae2cfe939670689a4ec5030c096a5f546"><div class="ttname"><a href="classSVF_1_1AEStat.html#ae2cfe939670689a4ec5030c096a5f546">SVF::AEStat::countStateSize</a></div><div class="ttdeci">void countStateSize()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00952">AbstractInterpretation.cpp:952</a></div></div>
373
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a9c592b91a1e3d72ada730387232a2fcf"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a9c592b91a1e3d72ada730387232a2fcf">SVF::AbstractInterpretation::_svfir2AbsState</a></div><div class="ttdeci">SVFIR2AbsState * _svfir2AbsState</div><div class="ttdoc">Execution State, used to store the Interval Value of every SVF variable.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00345">AbstractInterpretation.h:345</a></div></div>
382
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a1b8e1e0cc9803687a0eb951015ac59af"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a1b8e1e0cc9803687a0eb951015ac59af">SVF::AbstractInterpretation::widenFixpointPass</a></div><div class="ttdeci">bool widenFixpointPass(const ICFGNode *cycle_head, AbstractState &amp;pre_es)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00757">AbstractInterpretation.cpp:757</a></div></div>
383
+ <div class="ttc" id="aclassSVF_1_1AEStat_html_ae2cfe939670689a4ec5030c096a5f546"><div class="ttname"><a href="classSVF_1_1AEStat.html#ae2cfe939670689a4ec5030c096a5f546">SVF::AEStat::countStateSize</a></div><div class="ttdeci">void countStateSize()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00943">AbstractInterpretation.cpp:943</a></div></div>
384
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a9c592b91a1e3d72ada730387232a2fcf"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a9c592b91a1e3d72ada730387232a2fcf">SVF::AbstractInterpretation::_svfir2AbsState</a></div><div class="ttdeci">SVFIR2AbsState * _svfir2AbsState</div><div class="ttdoc">Execution State, used to store the Interval Value of every SVF variable.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00339">AbstractInterpretation.h:339</a></div></div>
374
385
  <div class="ttc" id="aSVFBugReport_8h_html"><div class="ttname"><a href="SVFBugReport_8h.html">SVFBugReport.h</a></div></div>
386
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a57e4ee3fde79c408dffe98894210d7c9"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a57e4ee3fde79c408dffe98894210d7c9">SVF::AbstractInterpretation::getAbsState</a></div><div class="ttdeci">AbstractState &amp; getAbsState(const ICFGNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00372">AbstractInterpretation.h:372</a></div></div>
375
387
  <div class="ttc" id="aclassSVF_1_1LoadStmt_html"><div class="ttname"><a href="classSVF_1_1LoadStmt.html">SVF::LoadStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00489">SVFStatements.h:489</a></div></div>
388
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a58a20f54a14628ca4e94cbb608b307af"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a58a20f54a14628ca4e94cbb608b307af">SVF::AbstractInterpretation::isSwitchBranchFeasible</a></div><div class="ttdeci">bool isSwitchBranchFeasible(const SVFVar *var, s64_t succ, AbstractState &amp;as)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00446">AbstractInterpretation.cpp:446</a></div></div>
389
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a60a21908a08864f01a66a3ac113c4a35"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a60a21908a08864f01a66a3ac113c4a35">SVF::AbstractInterpretation::getAllocaInstByteSize</a></div><div class="ttdeci">u32_t getAllocaInstByteSize(AbstractState &amp;as, const AddrStmt *addr)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01284">AbstractInterpretation.cpp:1284</a></div></div>
376
390
  <div class="ttc" id="aclassSVF_1_1AEStat_html_a974988b7df3982938e081883d7349a91"><div class="ttname"><a href="classSVF_1_1AEStat.html#a974988b7df3982938e081883d7349a91">SVF::AEStat::~AEStat</a></div><div class="ttdeci">~AEStat()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00059">AbstractInterpretation.h:59</a></div></div>
377
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a6cac9b69d85111a5a26373ec848a3282"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a6cac9b69d85111a5a26373ec848a3282">SVF::AbstractInterpretation::handleExtAPI</a></div><div class="ttdeci">virtual void handleExtAPI(const CallICFGNode *call)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01174">AbstractInterpretation.cpp:1174</a></div></div>
378
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_adf02c5bf1b86f00163b114a78e03120c"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#adf02c5bf1b86f00163b114a78e03120c">SVF::AbstractInterpretation::handleMemcpy</a></div><div class="ttdeci">virtual void handleMemcpy(const SVFValue *dst, const SVFValue *src, AbstractValue len, u32_t start_idx)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01560">AbstractInterpretation.cpp:1560</a></div></div>
379
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a29fe7c63c61a7aec8ae1477a061f5bf2"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a29fe7c63c61a7aec8ae1477a061f5bf2">SVF::AbstractInterpretation::AccessMemoryViaRetNode</a></div><div class="ttdeci">void AccessMemoryViaRetNode(const CallICFGNode *callnode, SVF::FILOWorkList&lt; const SVFValue * &gt; &amp;worklist, Set&lt; const SVFValue * &gt; &amp;visited)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01696">AbstractInterpretation.cpp:1696</a></div></div>
391
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a16ac184f8cbbeba3622ee9e5f84d4bec"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a16ac184f8cbbeba3622ee9e5f84d4bec">SVF::AbstractInterpretation::_preAbsTrace</a></div><div class="ttdeci">Map&lt; const ICFGNode *, AbstractState &gt; _preAbsTrace</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00390">AbstractInterpretation.h:390</a></div></div>
392
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a90b54f715dfa24657bd3e058617bffac"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a90b54f715dfa24657bd3e058617bffac">SVF::AbstractInterpretation::traceMemoryAllocationSize</a></div><div class="ttdeci">AbstractValue traceMemoryAllocationSize(AbstractState &amp;as, const SVFValue *value)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01318">AbstractInterpretation.cpp:1318</a></div></div>
393
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a6cac9b69d85111a5a26373ec848a3282"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a6cac9b69d85111a5a26373ec848a3282">SVF::AbstractInterpretation::handleExtAPI</a></div><div class="ttdeci">virtual void handleExtAPI(const CallICFGNode *call)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01166">AbstractInterpretation.cpp:1166</a></div></div>
394
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a29fe7c63c61a7aec8ae1477a061f5bf2"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a29fe7c63c61a7aec8ae1477a061f5bf2">SVF::AbstractInterpretation::AccessMemoryViaRetNode</a></div><div class="ttdeci">void AccessMemoryViaRetNode(const CallICFGNode *callnode, SVF::FILOWorkList&lt; const SVFValue * &gt; &amp;worklist, Set&lt; const SVFValue * &gt; &amp;visited)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01680">AbstractInterpretation.cpp:1680</a></div></div>
380
395
  <div class="ttc" id="aclassSVF_1_1AbstractState_html"><div class="ttname"><a href="classSVF_1_1AbstractState.html">SVF::AbstractState</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00054">AbstractState.h:54</a></div></div>
381
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ac60581a57407fa4c65b1975f5be687b8"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ac60581a57407fa4c65b1975f5be687b8">SVF::AbstractInterpretation::AccessMemoryViaLoadStmt</a></div><div class="ttdeci">void AccessMemoryViaLoadStmt(const LoadStmt *load, SVF::FILOWorkList&lt; const SVFValue * &gt; &amp;worklist, Set&lt; const SVFValue * &gt; &amp;visited)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01730">AbstractInterpretation.cpp:1730</a></div></div>
382
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ac9e8bc430cd530e47811e28f5a9fe963"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ac9e8bc430cd530e47811e28f5a9fe963">SVF::AbstractInterpretation::traceMemoryAllocationSize</a></div><div class="ttdeci">AbstractValue traceMemoryAllocationSize(const SVFValue *value)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01331">AbstractInterpretation.cpp:1331</a></div></div>
383
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a0e2af184576d9673f535fe80deb944f6"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a0e2af184576d9673f535fe80deb944f6">SVF::AbstractInterpretation::isRecursiveCall</a></div><div class="ttdeci">virtual bool isRecursiveCall(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00593">AbstractInterpretation.cpp:593</a></div></div>
396
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a0e2af184576d9673f535fe80deb944f6"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a0e2af184576d9673f535fe80deb944f6">SVF::AbstractInterpretation::isRecursiveCall</a></div><div class="ttdeci">virtual bool isRecursiveCall(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00590">AbstractInterpretation.cpp:590</a></div></div>
384
397
  <div class="ttc" id="anamespaceSVF_html_a9b707002523ece2ac54ca893ee9a2d4e"><div class="ttname"><a href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">SVF::s32_t</a></div><div class="ttdeci">signed s32_t</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00047">GeneralType.h:47</a></div></div>
385
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_aae7c67e9c423599442be721b55cd7279"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#aae7c67e9c423599442be721b55cd7279">SVF::AbstractInterpretation::collectCheckPoint</a></div><div class="ttdeci">void collectCheckPoint()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01246">AbstractInterpretation.cpp:1246</a></div></div>
398
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_aae7c67e9c423599442be721b55cd7279"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#aae7c67e9c423599442be721b55cd7279">SVF::AbstractInterpretation::collectCheckPoint</a></div><div class="ttdeci">void collectCheckPoint()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01233">AbstractInterpretation.cpp:1233</a></div></div>
386
399
  <div class="ttc" id="aclassSVF_1_1AEStat_html_a8c69d36465485cddc17eddfdeea551e0"><div class="ttname"><a href="classSVF_1_1AEStat.html#a8c69d36465485cddc17eddfdeea551e0">SVF::AEStat::getFunctionTrace</a></div><div class="ttdeci">u32_t &amp; getFunctionTrace()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00080">AbstractInterpretation.h:80</a></div></div>
387
400
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a13fdb4a6a6d09e3504fdad16b88616da"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a13fdb4a6a6d09e3504fdad16b88616da">SVF::AbstractInterpretation::ExtAPIType</a></div><div class="ttdeci">ExtAPIType</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00113">AbstractInterpretation.h:113</a></div></div>
388
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ab18fe64117c1692d94ce0e0ee44e940b"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ab18fe64117c1692d94ce0e0ee44e940b">SVF::AbstractInterpretation::initExtFunMap</a></div><div class="ttdeci">virtual void initExtFunMap()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01070">AbstractInterpretation.cpp:1070</a></div></div>
401
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ab18fe64117c1692d94ce0e0ee44e940b"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ab18fe64117c1692d94ce0e0ee44e940b">SVF::AbstractInterpretation::initExtFunMap</a></div><div class="ttdeci">virtual void initExtFunMap()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01061">AbstractInterpretation.cpp:1061</a></div></div>
389
402
  <div class="ttc" id="aclassSVF_1_1WTOCycle_html"><div class="ttname"><a href="classSVF_1_1WTOCycle.html">SVF::WTOCycle</a></div><div class="ttdef"><b>Definition:</b> <a href="WTO_8h_source.html#l00048">WTO.h:48</a></div></div>
390
403
  <div class="ttc" id="aclassSVF_1_1AEStat_html_afaa47798ebfde513c709b46cac05294c"><div class="ttname"><a href="classSVF_1_1AEStat.html#afaa47798ebfde513c709b46cac05294c">SVF::AEStat::getICFGNodeTrace</a></div><div class="ttdeci">u32_t &amp; getICFGNodeTrace()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00096">AbstractInterpretation.h:96</a></div></div>
391
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a3a12a86670eef9cd22b1853c7c6fa208"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a3a12a86670eef9cd22b1853c7c6fa208">SVF::AbstractInterpretation::propagateStateIfFeasible</a></div><div class="ttdeci">bool propagateStateIfFeasible(const ICFGNode *curNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00180">AbstractInterpretation.cpp:180</a></div></div>
404
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a3a12a86670eef9cd22b1853c7c6fa208"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a3a12a86670eef9cd22b1853c7c6fa208">SVF::AbstractInterpretation::propagateStateIfFeasible</a></div><div class="ttdeci">bool propagateStateIfFeasible(const ICFGNode *curNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00179">AbstractInterpretation.cpp:179</a></div></div>
392
405
  <div class="ttc" id="aclassSVF_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>
393
406
  <div class="ttc" id="aclassSVF_1_1SCCDetection_html"><div class="ttname"><a href="classSVF_1_1SCCDetection.html">SVF::SCCDetection</a></div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00054">SCC.h:54</a></div></div>
394
407
  <div class="ttc" id="aSVFIR2AbsState_8h_html"><div class="ttname"><a href="SVFIR2AbsState_8h.html">SVFIR2AbsState.h</a></div></div>
395
408
  <div class="ttc" id="aclassSVF_1_1AndersenWaveDiff_html"><div class="ttname"><a href="classSVF_1_1AndersenWaveDiff.html">SVF::AndersenWaveDiff</a></div><div class="ttdef"><b>Definition:</b> <a href="Andersen_8h_source.html#l00384">Andersen.h:384</a></div></div>
396
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a9885b50cf28b65bebb488442085fab26"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a9885b50cf28b65bebb488442085fab26">SVF::AbstractInterpretation::_callSiteStack</a></div><div class="ttdeci">std::vector&lt; const CallICFGNode * &gt; _callSiteStack</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00354">AbstractInterpretation.h:354</a></div></div>
397
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ab988e460fe92f0ba3c4cbee8e0c480a0"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ab988e460fe92f0ba3c4cbee8e0c480a0">SVF::AbstractInterpretation::_icfg</a></div><div class="ttdeci">ICFG * _icfg</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00348">AbstractInterpretation.h:348</a></div></div>
398
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a271d3ac0f8725108e324b5c391988c49"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a271d3ac0f8725108e324b5c391988c49">SVF::AbstractInterpretation::extCallPass</a></div><div class="ttdeci">virtual void extCallPass(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00586">AbstractInterpretation.cpp:586</a></div></div>
409
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a9885b50cf28b65bebb488442085fab26"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a9885b50cf28b65bebb488442085fab26">SVF::AbstractInterpretation::_callSiteStack</a></div><div class="ttdeci">std::vector&lt; const CallICFGNode * &gt; _callSiteStack</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00348">AbstractInterpretation.h:348</a></div></div>
410
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ab988e460fe92f0ba3c4cbee8e0c480a0"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ab988e460fe92f0ba3c4cbee8e0c480a0">SVF::AbstractInterpretation::_icfg</a></div><div class="ttdeci">ICFG * _icfg</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00342">AbstractInterpretation.h:342</a></div></div>
411
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a271d3ac0f8725108e324b5c391988c49"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a271d3ac0f8725108e324b5c391988c49">SVF::AbstractInterpretation::extCallPass</a></div><div class="ttdeci">virtual void extCallPass(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00583">AbstractInterpretation.cpp:583</a></div></div>
412
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ab076eddb7908768126c190c23b91eb85"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ab076eddb7908768126c190c23b91eb85">SVF::AbstractInterpretation::getStrlen</a></div><div class="ttdeci">AbstractValue getStrlen(AbstractState &amp;as, const SVF::SVFValue *strValue)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01451">AbstractInterpretation.cpp:1451</a></div></div>
399
413
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2670b663d2c5afa974dfc0f316a273d1"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2670b663d2c5afa974dfc0f316a273d1">SVF::AbstractInterpretation::analyse</a></div><div class="ttdeci">void analyse()</div><div class="ttdoc">Program entry.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00152">AbstractInterpretation.cpp:152</a></div></div>
414
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_af7f57fc112a86d2710d011d37b496350"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#af7f57fc112a86d2710d011d37b496350">SVF::AbstractInterpretation::AccessMemoryViaLoadStmt</a></div><div class="ttdeci">void AccessMemoryViaLoadStmt(AbstractState &amp;as, const LoadStmt *load, SVF::FILOWorkList&lt; const SVFValue * &gt; &amp;worklist, Set&lt; const SVFValue * &gt; &amp;visited)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01714">AbstractInterpretation.cpp:1714</a></div></div>
400
415
  <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>
401
416
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a971a676fb15da74d37de14725bab40b0"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a971a676fb15da74d37de14725bab40b0">SVF::AbstractInterpretation::runOnModule</a></div><div class="ttdeci">virtual void runOnModule(ICFG *icfg)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00087">AbstractInterpretation.cpp:87</a></div></div>
402
417
  <div class="ttc" id="aclassSVF_1_1SVFIR2AbsState_html"><div class="ttname"><a href="classSVF_1_1SVFIR2AbsState.html">SVF::SVFIR2AbsState</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFIR2AbsState_8h_source.html#l00042">SVFIR2AbsState.h:42</a></div></div>
403
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_abbb4e49644121f6b038fd8fb4d7b0034"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#abbb4e49644121f6b038fd8fb4d7b0034">SVF::AbstractInterpretation::handleCallSite</a></div><div class="ttdeci">virtual void handleCallSite(const ICFGNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00549">AbstractInterpretation.cpp:549</a></div></div>
404
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a8e4f0c5f527e321369a19a0b37124079"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a8e4f0c5f527e321369a19a0b37124079">SVF::AbstractInterpretation::_recoder</a></div><div class="ttdeci">SVFBugReport _recoder</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00353">AbstractInterpretation.h:353</a></div></div>
405
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_af41aa555a5b607ae7700263ac72f8dbb"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#af41aa555a5b607ae7700263ac72f8dbb">SVF::AbstractInterpretation::_funcToWTO</a></div><div class="ttdeci">Map&lt; const SVFFunction *, ICFGWTO * &gt; _funcToWTO</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00357">AbstractInterpretation.h:357</a></div></div>
418
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_abbb4e49644121f6b038fd8fb4d7b0034"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#abbb4e49644121f6b038fd8fb4d7b0034">SVF::AbstractInterpretation::handleCallSite</a></div><div class="ttdeci">virtual void handleCallSite(const ICFGNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00546">AbstractInterpretation.cpp:546</a></div></div>
419
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a8e4f0c5f527e321369a19a0b37124079"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a8e4f0c5f527e321369a19a0b37124079">SVF::AbstractInterpretation::_recoder</a></div><div class="ttdeci">SVFBugReport _recoder</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00347">AbstractInterpretation.h:347</a></div></div>
420
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_af41aa555a5b607ae7700263ac72f8dbb"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#af41aa555a5b607ae7700263ac72f8dbb">SVF::AbstractInterpretation::_funcToWTO</a></div><div class="ttdeci">Map&lt; const SVFFunction *, ICFGWTO * &gt; _funcToWTO</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00351">AbstractInterpretation.h:351</a></div></div>
406
421
  <div class="ttc" id="aclassSVF_1_1AEStat_html"><div class="ttname"><a href="classSVF_1_1AEStat.html">SVF::AEStat</a></div><div class="ttdoc">AEStat: Statistic for AE.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00051">AbstractInterpretation.h:51</a></div></div>
407
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a0e36af6b826b9eacf183aebd0b8c5f1f"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a0e36af6b826b9eacf183aebd0b8c5f1f">SVF::AbstractInterpretation::recursiveCallPass</a></div><div class="ttdeci">virtual void recursiveCallPass(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00599">AbstractInterpretation.cpp:599</a></div></div>
408
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a896d04a02951947bc228bf97b2c00313"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a896d04a02951947bc228bf97b2c00313">SVF::AbstractInterpretation::handleSVFStatement</a></div><div class="ttdeci">virtual void handleSVFStatement(const SVFStmt *stmt)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00830">AbstractInterpretation.cpp:830</a></div></div>
422
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a0e36af6b826b9eacf183aebd0b8c5f1f"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a0e36af6b826b9eacf183aebd0b8c5f1f">SVF::AbstractInterpretation::recursiveCallPass</a></div><div class="ttdeci">virtual void recursiveCallPass(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00596">AbstractInterpretation.cpp:596</a></div></div>
423
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a896d04a02951947bc228bf97b2c00313"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a896d04a02951947bc228bf97b2c00313">SVF::AbstractInterpretation::handleSVFStatement</a></div><div class="ttdeci">virtual void handleSVFStatement(const SVFStmt *stmt)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00827">AbstractInterpretation.cpp:827</a></div></div>
424
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_abb8dd7424d62b56b899d3f4d218eeaac"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#abb8dd7424d62b56b899d3f4d218eeaac">SVF::AbstractInterpretation::getPointeeElement</a></div><div class="ttdeci">const SVFType * getPointeeElement(AbstractState &amp;as, NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01605">AbstractInterpretation.cpp:1605</a></div></div>
409
425
  <div class="ttc" id="acJSON_8cpp_html_a7669ee67a0563250c1efaa24d130e1ac"><div class="ttname"><a href="cJSON_8cpp.html#a7669ee67a0563250c1efaa24d130e1ac">copy</a></div><div class="ttdeci">copy</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8cpp_source.html#l00414">cJSON.cpp:414</a></div></div>
410
426
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a13fdb4a6a6d09e3504fdad16b88616daae8dad405c06383859d8db715fd455317"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a13fdb4a6a6d09e3504fdad16b88616daae8dad405c06383859d8db715fd455317">SVF::AbstractInterpretation::STRCAT</a></div><div class="ttdeci">@ STRCAT</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00113">AbstractInterpretation.h:113</a></div></div>
411
427
  <div class="ttc" id="aclassSVF_1_1ICFG_html"><div class="ttname"><a href="classSVF_1_1ICFG.html">SVF::ICFG</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFG_8h_source.html#l00047">ICFG.h:47</a></div></div>
412
428
  <div class="ttc" id="aclassSVF_1_1AEStat_html_a4a08e449307cdcb56e8e32ca346d5349"><div class="ttname"><a href="classSVF_1_1AEStat.html#a4a08e449307cdcb56e8e32ca346d5349">SVF::AEStat::getBlockTrace</a></div><div class="ttdeci">u32_t &amp; getBlockTrace()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00088">AbstractInterpretation.h:88</a></div></div>
413
429
  <div class="ttc" id="aclassSVF_1_1SVFIR_html"><div class="ttname"><a href="classSVF_1_1SVFIR.html">SVF::SVFIR</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00043">SVFIR.h:43</a></div></div>
414
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2eb84610d9a9eca6565e4a8a1e1156d1"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2eb84610d9a9eca6565e4a8a1e1156d1">SVF::AbstractInterpretation::isExtCall</a></div><div class="ttdeci">virtual bool isExtCall(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00580">AbstractInterpretation.cpp:580</a></div></div>
415
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a8a4b07e6c999bea0b0e69dcab0346933"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a8a4b07e6c999bea0b0e69dcab0346933">SVF::AbstractInterpretation::narrowFixpointPass</a></div><div class="ttdeci">bool narrowFixpointPass(const ICFGNode *cycle_head, AbstractState &amp;pre_es)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00783">AbstractInterpretation.cpp:783</a></div></div>
416
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2e2253149e2bf114825a4e838118e012"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2e2253149e2bf114825a4e838118e012">SVF::AbstractInterpretation::handleFunc</a></div><div class="ttdeci">virtual void handleFunc(const SVFFunction *func)</div><div class="ttdoc">handle user defined function, ext function is not included.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00807">AbstractInterpretation.cpp:807</a></div></div>
430
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2eb84610d9a9eca6565e4a8a1e1156d1"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2eb84610d9a9eca6565e4a8a1e1156d1">SVF::AbstractInterpretation::isExtCall</a></div><div class="ttdeci">virtual bool isExtCall(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00577">AbstractInterpretation.cpp:577</a></div></div>
431
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a8a4b07e6c999bea0b0e69dcab0346933"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a8a4b07e6c999bea0b0e69dcab0346933">SVF::AbstractInterpretation::narrowFixpointPass</a></div><div class="ttdeci">bool narrowFixpointPass(const ICFGNode *cycle_head, AbstractState &amp;pre_es)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00780">AbstractInterpretation.cpp:780</a></div></div>
432
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2e2253149e2bf114825a4e838118e012"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2e2253149e2bf114825a4e838118e012">SVF::AbstractInterpretation::handleFunc</a></div><div class="ttdeci">virtual void handleFunc(const SVFFunction *func)</div><div class="ttdoc">handle user defined function, ext function is not included.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00804">AbstractInterpretation.cpp:804</a></div></div>
417
433
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a13fdb4a6a6d09e3504fdad16b88616daa5aec33226dc590ec951d0f12bf35f15f"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a13fdb4a6a6d09e3504fdad16b88616daa5aec33226dc590ec951d0f12bf35f15f">SVF::AbstractInterpretation::MEMSET</a></div><div class="ttdeci">@ MEMSET</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00113">AbstractInterpretation.h:113</a></div></div>
418
434
  <div class="ttc" id="aclassSVF_1_1FILOWorkList_html"><div class="ttname"><a href="classSVF_1_1FILOWorkList.html">SVF::FILOWorkList</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00042">AbstractInterpretation.h:42</a></div></div>
435
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ab50b8867cfb0feb3ae0727e1c11f5d25"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ab50b8867cfb0feb3ae0727e1c11f5d25">SVF::AbstractInterpretation::handleMemset</a></div><div class="ttdeci">virtual void handleMemset(AbstractState &amp;as, const SVFValue *dst, AbstractValue elem, AbstractValue len)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01625">AbstractInterpretation.cpp:1625</a></div></div>
419
436
  <div class="ttc" id="anamespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="svf-llvm_2tools_2MTA_2MTAResultValidator_8h_source.html#l00020">MTAResultValidator.h:20</a></div></div>
420
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a9b179466955023f275b6692b59048846"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a9b179466955023f275b6692b59048846">SVF::AbstractInterpretation::handleICFGNode</a></div><div class="ttdeci">virtual void handleICFGNode(const ICFGNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00674">AbstractInterpretation.cpp:674</a></div></div>
421
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ac97c5979efd3049d18b6edb83f359a20"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ac97c5979efd3049d18b6edb83f359a20">SVF::AbstractInterpretation::_preAbstractTrace</a></div><div class="ttdeci">Map&lt; const ICFGNode *, AbstractState &gt; _preAbstractTrace</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00383">AbstractInterpretation.h:383</a></div></div>
437
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a9b179466955023f275b6692b59048846"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a9b179466955023f275b6692b59048846">SVF::AbstractInterpretation::handleICFGNode</a></div><div class="ttdeci">virtual void handleICFGNode(const ICFGNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00671">AbstractInterpretation.cpp:671</a></div></div>
422
438
  <div class="ttc" id="aclassSVF_1_1SVFArgument_html"><div class="ttname"><a href="classSVF_1_1SVFArgument.html">SVF::SVFArgument</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00897">SVFValue.h:897</a></div></div>
423
439
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ac0bcb586dffbfadeb33f501cafbaa1c9"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ac0bcb586dffbfadeb33f501cafbaa1c9">SVF::AbstractInterpretation::AEAPI</a></div><div class="ttdeci">friend class AEAPI</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00110">AbstractInterpretation.h:110</a></div></div>
424
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a71dff5d6a5b291014c0a65d3a6d7c8c1"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a71dff5d6a5b291014c0a65d3a6d7c8c1">SVF::AbstractInterpretation::handleCycle</a></div><div class="ttdeci">virtual void handleCycle(const ICFGWTOCycle *cycle)</div><div class="ttdoc">handle wto cycle (loop)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00695">AbstractInterpretation.cpp:695</a></div></div>
425
- <div class="ttc" id="aclassSVF_1_1AEStat_html_a5b246c2175c44454236242dcf426f21f"><div class="ttname"><a href="classSVF_1_1AEStat.html#a5b246c2175c44454236242dcf426f21f">SVF::AEStat::finializeStat</a></div><div class="ttdeci">void finializeStat()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00968">AbstractInterpretation.cpp:968</a></div></div>
426
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2057e8e1c0aaf39e74f0a8fb2a1b580c"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2057e8e1c0aaf39e74f0a8fb2a1b580c">SVF::AbstractInterpretation::getPointeeElement</a></div><div class="ttdeci">const SVFType * getPointeeElement(NodeID id)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01620">AbstractInterpretation.cpp:1620</a></div></div>
427
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_acea2c82e5b463db6f097e9a9641f601b"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#acea2c82e5b463db6f097e9a9641f601b">SVF::AbstractInterpretation::checkPointAllSet</a></div><div class="ttdeci">void checkPointAllSet()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01265">AbstractInterpretation.cpp:1265</a></div></div>
428
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_acba90e968cebacca3da78ac765df33ef"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#acba90e968cebacca3da78ac765df33ef">SVF::AbstractInterpretation::handleStrcat</a></div><div class="ttdeci">virtual void handleStrcat(const CallICFGNode *call)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01523">AbstractInterpretation.cpp:1523</a></div></div>
440
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a71dff5d6a5b291014c0a65d3a6d7c8c1"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a71dff5d6a5b291014c0a65d3a6d7c8c1">SVF::AbstractInterpretation::handleCycle</a></div><div class="ttdeci">virtual void handleCycle(const ICFGWTOCycle *cycle)</div><div class="ttdoc">handle wto cycle (loop)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00692">AbstractInterpretation.cpp:692</a></div></div>
441
+ <div class="ttc" id="aclassSVF_1_1AEStat_html_a5b246c2175c44454236242dcf426f21f"><div class="ttname"><a href="classSVF_1_1AEStat.html#a5b246c2175c44454236242dcf426f21f">SVF::AEStat::finializeStat</a></div><div class="ttdeci">void finializeStat()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00959">AbstractInterpretation.cpp:959</a></div></div>
442
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_acea2c82e5b463db6f097e9a9641f601b"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#acea2c82e5b463db6f097e9a9641f601b">SVF::AbstractInterpretation::checkPointAllSet</a></div><div class="ttdeci">void checkPointAllSet()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01252">AbstractInterpretation.cpp:1252</a></div></div>
443
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_acba90e968cebacca3da78ac765df33ef"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#acba90e968cebacca3da78ac765df33ef">SVF::AbstractInterpretation::handleStrcat</a></div><div class="ttdeci">virtual void handleStrcat(const CallICFGNode *call)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01509">AbstractInterpretation.cpp:1509</a></div></div>
429
444
  <div class="ttc" id="anamespaceSVF_html_ad781b0b14e89773e774072b280658ef3"><div class="ttname"><a href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">SVF::s64_t</a></div><div class="ttdeci">signed long long s64_t</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00049">GeneralType.h:49</a></div></div>
430
445
  <div class="ttc" id="aclassSVF_1_1AEStat_html_a2064225a75798a495100eb7da2c880af"><div class="ttname"><a href="classSVF_1_1AEStat.html#a2064225a75798a495100eb7da2c880af">SVF::AEStat::memory_usage</a></div><div class="ttdeci">std::string memory_usage</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00075">AbstractInterpretation.h:75</a></div></div>
431
446
  <div class="ttc" id="anamespaceSVF_html_a8234d4b959abc9123993bcff4eee34c1"><div class="ttname"><a href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">SVF::Map</a></div><div class="ttdeci">std::unordered_map&lt; Key, Value, Hash, KeyEqual, Allocator &gt; Map</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00101">GeneralType.h:101</a></div></div>
432
447
  <div class="ttc" id="astructSVF_1_1AbstractValue_html"><div class="ttname"><a href="structSVF_1_1AbstractValue.html">SVF::AbstractValue</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractValue_8h_source.html#l00029">AbstractValue.h:29</a></div></div>
433
448
  <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a5a17c9de696332a712879d1a7bc77fb5"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a5a17c9de696332a712879d1a7bc77fb5">SVF::AbstractInterpretation::getKind</a></div><div class="ttdeci">AEKind getKind() const</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00131">AbstractInterpretation.h:131</a></div></div>
434
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ac941d1eb9b1216c8334d0685a471b774"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ac941d1eb9b1216c8334d0685a471b774">SVF::AbstractInterpretation::handleStrcpy</a></div><div class="ttdeci">virtual void handleStrcpy(const CallICFGNode *call)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01284">AbstractInterpretation.cpp:1284</a></div></div>
435
- <div class="ttc" id="aclassSVF_1_1AEStat_html_ae24590233a864e18a6b0948bef89201a"><div class="ttname"><a href="classSVF_1_1AEStat.html#ae24590233a864e18a6b0948bef89201a">SVF::AEStat::reportBug</a></div><div class="ttdeci">void reportBug()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01046">AbstractInterpretation.cpp:1046</a></div></div>
436
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_aa27d0ef684deec1f5385fdb0d4c64827"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#aa27d0ef684deec1f5385fdb0d4c64827">SVF::AbstractInterpretation::_func_map</a></div><div class="ttdeci">Map&lt; std::string, std::function&lt; void(const CallSite &amp;)&gt; &gt; _func_map</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00380">AbstractInterpretation.h:380</a></div></div>
437
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a00154ebaceda1be070b38803c1a82535"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a00154ebaceda1be070b38803c1a82535">SVF::AbstractInterpretation::_api</a></div><div class="ttdeci">AEAPI * _api</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00346">AbstractInterpretation.h:346</a></div></div>
449
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ac941d1eb9b1216c8334d0685a471b774"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ac941d1eb9b1216c8334d0685a471b774">SVF::AbstractInterpretation::handleStrcpy</a></div><div class="ttdeci">virtual void handleStrcpy(const CallICFGNode *call)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01271">AbstractInterpretation.cpp:1271</a></div></div>
450
+ <div class="ttc" id="aclassSVF_1_1AEStat_html_ae24590233a864e18a6b0948bef89201a"><div class="ttname"><a href="classSVF_1_1AEStat.html#ae24590233a864e18a6b0948bef89201a">SVF::AEStat::reportBug</a></div><div class="ttdeci">void reportBug()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01037">AbstractInterpretation.cpp:1037</a></div></div>
451
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_aa27d0ef684deec1f5385fdb0d4c64827"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#aa27d0ef684deec1f5385fdb0d4c64827">SVF::AbstractInterpretation::_func_map</a></div><div class="ttdeci">Map&lt; std::string, std::function&lt; void(const CallSite &amp;)&gt; &gt; _func_map</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00387">AbstractInterpretation.h:387</a></div></div>
452
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a00154ebaceda1be070b38803c1a82535"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a00154ebaceda1be070b38803c1a82535">SVF::AbstractInterpretation::_api</a></div><div class="ttdeci">AEAPI * _api</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00340">AbstractInterpretation.h:340</a></div></div>
438
453
  <div class="ttc" id="aclassSVF_1_1SVFStat_html"><div class="ttname"><a href="classSVF_1_1SVFStat.html">SVF::SVFStat</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00040">SVFStat.h:40</a></div></div>
439
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a5bcfbde64bd51082e8c587e0bc708377"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a5bcfbde64bd51082e8c587e0bc708377">SVF::AbstractInterpretation::_postAbstractTrace</a></div><div class="ttdeci">Map&lt; const ICFGNode *, AbstractState &gt; _postAbstractTrace</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00384">AbstractInterpretation.h:384</a></div></div>
440
454
  <div class="ttc" id="anamespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00046">GeneralType.h:46</a></div></div>
441
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a01650b2a16e327408ce180b2d1bc9631"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a01650b2a16e327408ce180b2d1bc9631">SVF::AbstractInterpretation::hasCmpBranchES</a></div><div class="ttdeci">bool hasCmpBranchES(const CmpStmt *cmpStmt, s64_t succ, AbstractState &amp;es)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00228">AbstractInterpretation.cpp:228</a></div></div>
442
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_af966130d5cb8d7db786c3ec056cc2dd4"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#af966130d5cb8d7db786c3ec056cc2dd4">SVF::AbstractInterpretation::SkipRecursiveCall</a></div><div class="ttdeci">virtual void SkipRecursiveCall(const CallICFGNode *callnode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00889">AbstractInterpretation.cpp:889</a></div></div>
455
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_af966130d5cb8d7db786c3ec056cc2dd4"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#af966130d5cb8d7db786c3ec056cc2dd4">SVF::AbstractInterpretation::SkipRecursiveCall</a></div><div class="ttdeci">virtual void SkipRecursiveCall(const CallICFGNode *callnode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00887">AbstractInterpretation.cpp:887</a></div></div>
443
456
  <div class="ttc" id="aAndersen_8h_html"><div class="ttname"><a href="Andersen_8h.html">Andersen.h</a></div></div>
444
- <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a219313e979d779221116c1bc45becc1b"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a219313e979d779221116c1bc45becc1b">SVF::AbstractInterpretation::_checkpoints</a></div><div class="ttdeci">Set&lt; const CallICFGNode * &gt; _checkpoints</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00381">AbstractInterpretation.h:381</a></div></div>
457
+ <div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a219313e979d779221116c1bc45becc1b"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a219313e979d779221116c1bc45becc1b">SVF::AbstractInterpretation::_checkpoints</a></div><div class="ttdeci">Set&lt; const CallICFGNode * &gt; _checkpoints</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00388">AbstractInterpretation.h:388</a></div></div>
445
458
  <!-- start footer part -->
446
459
  <hr class="footer"/><address class="footer"><small>
447
460
  Generated by &#160;<a href="http://www.doxygen.org/index.html">