svf-tools 1.0.784 → 1.0.786

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 (249) hide show
  1. package/SVF-doxygen/html/CFBasicBlockG_8cpp_source.html +56 -43
  2. package/SVF-doxygen/html/CFBasicBlockG_8h_source.html +505 -494
  3. package/SVF-doxygen/html/WTO_8h_source.html +3 -3
  4. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockEdge-members.html +27 -26
  5. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockEdge.html +62 -19
  6. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGBuilder.html +53 -41
  7. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGWTOCycle.html +1 -1
  8. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGWTONode.html +1 -1
  9. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGraph-members.html +6 -5
  10. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockGraph.html +169 -136
  11. package/SVF-doxygen/html/classSVF_1_1CFBasicBlockNode.html +177 -177
  12. package/SVF-doxygen/html/functions.html +3 -3
  13. package/SVF-doxygen/html/functions_b.html +3 -3
  14. package/SVF-doxygen/html/functions_c.html +29 -29
  15. package/SVF-doxygen/html/functions_f.html +3 -3
  16. package/SVF-doxygen/html/functions_func_c.html +21 -21
  17. package/SVF-doxygen/html/functions_func_g.html +11 -8
  18. package/SVF-doxygen/html/functions_func_h.html +4 -1
  19. package/SVF-doxygen/html/functions_func_s.html +25 -22
  20. package/SVF-doxygen/html/functions_g.html +7 -4
  21. package/SVF-doxygen/html/functions_h.html +3 -0
  22. package/SVF-doxygen/html/functions_i.html +6 -6
  23. package/SVF-doxygen/html/functions_l.html +3 -3
  24. package/SVF-doxygen/html/functions_n.html +4 -4
  25. package/SVF-doxygen/html/functions_o.html +18 -18
  26. package/SVF-doxygen/html/functions_p.html +12 -12
  27. package/SVF-doxygen/html/functions_r.html +5 -3
  28. package/SVF-doxygen/html/functions_s.html +21 -18
  29. package/SVF-doxygen/html/functions_t.html +10 -10
  30. package/SVF-doxygen/html/functions_v.html +3 -3
  31. package/SVF-doxygen/html/functions_vars.html +3 -3
  32. package/SVF-doxygen/html/namespaceSVF.html +2 -2
  33. package/SVF-doxygen/html/search/all_0.js +18 -18
  34. package/SVF-doxygen/html/search/all_10.js +324 -324
  35. package/SVF-doxygen/html/search/all_11.js +224 -224
  36. package/SVF-doxygen/html/search/all_12.js +542 -541
  37. package/SVF-doxygen/html/search/all_13.js +190 -190
  38. package/SVF-doxygen/html/search/all_14.js +67 -67
  39. package/SVF-doxygen/html/search/all_15.js +170 -170
  40. package/SVF-doxygen/html/search/all_16.js +63 -63
  41. package/SVF-doxygen/html/search/all_17.js +1 -1
  42. package/SVF-doxygen/html/search/all_18.js +1 -1
  43. package/SVF-doxygen/html/search/all_19.js +11 -11
  44. package/SVF-doxygen/html/search/all_1a.js +172 -172
  45. package/SVF-doxygen/html/search/all_2.js +1 -1
  46. package/SVF-doxygen/html/search/all_3.js +1 -1
  47. package/SVF-doxygen/html/search/all_6.js +1 -1
  48. package/SVF-doxygen/html/search/all_7.js +592 -591
  49. package/SVF-doxygen/html/search/all_8.js +195 -194
  50. package/SVF-doxygen/html/search/all_9.js +607 -607
  51. package/SVF-doxygen/html/search/all_a.js +46 -46
  52. package/SVF-doxygen/html/search/all_b.js +26 -26
  53. package/SVF-doxygen/html/search/all_c.js +116 -116
  54. package/SVF-doxygen/html/search/all_d.js +196 -196
  55. package/SVF-doxygen/html/search/all_e.js +207 -207
  56. package/SVF-doxygen/html/search/all_f.js +116 -116
  57. package/SVF-doxygen/html/search/classes_0.js +26 -26
  58. package/SVF-doxygen/html/search/classes_1.js +9 -9
  59. package/SVF-doxygen/html/search/classes_10.js +73 -73
  60. package/SVF-doxygen/html/search/classes_11.js +15 -15
  61. package/SVF-doxygen/html/search/classes_12.js +2 -2
  62. package/SVF-doxygen/html/search/classes_13.js +10 -10
  63. package/SVF-doxygen/html/search/classes_14.js +14 -14
  64. package/SVF-doxygen/html/search/classes_15.js +1 -1
  65. package/SVF-doxygen/html/search/classes_2.js +80 -80
  66. package/SVF-doxygen/html/search/classes_3.js +37 -37
  67. package/SVF-doxygen/html/search/classes_4.js +9 -9
  68. package/SVF-doxygen/html/search/classes_5.js +28 -28
  69. package/SVF-doxygen/html/search/classes_6.js +104 -104
  70. package/SVF-doxygen/html/search/classes_7.js +33 -33
  71. package/SVF-doxygen/html/search/classes_8.js +56 -56
  72. package/SVF-doxygen/html/search/classes_9.js +1 -1
  73. package/SVF-doxygen/html/search/classes_a.js +12 -12
  74. package/SVF-doxygen/html/search/classes_b.js +29 -29
  75. package/SVF-doxygen/html/search/classes_c.js +6 -6
  76. package/SVF-doxygen/html/search/classes_d.js +18 -18
  77. package/SVF-doxygen/html/search/classes_e.js +36 -36
  78. package/SVF-doxygen/html/search/classes_f.js +25 -25
  79. package/SVF-doxygen/html/search/defines_0.js +3 -3
  80. package/SVF-doxygen/html/search/defines_1.js +2 -2
  81. package/SVF-doxygen/html/search/defines_2.js +30 -30
  82. package/SVF-doxygen/html/search/defines_3.js +21 -21
  83. package/SVF-doxygen/html/search/defines_4.js +2 -2
  84. package/SVF-doxygen/html/search/defines_5.js +4 -4
  85. package/SVF-doxygen/html/search/defines_6.js +2 -2
  86. package/SVF-doxygen/html/search/defines_7.js +5 -5
  87. package/SVF-doxygen/html/search/defines_8.js +11 -11
  88. package/SVF-doxygen/html/search/defines_9.js +9 -9
  89. package/SVF-doxygen/html/search/defines_a.js +2 -2
  90. package/SVF-doxygen/html/search/defines_b.js +1 -1
  91. package/SVF-doxygen/html/search/defines_c.js +3 -3
  92. package/SVF-doxygen/html/search/defines_d.js +2 -2
  93. package/SVF-doxygen/html/search/defines_e.js +7 -7
  94. package/SVF-doxygen/html/search/defines_f.js +3 -3
  95. package/SVF-doxygen/html/search/enums_0.js +3 -3
  96. package/SVF-doxygen/html/search/enums_1.js +2 -2
  97. package/SVF-doxygen/html/search/enums_10.js +1 -1
  98. package/SVF-doxygen/html/search/enums_11.js +1 -1
  99. package/SVF-doxygen/html/search/enums_2.js +8 -8
  100. package/SVF-doxygen/html/search/enums_3.js +1 -1
  101. package/SVF-doxygen/html/search/enums_4.js +3 -3
  102. package/SVF-doxygen/html/search/enums_5.js +1 -1
  103. package/SVF-doxygen/html/search/enums_6.js +2 -2
  104. package/SVF-doxygen/html/search/enums_7.js +2 -2
  105. package/SVF-doxygen/html/search/enums_8.js +4 -4
  106. package/SVF-doxygen/html/search/enums_9.js +1 -1
  107. package/SVF-doxygen/html/search/enums_a.js +1 -1
  108. package/SVF-doxygen/html/search/enums_b.js +7 -7
  109. package/SVF-doxygen/html/search/enums_c.js +1 -1
  110. package/SVF-doxygen/html/search/enums_d.js +4 -4
  111. package/SVF-doxygen/html/search/enums_e.js +2 -2
  112. package/SVF-doxygen/html/search/enums_f.js +4 -4
  113. package/SVF-doxygen/html/search/enumvalues_0.js +14 -14
  114. package/SVF-doxygen/html/search/enumvalues_1.js +14 -14
  115. package/SVF-doxygen/html/search/enumvalues_10.js +35 -35
  116. package/SVF-doxygen/html/search/enumvalues_11.js +3 -3
  117. package/SVF-doxygen/html/search/enumvalues_12.js +10 -10
  118. package/SVF-doxygen/html/search/enumvalues_13.js +1 -1
  119. package/SVF-doxygen/html/search/enumvalues_14.js +1 -1
  120. package/SVF-doxygen/html/search/enumvalues_15.js +3 -3
  121. package/SVF-doxygen/html/search/enumvalues_2.js +36 -36
  122. package/SVF-doxygen/html/search/enumvalues_3.js +13 -13
  123. package/SVF-doxygen/html/search/enumvalues_4.js +2 -2
  124. package/SVF-doxygen/html/search/enumvalues_5.js +47 -47
  125. package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
  126. package/SVF-doxygen/html/search/enumvalues_7.js +9 -9
  127. package/SVF-doxygen/html/search/enumvalues_8.js +23 -23
  128. package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
  129. package/SVF-doxygen/html/search/enumvalues_a.js +15 -15
  130. package/SVF-doxygen/html/search/enumvalues_b.js +11 -11
  131. package/SVF-doxygen/html/search/enumvalues_c.js +5 -5
  132. package/SVF-doxygen/html/search/enumvalues_d.js +18 -18
  133. package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
  134. package/SVF-doxygen/html/search/enumvalues_f.js +45 -45
  135. package/SVF-doxygen/html/search/files_0.js +13 -13
  136. package/SVF-doxygen/html/search/files_1.js +7 -7
  137. package/SVF-doxygen/html/search/files_10.js +8 -8
  138. package/SVF-doxygen/html/search/files_11.js +8 -8
  139. package/SVF-doxygen/html/search/files_12.js +2 -2
  140. package/SVF-doxygen/html/search/files_2.js +53 -53
  141. package/SVF-doxygen/html/search/files_3.js +14 -14
  142. package/SVF-doxygen/html/search/files_4.js +5 -5
  143. package/SVF-doxygen/html/search/files_5.js +13 -13
  144. package/SVF-doxygen/html/search/files_6.js +9 -9
  145. package/SVF-doxygen/html/search/files_7.js +14 -14
  146. package/SVF-doxygen/html/search/files_8.js +13 -13
  147. package/SVF-doxygen/html/search/files_9.js +18 -18
  148. package/SVF-doxygen/html/search/files_a.js +3 -3
  149. package/SVF-doxygen/html/search/files_b.js +2 -2
  150. package/SVF-doxygen/html/search/files_c.js +20 -20
  151. package/SVF-doxygen/html/search/files_d.js +4 -4
  152. package/SVF-doxygen/html/search/files_e.js +62 -62
  153. package/SVF-doxygen/html/search/files_f.js +8 -8
  154. package/SVF-doxygen/html/search/functions_0.js +12 -12
  155. package/SVF-doxygen/html/search/functions_1.js +356 -356
  156. package/SVF-doxygen/html/search/functions_10.js +140 -140
  157. package/SVF-doxygen/html/search/functions_11.js +138 -138
  158. package/SVF-doxygen/html/search/functions_12.js +277 -276
  159. package/SVF-doxygen/html/search/functions_13.js +58 -58
  160. package/SVF-doxygen/html/search/functions_14.js +39 -39
  161. package/SVF-doxygen/html/search/functions_15.js +71 -71
  162. package/SVF-doxygen/html/search/functions_16.js +32 -32
  163. package/SVF-doxygen/html/search/functions_17.js +3 -3
  164. package/SVF-doxygen/html/search/functions_18.js +172 -172
  165. package/SVF-doxygen/html/search/functions_2.js +86 -86
  166. package/SVF-doxygen/html/search/functions_3.js +257 -257
  167. package/SVF-doxygen/html/search/functions_4.js +75 -75
  168. package/SVF-doxygen/html/search/functions_5.js +53 -53
  169. package/SVF-doxygen/html/search/functions_6.js +59 -59
  170. package/SVF-doxygen/html/search/functions_7.js +849 -848
  171. package/SVF-doxygen/html/search/functions_8.js +147 -146
  172. package/SVF-doxygen/html/search/functions_9.js +425 -425
  173. package/SVF-doxygen/html/search/functions_a.js +30 -30
  174. package/SVF-doxygen/html/search/functions_b.js +2 -2
  175. package/SVF-doxygen/html/search/functions_c.js +26 -26
  176. package/SVF-doxygen/html/search/functions_d.js +77 -77
  177. package/SVF-doxygen/html/search/functions_e.js +35 -35
  178. package/SVF-doxygen/html/search/functions_f.js +56 -56
  179. package/SVF-doxygen/html/search/namespaces_0.js +1 -1
  180. package/SVF-doxygen/html/search/namespaces_1.js +7 -7
  181. package/SVF-doxygen/html/search/related_0.js +2 -2
  182. package/SVF-doxygen/html/search/related_1.js +2 -2
  183. package/SVF-doxygen/html/search/related_2.js +2 -2
  184. package/SVF-doxygen/html/search/related_3.js +2 -2
  185. package/SVF-doxygen/html/search/related_4.js +2 -2
  186. package/SVF-doxygen/html/search/related_5.js +1 -1
  187. package/SVF-doxygen/html/search/related_6.js +2 -2
  188. package/SVF-doxygen/html/search/related_7.js +4 -4
  189. package/SVF-doxygen/html/search/related_8.js +2 -2
  190. package/SVF-doxygen/html/search/related_9.js +4 -4
  191. package/SVF-doxygen/html/search/related_a.js +19 -19
  192. package/SVF-doxygen/html/search/related_b.js +4 -4
  193. package/SVF-doxygen/html/search/related_c.js +1 -1
  194. package/SVF-doxygen/html/search/related_d.js +11 -11
  195. package/SVF-doxygen/html/search/related_e.js +2 -2
  196. package/SVF-doxygen/html/search/related_f.js +2 -2
  197. package/SVF-doxygen/html/search/typedefs_0.js +18 -18
  198. package/SVF-doxygen/html/search/typedefs_1.js +26 -26
  199. package/SVF-doxygen/html/search/typedefs_10.js +61 -61
  200. package/SVF-doxygen/html/search/typedefs_11.js +13 -13
  201. package/SVF-doxygen/html/search/typedefs_12.js +11 -11
  202. package/SVF-doxygen/html/search/typedefs_13.js +35 -35
  203. package/SVF-doxygen/html/search/typedefs_14.js +8 -8
  204. package/SVF-doxygen/html/search/typedefs_2.js +129 -129
  205. package/SVF-doxygen/html/search/typedefs_3.js +39 -39
  206. package/SVF-doxygen/html/search/typedefs_4.js +17 -17
  207. package/SVF-doxygen/html/search/typedefs_5.js +41 -41
  208. package/SVF-doxygen/html/search/typedefs_6.js +55 -55
  209. package/SVF-doxygen/html/search/typedefs_7.js +42 -42
  210. package/SVF-doxygen/html/search/typedefs_8.js +1 -1
  211. package/SVF-doxygen/html/search/typedefs_9.js +6 -6
  212. package/SVF-doxygen/html/search/typedefs_a.js +29 -29
  213. package/SVF-doxygen/html/search/typedefs_b.js +29 -29
  214. package/SVF-doxygen/html/search/typedefs_c.js +41 -41
  215. package/SVF-doxygen/html/search/typedefs_d.js +15 -15
  216. package/SVF-doxygen/html/search/typedefs_e.js +52 -52
  217. package/SVF-doxygen/html/search/typedefs_f.js +14 -14
  218. package/SVF-doxygen/html/search/variables_0.js +152 -152
  219. package/SVF-doxygen/html/search/variables_1.js +75 -75
  220. package/SVF-doxygen/html/search/variables_10.js +97 -97
  221. package/SVF-doxygen/html/search/variables_11.js +46 -46
  222. package/SVF-doxygen/html/search/variables_12.js +92 -92
  223. package/SVF-doxygen/html/search/variables_13.js +75 -75
  224. package/SVF-doxygen/html/search/variables_14.js +14 -14
  225. package/SVF-doxygen/html/search/variables_15.js +48 -48
  226. package/SVF-doxygen/html/search/variables_16.js +9 -9
  227. package/SVF-doxygen/html/search/variables_17.js +1 -1
  228. package/SVF-doxygen/html/search/variables_18.js +2 -2
  229. package/SVF-doxygen/html/search/variables_2.js +37 -37
  230. package/SVF-doxygen/html/search/variables_3.js +142 -142
  231. package/SVF-doxygen/html/search/variables_4.js +55 -55
  232. package/SVF-doxygen/html/search/variables_5.js +39 -39
  233. package/SVF-doxygen/html/search/variables_6.js +66 -66
  234. package/SVF-doxygen/html/search/variables_7.js +33 -33
  235. package/SVF-doxygen/html/search/variables_8.js +7 -7
  236. package/SVF-doxygen/html/search/variables_9.js +77 -77
  237. package/SVF-doxygen/html/search/variables_a.js +4 -4
  238. package/SVF-doxygen/html/search/variables_b.js +10 -10
  239. package/SVF-doxygen/html/search/variables_c.js +45 -45
  240. package/SVF-doxygen/html/search/variables_d.js +56 -56
  241. package/SVF-doxygen/html/search/variables_e.js +123 -123
  242. package/SVF-doxygen/html/search/variables_f.js +30 -30
  243. package/SVF-doxygen/html/structSVF_1_1DOTGraphTraits_3_01SVF_1_1CFBasicBlockGraph_01_5_01_4.html +40 -40
  244. package/SVF-doxygen/html/structSVF_1_1GenericGraphTraits_3_01Inverse_3_01SVF_1_1CFBasicBlockNode_01_5_01_4_01_4.html +1 -1
  245. package/SVF-doxygen/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFBasicBlockGraph_01_5_01_4.html +2 -2
  246. package/SVF-doxygen/html/structSVF_1_1GenericGraphTraits_3_01SVF_1_1CFBasicBlockNode_01_5_01_4.html +1 -1
  247. package/package.json +1 -1
  248. package/svf/include/Graphs/CFBasicBlockG.h +16 -7
  249. package/svf/lib/Graphs/CFBasicBlockG.cpp +14 -2
@@ -99,10 +99,12 @@ Public Member Functions</h2></td></tr>
99
99
  <tr class="separator:a54200b5a7c41c2ba19660da34c295e81"><td class="memSeparator" colspan="2">&#160;</td></tr>
100
100
  <tr class="memitem:aa2110611126556090763024828dbc516"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#aa2110611126556090763024828dbc516">hasCFBasicBlockNode</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id) const</td></tr>
101
101
  <tr class="separator:aa2110611126556090763024828dbc516"><td class="memSeparator" colspan="2">&#160;</td></tr>
102
- <tr class="memitem:ad0755f35747c47572254410271bf1249"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#ad0755f35747c47572254410271bf1249">getCFBasicBlockNode</a> (const <a class="el" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a> *bb) const</td></tr>
103
- <tr class="separator:ad0755f35747c47572254410271bf1249"><td class="memSeparator" colspan="2">&#160;</td></tr>
104
- <tr class="memitem:aea881b727843ac6445e801f3ddfa4a98"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#aea881b727843ac6445e801f3ddfa4a98">hasCFBasicBlockNode</a> (const <a class="el" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a> *bb) const</td></tr>
105
- <tr class="separator:aea881b727843ac6445e801f3ddfa4a98"><td class="memSeparator" colspan="2">&#160;</td></tr>
102
+ <tr class="memitem:a39f1a9c9938ebec94ef050e3770620e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#a39f1a9c9938ebec94ef050e3770620e6">getFirstCFBasicBlockNode</a> (const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *fun) const</td></tr>
103
+ <tr class="separator:a39f1a9c9938ebec94ef050e3770620e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
104
+ <tr class="memitem:a76632f02601c6a628058744f736a4352"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#a76632f02601c6a628058744f736a4352">hasFirstCFBasicBlockNode</a> (const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *fun) const</td></tr>
105
+ <tr class="separator:a76632f02601c6a628058744f736a4352"><td class="memSeparator" colspan="2">&#160;</td></tr>
106
+ <tr class="memitem:a0fb246e9cdbc7fcdc69d9049ed61d8ad"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#a0fb246e9cdbc7fcdc69d9049ed61d8ad">setFirstCFBasicBlockNode</a> (const <a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt; const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *, <a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a> * &gt; &amp;svfNodeMap)</td></tr>
107
+ <tr class="separator:a0fb246e9cdbc7fcdc69d9049ed61d8ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
106
108
  <tr class="memitem:a8e41d155ded9f4527adf8f1644600839"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#a8e41d155ded9f4527adf8f1644600839">hasCFBasicBlockEdge</a> (<a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a> *src, <a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a> *dst, <a class="el" href="classSVF_1_1ICFGEdge.html">ICFGEdge</a> *icfgEdge)</td></tr>
107
109
  <tr class="separator:a8e41d155ded9f4527adf8f1644600839"><td class="memSeparator" colspan="2">&#160;</td></tr>
108
110
  <tr class="memitem:a154d9dae860b441b1653e0afb90f1da3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#a154d9dae860b441b1653e0afb90f1da3">hasCFBasicBlockEdge</a> (<a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a> *src, <a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a> *dst) const</td></tr>
@@ -174,8 +176,8 @@ Private Attributes</h2></td></tr>
174
176
  <tr class="separator:af26009309b28b1d9f3f31f802307f6e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
175
177
  <tr class="memitem:a307a47681c72267f6e90d7009d1b3c6b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#a307a47681c72267f6e90d7009d1b3c6b">_totalCFBasicBlockEdge</a> {0}</td></tr>
176
178
  <tr class="separator:a307a47681c72267f6e90d7009d1b3c6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
177
- <tr class="memitem:ab8b75e7bcafc8a1512c3e78d12bffe16"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt; const <a class="el" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a> *, <a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#ab8b75e7bcafc8a1512c3e78d12bffe16">_bbToNode</a></td></tr>
178
- <tr class="separator:ab8b75e7bcafc8a1512c3e78d12bffe16"><td class="memSeparator" colspan="2">&#160;</td></tr>
179
+ <tr class="memitem:a22c1d5a9da2acd9c3ad8bb5f72cfbfc8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt; const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *, <a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFBasicBlockGraph.html#a22c1d5a9da2acd9c3ad8bb5f72cfbfc8">_funToFirstNode</a></td></tr>
180
+ <tr class="separator:a22c1d5a9da2acd9c3ad8bb5f72cfbfc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
179
181
  </table><table class="memberdecls">
180
182
  <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
181
183
  Friends</h2></td></tr>
@@ -211,7 +213,7 @@ Additional Inherited Members</h2></td></tr>
211
213
  </table>
212
214
  <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
213
215
  <div class="textblock">
214
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00347">347</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
216
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00352">352</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
215
217
  </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
216
218
  <a id="afad7ee1f21bf2983d4aa40cccf368137"></a>
217
219
  <h2 class="memtitle"><span class="permalink"><a href="#afad7ee1f21bf2983d4aa40cccf368137">&#9670;&nbsp;</a></span>CFBasicBlockGraph()</h2>
@@ -290,14 +292,14 @@ Additional Inherited Members</h2></td></tr>
290
292
 
291
293
  <p>Add ICFGEdgeWrapper. </p>
292
294
 
293
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00467">467</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
294
- <div class="fragment"><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; {</div>
295
- <div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="keywordtype">bool</span> added1 = edge-&gt;getDstNode()-&gt;addIncomingEdge(edge);</div>
296
- <div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordtype">bool</span> added2 = edge-&gt;getSrcNode()-&gt;addOutgoingEdge(edge);</div>
297
- <div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; assert(added1 &amp;&amp; added2 &amp;&amp; <span class="stringliteral">&quot;edge not added??&quot;</span>);</div>
298
- <div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a307a47681c72267f6e90d7009d1b3c6b">_totalCFBasicBlockEdge</a>++;</div>
299
- <div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
300
- <div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; }</div>
295
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00476">476</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
296
+ <div class="fragment"><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; {</div>
297
+ <div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <span class="keywordtype">bool</span> added1 = edge-&gt;getDstNode()-&gt;addIncomingEdge(edge);</div>
298
+ <div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <span class="keywordtype">bool</span> added2 = edge-&gt;getSrcNode()-&gt;addOutgoingEdge(edge);</div>
299
+ <div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; assert(added1 &amp;&amp; added2 &amp;&amp; <span class="stringliteral">&quot;edge not added??&quot;</span>);</div>
300
+ <div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a307a47681c72267f6e90d7009d1b3c6b">_totalCFBasicBlockEdge</a>++;</div>
301
+ <div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
302
+ <div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; }</div>
301
303
  </div><!-- fragment -->
302
304
  </div>
303
305
  </div>
@@ -327,11 +329,11 @@ Additional Inherited Members</h2></td></tr>
327
329
 
328
330
  <p>Add a ICFGNodeWrapper. </p>
329
331
 
330
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00477">477</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
331
- <div class="fragment"><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; {</div>
332
- <div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <a class="code" href="classSVF_1_1GenericGraph.html#a0a8831a5429005ff9d71adbd6bf3994f">addGNode</a>(node-&gt;getId(), node);</div>
333
- <div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#af26009309b28b1d9f3f31f802307f6e9">_totalCFBasicBlockNode</a>++;</div>
334
- <div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; }</div>
332
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00486">486</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
333
+ <div class="fragment"><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; {</div>
334
+ <div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <a class="code" href="classSVF_1_1GenericGraph.html#a0a8831a5429005ff9d71adbd6bf3994f">addGNode</a>(node-&gt;getId(), node);</div>
335
+ <div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#af26009309b28b1d9f3f31f802307f6e9">_totalCFBasicBlockNode</a>++;</div>
336
+ <div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; }</div>
335
337
  </div><!-- fragment -->
336
338
  </div>
337
339
  </div>
@@ -361,10 +363,10 @@ Additional Inherited Members</h2></td></tr>
361
363
 
362
364
  <p>Dump graph into dot file. </p>
363
365
 
364
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00362">362</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
365
- <div class="fragment"><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; {</div>
366
- <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <a class="code" href="classSVF_1_1GraphPrinter.html#a014217fb0d05c8f2a2f1a6c5b19d3e10">GraphPrinter::WriteGraphToFile</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>(), filename, <span class="keyword">this</span>);</div>
367
- <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; }</div>
366
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00366">366</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
367
+ <div class="fragment"><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; {</div>
368
+ <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <a class="code" href="classSVF_1_1GraphPrinter.html#a014217fb0d05c8f2a2f1a6c5b19d3e10">GraphPrinter::WriteGraphToFile</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>(), filename, <span class="keyword">this</span>);</div>
369
+ <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; }</div>
368
370
  </div><!-- fragment -->
369
371
  </div>
370
372
  </div>
@@ -461,8 +463,8 @@ Additional Inherited Members</h2></td></tr>
461
463
  </div><!-- fragment -->
462
464
  </div>
463
465
  </div>
464
- <a id="ad0755f35747c47572254410271bf1249"></a>
465
- <h2 class="memtitle"><span class="permalink"><a href="#ad0755f35747c47572254410271bf1249">&#9670;&nbsp;</a></span>getCFBasicBlockNode() <span class="overload">[1/2]</span></h2>
466
+ <a id="a54200b5a7c41c2ba19660da34c295e81"></a>
467
+ <h2 class="memtitle"><span class="permalink"><a href="#a54200b5a7c41c2ba19660da34c295e81">&#9670;&nbsp;</a></span>getCFBasicBlockNode()</h2>
466
468
 
467
469
  <div class="memitem">
468
470
  <div class="memproto">
@@ -473,8 +475,8 @@ Additional Inherited Members</h2></td></tr>
473
475
  <tr>
474
476
  <td class="memname"><a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a>* SVF::CFBasicBlockGraph::getCFBasicBlockNode </td>
475
477
  <td>(</td>
476
- <td class="paramtype">const <a class="el" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a> *&#160;</td>
477
- <td class="paramname"><em>bb</em></td><td>)</td>
478
+ <td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td>
479
+ <td class="paramname"><em>id</em></td><td>)</td>
478
480
  <td> const</td>
479
481
  </tr>
480
482
  </table>
@@ -485,22 +487,16 @@ Additional Inherited Members</h2></td></tr>
485
487
  </table>
486
488
  </div><div class="memdoc">
487
489
 
488
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00378">378</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
489
- <div class="fragment"><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; {</div>
490
- <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">if</span> (bb &amp;&amp; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#ab8b75e7bcafc8a1512c3e78d12bffe16">_bbToNode</a>.find(bb) != <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#ab8b75e7bcafc8a1512c3e78d12bffe16">_bbToNode</a>.end())</div>
491
- <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; {</div>
492
- <div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#ab8b75e7bcafc8a1512c3e78d12bffe16">_bbToNode</a>.at(bb);</div>
493
- <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; }</div>
494
- <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">else</span></div>
495
- <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; {</div>
496
- <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
497
- <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; }</div>
498
- <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; }</div>
490
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00371">371</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
491
+ <div class="fragment"><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; {</div>
492
+ <div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1GenericGraph.html#a6885064afa211958af7b73f0233284e5">hasGNode</a>(<span class="keywordtype">id</span>)) <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
493
+ <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(<span class="keywordtype">id</span>);</div>
494
+ <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; }</div>
499
495
  </div><!-- fragment -->
500
496
  </div>
501
497
  </div>
502
- <a id="a54200b5a7c41c2ba19660da34c295e81"></a>
503
- <h2 class="memtitle"><span class="permalink"><a href="#a54200b5a7c41c2ba19660da34c295e81">&#9670;&nbsp;</a></span>getCFBasicBlockNode() <span class="overload">[2/2]</span></h2>
498
+ <a id="a39f1a9c9938ebec94ef050e3770620e6"></a>
499
+ <h2 class="memtitle"><span class="permalink"><a href="#a39f1a9c9938ebec94ef050e3770620e6">&#9670;&nbsp;</a></span>getFirstCFBasicBlockNode()</h2>
504
500
 
505
501
  <div class="memitem">
506
502
  <div class="memproto">
@@ -509,10 +505,10 @@ Additional Inherited Members</h2></td></tr>
509
505
  <td class="mlabels-left">
510
506
  <table class="memname">
511
507
  <tr>
512
- <td class="memname"><a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a>* SVF::CFBasicBlockGraph::getCFBasicBlockNode </td>
508
+ <td class="memname"><a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a>* SVF::CFBasicBlockGraph::getFirstCFBasicBlockNode </td>
513
509
  <td>(</td>
514
- <td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td>
515
- <td class="paramname"><em>id</em></td><td>)</td>
510
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *&#160;</td>
511
+ <td class="paramname"><em>fun</em></td><td>)</td>
516
512
  <td> const</td>
517
513
  </tr>
518
514
  </table>
@@ -523,11 +519,17 @@ Additional Inherited Members</h2></td></tr>
523
519
  </table>
524
520
  </div><div class="memdoc">
525
521
 
526
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00367">367</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
527
- <div class="fragment"><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; {</div>
528
- <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1GenericGraph.html#a6885064afa211958af7b73f0233284e5">hasGNode</a>(<span class="keywordtype">id</span>)) <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
529
- <div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(<span class="keywordtype">id</span>);</div>
530
- <div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; }</div>
522
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00382">382</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
523
+ <div class="fragment"><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; {</div>
524
+ <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">if</span> (fun &amp;&amp; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a22c1d5a9da2acd9c3ad8bb5f72cfbfc8">_funToFirstNode</a>.find(fun) != <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a22c1d5a9da2acd9c3ad8bb5f72cfbfc8">_funToFirstNode</a>.end())</div>
525
+ <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; {</div>
526
+ <div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a22c1d5a9da2acd9c3ad8bb5f72cfbfc8">_funToFirstNode</a>.at(fun);</div>
527
+ <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; }</div>
528
+ <div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">else</span></div>
529
+ <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; {</div>
530
+ <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
531
+ <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; }</div>
532
+ <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; }</div>
531
533
  </div><!-- fragment -->
532
534
  </div>
533
535
  </div>
@@ -565,15 +567,15 @@ Additional Inherited Members</h2></td></tr>
565
567
  </table>
566
568
  </div><div class="memdoc">
567
569
 
568
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00409">409</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
569
- <div class="fragment"><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; {</div>
570
- <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;e: src-&gt;getOutEdges())</div>
571
- <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; {</div>
572
- <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">if</span> (e-&gt;getDstNode() == dst)</div>
573
- <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
574
- <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; }</div>
575
- <div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
576
- <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; }</div>
570
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00418">418</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
571
+ <div class="fragment"><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; {</div>
572
+ <div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &amp;e: src-&gt;getOutEdges())</div>
573
+ <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; {</div>
574
+ <div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">if</span> (e-&gt;getDstNode() == dst)</div>
575
+ <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
576
+ <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; }</div>
577
+ <div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
578
+ <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; }</div>
577
579
  </div><!-- fragment -->
578
580
  </div>
579
581
  </div>
@@ -617,24 +619,24 @@ Additional Inherited Members</h2></td></tr>
617
619
  </table>
618
620
  </div><div class="memdoc">
619
621
 
620
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00395">395</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
621
- <div class="fragment"><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; {</div>
622
- <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; CFBasicBlockEdge edge(src, dst, icfgEdge);</div>
623
- <div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; CFBasicBlockEdge *outEdge = src-&gt;hasOutgoingEdge(&amp;edge);</div>
624
- <div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; CFBasicBlockEdge *inEdge = dst-&gt;hasIncomingEdge(&amp;edge);</div>
625
- <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">if</span> (outEdge &amp;&amp; inEdge)</div>
626
- <div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; {</div>
627
- <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; assert(outEdge == inEdge &amp;&amp; <span class="stringliteral">&quot;edges not match&quot;</span>);</div>
628
- <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
629
- <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; }</div>
630
- <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">else</span></div>
631
- <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
632
- <div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; }</div>
622
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00404">404</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
623
+ <div class="fragment"><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; {</div>
624
+ <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; CFBasicBlockEdge edge(src, dst, icfgEdge);</div>
625
+ <div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; CFBasicBlockEdge *outEdge = src-&gt;hasOutgoingEdge(&amp;edge);</div>
626
+ <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; CFBasicBlockEdge *inEdge = dst-&gt;hasIncomingEdge(&amp;edge);</div>
627
+ <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">if</span> (outEdge &amp;&amp; inEdge)</div>
628
+ <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; {</div>
629
+ <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; assert(outEdge == inEdge &amp;&amp; <span class="stringliteral">&quot;edges not match&quot;</span>);</div>
630
+ <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
631
+ <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; }</div>
632
+ <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">else</span></div>
633
+ <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
634
+ <div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; }</div>
633
635
  </div><!-- fragment -->
634
636
  </div>
635
637
  </div>
636
- <a id="aea881b727843ac6445e801f3ddfa4a98"></a>
637
- <h2 class="memtitle"><span class="permalink"><a href="#aea881b727843ac6445e801f3ddfa4a98">&#9670;&nbsp;</a></span>hasCFBasicBlockNode() <span class="overload">[1/2]</span></h2>
638
+ <a id="aa2110611126556090763024828dbc516"></a>
639
+ <h2 class="memtitle"><span class="permalink"><a href="#aa2110611126556090763024828dbc516">&#9670;&nbsp;</a></span>hasCFBasicBlockNode()</h2>
638
640
 
639
641
  <div class="memitem">
640
642
  <div class="memproto">
@@ -645,8 +647,8 @@ Additional Inherited Members</h2></td></tr>
645
647
  <tr>
646
648
  <td class="memname">bool SVF::CFBasicBlockGraph::hasCFBasicBlockNode </td>
647
649
  <td>(</td>
648
- <td class="paramtype">const <a class="el" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a> *&#160;</td>
649
- <td class="paramname"><em>bb</em></td><td>)</td>
650
+ <td class="paramtype"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td>
651
+ <td class="paramname"><em>id</em></td><td>)</td>
650
652
  <td> const</td>
651
653
  </tr>
652
654
  </table>
@@ -657,15 +659,15 @@ Additional Inherited Members</h2></td></tr>
657
659
  </table>
658
660
  </div><div class="memdoc">
659
661
 
660
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00390">390</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
661
- <div class="fragment"><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; {</div>
662
- <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">return</span> bb &amp;&amp; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#ab8b75e7bcafc8a1512c3e78d12bffe16">_bbToNode</a>.find(bb) != <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#ab8b75e7bcafc8a1512c3e78d12bffe16">_bbToNode</a>.end();</div>
663
- <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; }</div>
662
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00377">377</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
663
+ <div class="fragment"><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; {</div>
664
+ <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GenericGraph.html#a6885064afa211958af7b73f0233284e5">hasGNode</a>(<span class="keywordtype">id</span>);</div>
665
+ <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; }</div>
664
666
  </div><!-- fragment -->
665
667
  </div>
666
668
  </div>
667
- <a id="aa2110611126556090763024828dbc516"></a>
668
- <h2 class="memtitle"><span class="permalink"><a href="#aa2110611126556090763024828dbc516">&#9670;&nbsp;</a></span>hasCFBasicBlockNode() <span class="overload">[2/2]</span></h2>
669
+ <a id="a76632f02601c6a628058744f736a4352"></a>
670
+ <h2 class="memtitle"><span class="permalink"><a href="#a76632f02601c6a628058744f736a4352">&#9670;&nbsp;</a></span>hasFirstCFBasicBlockNode()</h2>
669
671
 
670
672
  <div class="memitem">
671
673
  <div class="memproto">
@@ -674,10 +676,10 @@ Additional Inherited Members</h2></td></tr>
674
676
  <td class="mlabels-left">
675
677
  <table class="memname">
676
678
  <tr>
677
- <td class="memname">bool SVF::CFBasicBlockGraph::hasCFBasicBlockNode </td>
679
+ <td class="memname">bool SVF::CFBasicBlockGraph::hasFirstCFBasicBlockNode </td>
678
680
  <td>(</td>
679
- <td class="paramtype"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td>
680
- <td class="paramname"><em>id</em></td><td>)</td>
681
+ <td class="paramtype">const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *&#160;</td>
682
+ <td class="paramname"><em>fun</em></td><td>)</td>
681
683
  <td> const</td>
682
684
  </tr>
683
685
  </table>
@@ -688,10 +690,10 @@ Additional Inherited Members</h2></td></tr>
688
690
  </table>
689
691
  </div><div class="memdoc">
690
692
 
691
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00373">373</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
692
- <div class="fragment"><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; {</div>
693
- <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1GenericGraph.html#a6885064afa211958af7b73f0233284e5">hasGNode</a>(<span class="keywordtype">id</span>);</div>
694
- <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; }</div>
693
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00393">393</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
694
+ <div class="fragment"><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; {</div>
695
+ <div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">return</span> fun &amp;&amp; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a22c1d5a9da2acd9c3ad8bb5f72cfbfc8">_funToFirstNode</a>.find(fun) != <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a22c1d5a9da2acd9c3ad8bb5f72cfbfc8">_funToFirstNode</a>.end();</div>
696
+ <div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; }</div>
695
697
  </div><!-- fragment -->
696
698
  </div>
697
699
  </div>
@@ -721,19 +723,19 @@ Additional Inherited Members</h2></td></tr>
721
723
 
722
724
  <p>Remove a ICFGEdgeWrapper. </p>
723
725
 
724
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00424">424</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
725
- <div class="fragment"><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; {</div>
726
- <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keywordflow">if</span> (edge-&gt;getDstNode()-&gt;hasIncomingEdge(edge))</div>
727
- <div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; {</div>
728
- <div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; edge-&gt;getDstNode()-&gt;removeIncomingEdge(edge);</div>
729
- <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; }</div>
730
- <div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordflow">if</span> (edge-&gt;getSrcNode()-&gt;hasOutgoingEdge(edge))</div>
731
- <div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; {</div>
732
- <div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; edge-&gt;getSrcNode()-&gt;removeOutgoingEdge(edge);</div>
733
- <div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; }</div>
734
- <div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keyword">delete</span> edge;</div>
735
- <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a307a47681c72267f6e90d7009d1b3c6b">_totalCFBasicBlockEdge</a>--;</div>
736
- <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; }</div>
726
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00433">433</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
727
+ <div class="fragment"><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; {</div>
728
+ <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordflow">if</span> (edge-&gt;getDstNode()-&gt;hasIncomingEdge(edge))</div>
729
+ <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; {</div>
730
+ <div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; edge-&gt;getDstNode()-&gt;removeIncomingEdge(edge);</div>
731
+ <div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }</div>
732
+ <div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">if</span> (edge-&gt;getSrcNode()-&gt;hasOutgoingEdge(edge))</div>
733
+ <div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; {</div>
734
+ <div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; edge-&gt;getSrcNode()-&gt;removeOutgoingEdge(edge);</div>
735
+ <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; }</div>
736
+ <div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keyword">delete</span> edge;</div>
737
+ <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a307a47681c72267f6e90d7009d1b3c6b">_totalCFBasicBlockEdge</a>--;</div>
738
+ <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; }</div>
737
739
  </div><!-- fragment -->
738
740
  </div>
739
741
  </div>
@@ -763,20 +765,20 @@ Additional Inherited Members</h2></td></tr>
763
765
 
764
766
  <p>Remove a ICFGNodeWrapper. </p>
765
767
 
766
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00439">439</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
767
- <div class="fragment"><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; {</div>
768
- <div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; std::set&lt;CFBasicBlockEdge *&gt; temp;</div>
769
- <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">for</span> (CFBasicBlockEdge *e: node-&gt;getInEdges())</div>
770
- <div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; temp.insert(e);</div>
771
- <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">for</span> (CFBasicBlockEdge *e: node-&gt;getOutEdges())</div>
772
- <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; temp.insert(e);</div>
773
- <div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="keywordflow">for</span> (CFBasicBlockEdge *e: temp)</div>
774
- <div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; {</div>
775
- <div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a9d7ebedc25848db79b551cb8a1ef11af">removeCFBBEdge</a>(e);</div>
776
- <div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; }</div>
777
- <div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <a class="code" href="classSVF_1_1GenericGraph.html#a1817b65e76052f11e36a67d6b9efd915">removeGNode</a>(node);</div>
778
- <div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#af26009309b28b1d9f3f31f802307f6e9">_totalCFBasicBlockNode</a>--;</div>
779
- <div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; }</div>
768
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00448">448</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
769
+ <div class="fragment"><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; {</div>
770
+ <div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; std::set&lt;CFBasicBlockEdge *&gt; temp;</div>
771
+ <div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">for</span> (CFBasicBlockEdge *e: node-&gt;getInEdges())</div>
772
+ <div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; temp.insert(e);</div>
773
+ <div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keywordflow">for</span> (CFBasicBlockEdge *e: node-&gt;getOutEdges())</div>
774
+ <div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; temp.insert(e);</div>
775
+ <div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">for</span> (CFBasicBlockEdge *e: temp)</div>
776
+ <div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; {</div>
777
+ <div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a9d7ebedc25848db79b551cb8a1ef11af">removeCFBBEdge</a>(e);</div>
778
+ <div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; }</div>
779
+ <div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <a class="code" href="classSVF_1_1GenericGraph.html#a1817b65e76052f11e36a67d6b9efd915">removeGNode</a>(node);</div>
780
+ <div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#af26009309b28b1d9f3f31f802307f6e9">_totalCFBasicBlockNode</a>--;</div>
781
+ <div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; }</div>
780
782
  </div><!-- fragment -->
781
783
  </div>
782
784
  </div>
@@ -806,15 +808,46 @@ Additional Inherited Members</h2></td></tr>
806
808
 
807
809
  <p>Remove node from nodeID. </p>
808
810
 
809
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00456">456</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
810
- <div class="fragment"><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; {</div>
811
- <div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1GenericGraph.html#a6885064afa211958af7b73f0233284e5">hasGNode</a>(<span class="keywordtype">id</span>))</div>
812
- <div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; {</div>
813
- <div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a0ed78b8098e84845a500979d52bb8d18">removeCFBBNode</a>(<a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(<span class="keywordtype">id</span>));</div>
814
- <div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
815
- <div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; }</div>
816
- <div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
817
- <div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; }</div>
811
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00465">465</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
812
+ <div class="fragment"><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; {</div>
813
+ <div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1GenericGraph.html#a6885064afa211958af7b73f0233284e5">hasGNode</a>(<span class="keywordtype">id</span>))</div>
814
+ <div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; {</div>
815
+ <div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a0ed78b8098e84845a500979d52bb8d18">removeCFBBNode</a>(<a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(<span class="keywordtype">id</span>));</div>
816
+ <div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
817
+ <div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; }</div>
818
+ <div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
819
+ <div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; }</div>
820
+ </div><!-- fragment -->
821
+ </div>
822
+ </div>
823
+ <a id="a0fb246e9cdbc7fcdc69d9049ed61d8ad"></a>
824
+ <h2 class="memtitle"><span class="permalink"><a href="#a0fb246e9cdbc7fcdc69d9049ed61d8ad">&#9670;&nbsp;</a></span>setFirstCFBasicBlockNode()</h2>
825
+
826
+ <div class="memitem">
827
+ <div class="memproto">
828
+ <table class="mlabels">
829
+ <tr>
830
+ <td class="mlabels-left">
831
+ <table class="memname">
832
+ <tr>
833
+ <td class="memname">void SVF::CFBasicBlockGraph::setFirstCFBasicBlockNode </td>
834
+ <td>(</td>
835
+ <td class="paramtype">const <a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt; const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *, <a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a> * &gt; &amp;&#160;</td>
836
+ <td class="paramname"><em>svfNodeMap</em></td><td>)</td>
837
+ <td></td>
838
+ </tr>
839
+ </table>
840
+ </td>
841
+ <td class="mlabels-right">
842
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
843
+ </tr>
844
+ </table>
845
+ </div><div class="memdoc">
846
+
847
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00398">398</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
848
+ <div class="fragment"><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; {</div>
849
+ <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <a class="code" href="classSVF_1_1CFBasicBlockGraph.html#a22c1d5a9da2acd9c3ad8bb5f72cfbfc8">_funToFirstNode</a> = svfNodeMap;</div>
850
+ <div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; }</div>
818
851
  </div><!-- fragment -->
819
852
  </div>
820
853
  </div>
@@ -839,13 +872,13 @@ Additional Inherited Members</h2></td></tr>
839
872
  </table>
840
873
  </div><div class="memdoc">
841
874
 
842
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00349">349</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
875
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00354">354</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
843
876
 
844
877
  </div>
845
878
  </div>
846
879
  <h2 class="groupheader">Member Data Documentation</h2>
847
- <a id="ab8b75e7bcafc8a1512c3e78d12bffe16"></a>
848
- <h2 class="memtitle"><span class="permalink"><a href="#ab8b75e7bcafc8a1512c3e78d12bffe16">&#9670;&nbsp;</a></span>_bbToNode</h2>
880
+ <a id="a22c1d5a9da2acd9c3ad8bb5f72cfbfc8"></a>
881
+ <h2 class="memtitle"><span class="permalink"><a href="#a22c1d5a9da2acd9c3ad8bb5f72cfbfc8">&#9670;&nbsp;</a></span>_funToFirstNode</h2>
849
882
 
850
883
  <div class="memitem">
851
884
  <div class="memproto">
@@ -854,7 +887,7 @@ Additional Inherited Members</h2></td></tr>
854
887
  <td class="mlabels-left">
855
888
  <table class="memname">
856
889
  <tr>
857
- <td class="memname"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt;const <a class="el" href="classSVF_1_1SVFBasicBlock.html">SVFBasicBlock</a>*, <a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a>*&gt; SVF::CFBasicBlockGraph::_bbToNode</td>
890
+ <td class="memname"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>&lt;const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a>*, <a class="el" href="classSVF_1_1CFBasicBlockNode.html">CFBasicBlockNode</a>*&gt; SVF::CFBasicBlockGraph::_funToFirstNode</td>
858
891
  </tr>
859
892
  </table>
860
893
  </td>
@@ -864,7 +897,7 @@ Additional Inherited Members</h2></td></tr>
864
897
  </table>
865
898
  </div><div class="memdoc">
866
899
 
867
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00353">353</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
900
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00358">358</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
868
901
 
869
902
  </div>
870
903
  </div>
@@ -888,7 +921,7 @@ Additional Inherited Members</h2></td></tr>
888
921
  </table>
889
922
  </div><div class="memdoc">
890
923
 
891
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00352">352</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
924
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00357">357</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
892
925
 
893
926
  </div>
894
927
  </div>
@@ -912,7 +945,7 @@ Additional Inherited Members</h2></td></tr>
912
945
  </table>
913
946
  </div><div class="memdoc">
914
947
 
915
- <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00351">351</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
948
+ <p class="definition">Definition at line <a class="el" href="CFBasicBlockG_8h_source.html#l00356">356</a> of file <a class="el" href="CFBasicBlockG_8h_source.html">CFBasicBlockG.h</a>.</p>
916
949
 
917
950
  </div>
918
951
  </div>
@@ -921,18 +954,18 @@ Additional Inherited Members</h2></td></tr>
921
954
  <li>/home/runner/work/SVF/SVF/svf/lib/Graphs/<a class="el" href="CFBasicBlockG_8cpp_source.html">CFBasicBlockG.cpp</a></li>
922
955
  </ul>
923
956
  </div><!-- contents -->
924
- <div class="ttc" id="aclassSVF_1_1CFBasicBlockGraph_html_ab8b75e7bcafc8a1512c3e78d12bffe16"><div class="ttname"><a href="classSVF_1_1CFBasicBlockGraph.html#ab8b75e7bcafc8a1512c3e78d12bffe16">SVF::CFBasicBlockGraph::_bbToNode</a></div><div class="ttdeci">Map&lt; const SVFBasicBlock *, CFBasicBlockNode * &gt; _bbToNode</div><div class="ttdef"><b>Definition:</b> <a href="CFBasicBlockG_8h_source.html#l00353">CFBasicBlockG.h:353</a></div></div>
925
- <div class="ttc" id="aclassSVF_1_1CFBasicBlockGraph_html_a9d7ebedc25848db79b551cb8a1ef11af"><div class="ttname"><a href="classSVF_1_1CFBasicBlockGraph.html#a9d7ebedc25848db79b551cb8a1ef11af">SVF::CFBasicBlockGraph::removeCFBBEdge</a></div><div class="ttdeci">void removeCFBBEdge(CFBasicBlockEdge *edge)</div><div class="ttdoc">Remove a ICFGEdgeWrapper.</div><div class="ttdef"><b>Definition:</b> <a href="CFBasicBlockG_8h_source.html#l00424">CFBasicBlockG.h:424</a></div></div>
926
- <div class="ttc" id="aclassSVF_1_1CFBasicBlockGraph_html_af26009309b28b1d9f3f31f802307f6e9"><div class="ttname"><a href="classSVF_1_1CFBasicBlockGraph.html#af26009309b28b1d9f3f31f802307f6e9">SVF::CFBasicBlockGraph::_totalCFBasicBlockNode</a></div><div class="ttdeci">u32_t _totalCFBasicBlockNode</div><div class="ttdef"><b>Definition:</b> <a href="CFBasicBlockG_8h_source.html#l00351">CFBasicBlockG.h:351</a></div></div>
957
+ <div class="ttc" id="aclassSVF_1_1CFBasicBlockGraph_html_a9d7ebedc25848db79b551cb8a1ef11af"><div class="ttname"><a href="classSVF_1_1CFBasicBlockGraph.html#a9d7ebedc25848db79b551cb8a1ef11af">SVF::CFBasicBlockGraph::removeCFBBEdge</a></div><div class="ttdeci">void removeCFBBEdge(CFBasicBlockEdge *edge)</div><div class="ttdoc">Remove a ICFGEdgeWrapper.</div><div class="ttdef"><b>Definition:</b> <a href="CFBasicBlockG_8h_source.html#l00433">CFBasicBlockG.h:433</a></div></div>
958
+ <div class="ttc" id="aclassSVF_1_1CFBasicBlockGraph_html_af26009309b28b1d9f3f31f802307f6e9"><div class="ttname"><a href="classSVF_1_1CFBasicBlockGraph.html#af26009309b28b1d9f3f31f802307f6e9">SVF::CFBasicBlockGraph::_totalCFBasicBlockNode</a></div><div class="ttdeci">u32_t _totalCFBasicBlockNode</div><div class="ttdef"><b>Definition:</b> <a href="CFBasicBlockG_8h_source.html#l00356">CFBasicBlockG.h:356</a></div></div>
927
959
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a0a8831a5429005ff9d71adbd6bf3994f"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0a8831a5429005ff9d71adbd6bf3994f">SVF::GenericGraph::addGNode</a></div><div class="ttdeci">void addGNode(NodeID id, NodeType *node)</div><div class="ttdoc">Add a Node.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00399">GenericGraph.h:399</a></div></div>
928
960
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a1817b65e76052f11e36a67d6b9efd915"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a1817b65e76052f11e36a67d6b9efd915">SVF::GenericGraph::removeGNode</a></div><div class="ttdeci">void removeGNode(NodeType *node)</div><div class="ttdoc">Delete a node.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00421">GenericGraph.h:421</a></div></div>
929
961
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a43c9c773bfa17abf481c33073e30d01b"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">SVF::GenericGraph::getGNode</a></div><div class="ttdeci">NodeType * getGNode(NodeID id) const</div><div class="ttdoc">Get a node.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00406">GenericGraph.h:406</a></div></div>
930
962
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_a72502f7f536418621485e90ab98c2016"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVF::SVFUtil::move</a></div><div class="ttdeci">constexpr std::remove_reference&lt; T &gt;::type &amp;&amp; move(T &amp;&amp;t) noexcept</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00621">SVFUtil.h:621</a></div></div>
963
+ <div class="ttc" id="aclassSVF_1_1CFBasicBlockGraph_html_a22c1d5a9da2acd9c3ad8bb5f72cfbfc8"><div class="ttname"><a href="classSVF_1_1CFBasicBlockGraph.html#a22c1d5a9da2acd9c3ad8bb5f72cfbfc8">SVF::CFBasicBlockGraph::_funToFirstNode</a></div><div class="ttdeci">Map&lt; const SVFFunction *, CFBasicBlockNode * &gt; _funToFirstNode</div><div class="ttdef"><b>Definition:</b> <a href="CFBasicBlockG_8h_source.html#l00358">CFBasicBlockG.h:358</a></div></div>
931
964
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream &amp; outs()</div><div class="ttdoc">Overwrite llvm::outs()</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00050">SVFUtil.h:50</a></div></div>
932
- <div class="ttc" id="aclassSVF_1_1CFBasicBlockGraph_html_a307a47681c72267f6e90d7009d1b3c6b"><div class="ttname"><a href="classSVF_1_1CFBasicBlockGraph.html#a307a47681c72267f6e90d7009d1b3c6b">SVF::CFBasicBlockGraph::_totalCFBasicBlockEdge</a></div><div class="ttdeci">u32_t _totalCFBasicBlockEdge</div><div class="ttdef"><b>Definition:</b> <a href="CFBasicBlockG_8h_source.html#l00352">CFBasicBlockG.h:352</a></div></div>
965
+ <div class="ttc" id="aclassSVF_1_1CFBasicBlockGraph_html_a307a47681c72267f6e90d7009d1b3c6b"><div class="ttname"><a href="classSVF_1_1CFBasicBlockGraph.html#a307a47681c72267f6e90d7009d1b3c6b">SVF::CFBasicBlockGraph::_totalCFBasicBlockEdge</a></div><div class="ttdeci">u32_t _totalCFBasicBlockEdge</div><div class="ttdef"><b>Definition:</b> <a href="CFBasicBlockG_8h_source.html#l00357">CFBasicBlockG.h:357</a></div></div>
933
966
  <div class="ttc" id="aclassSVF_1_1GenericGraph_html_a6885064afa211958af7b73f0233284e5"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a6885064afa211958af7b73f0233284e5">SVF::GenericGraph::hasGNode</a></div><div class="ttdeci">bool hasGNode(NodeID id) const</div><div class="ttdoc">Has a node.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00414">GenericGraph.h:414</a></div></div>
934
967
  <div class="ttc" id="aclassSVF_1_1GraphPrinter_html_a014217fb0d05c8f2a2f1a6c5b19d3e10"><div class="ttname"><a href="classSVF_1_1GraphPrinter.html#a014217fb0d05c8f2a2f1a6c5b19d3e10">SVF::GraphPrinter::WriteGraphToFile</a></div><div class="ttdeci">static void WriteGraphToFile(SVF::OutStream &amp;O, const std::string &amp;GraphName, const GraphType &amp;GT, bool simple=false)</div><div class="ttdef"><b>Definition:</b> <a href="GraphPrinter_8h_source.html#l00056">GraphPrinter.h:56</a></div></div>
935
- <div class="ttc" id="aclassSVF_1_1CFBasicBlockGraph_html_a0ed78b8098e84845a500979d52bb8d18"><div class="ttname"><a href="classSVF_1_1CFBasicBlockGraph.html#a0ed78b8098e84845a500979d52bb8d18">SVF::CFBasicBlockGraph::removeCFBBNode</a></div><div class="ttdeci">void removeCFBBNode(CFBasicBlockNode *node)</div><div class="ttdoc">Remove a ICFGNodeWrapper.</div><div class="ttdef"><b>Definition:</b> <a href="CFBasicBlockG_8h_source.html#l00439">CFBasicBlockG.h:439</a></div></div>
968
+ <div class="ttc" id="aclassSVF_1_1CFBasicBlockGraph_html_a0ed78b8098e84845a500979d52bb8d18"><div class="ttname"><a href="classSVF_1_1CFBasicBlockGraph.html#a0ed78b8098e84845a500979d52bb8d18">SVF::CFBasicBlockGraph::removeCFBBNode</a></div><div class="ttdeci">void removeCFBBNode(CFBasicBlockNode *node)</div><div class="ttdoc">Remove a ICFGNodeWrapper.</div><div class="ttdef"><b>Definition:</b> <a href="CFBasicBlockG_8h_source.html#l00448">CFBasicBlockG.h:448</a></div></div>
936
969
  <!-- start footer part -->
937
970
  <hr class="footer"/><address class="footer"><small>
938
971
  Generated by &#160;<a href="http://www.doxygen.org/index.html">