svf-tools 1.0.752 → 1.0.754

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 (374) hide show
  1. package/SVF-doxygen/html/html/BoundedZ3Expr_8cpp_source.html +3 -3
  2. package/SVF-doxygen/html/html/BoundedZ3Expr_8h.html +24 -1
  3. package/SVF-doxygen/html/html/BoundedZ3Expr_8h_source.html +373 -376
  4. package/SVF-doxygen/html/html/CFGNormalizer_8cpp_source.html +76 -76
  5. package/SVF-doxygen/html/html/CFGNormalizer_8h.html +1 -1
  6. package/SVF-doxygen/html/html/CFGNormalizer_8h_source.html +29 -29
  7. package/SVF-doxygen/html/html/CFGrammar_8cpp.html +88 -0
  8. package/SVF-doxygen/html/html/CFGrammar_8cpp_source.html +568 -0
  9. package/SVF-doxygen/html/html/CFGrammar_8h.html +108 -0
  10. package/SVF-doxygen/html/html/CFGrammar_8h_source.html +643 -0
  11. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +5 -5
  12. package/SVF-doxygen/html/html/CFLBase_8cpp_source.html +120 -127
  13. package/SVF-doxygen/html/html/CFLBase_8h_source.html +14 -14
  14. package/SVF-doxygen/html/html/CFLGramGraphChecker_8h.html +1 -1
  15. package/SVF-doxygen/html/html/CFLGramGraphChecker_8h_source.html +12 -12
  16. package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +464 -409
  17. package/SVF-doxygen/html/html/CFLGraphBuilder_8h.html +10 -2
  18. package/SVF-doxygen/html/html/CFLGraphBuilder_8h_source.html +120 -175
  19. package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +2 -2
  20. package/SVF-doxygen/html/html/CFLGraph_8h.html +1 -1
  21. package/SVF-doxygen/html/html/CFLGraph_8h_source.html +11 -11
  22. package/SVF-doxygen/html/html/CFLSolver_8cpp_source.html +60 -60
  23. package/SVF-doxygen/html/html/CFLSolver_8h.html +1 -1
  24. package/SVF-doxygen/html/html/CFLSolver_8h_source.html +19 -19
  25. package/SVF-doxygen/html/html/CFLStat_8cpp_source.html +2 -2
  26. package/SVF-doxygen/html/html/CFLVF_8cpp_source.html +5 -5
  27. package/SVF-doxygen/html/html/ConsExeState_8cpp_source.html +1 -1
  28. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +4 -4
  29. package/SVF-doxygen/html/html/GrammarBuilder_8cpp_source.html +7 -7
  30. package/SVF-doxygen/html/html/GrammarBuilder_8h.html +1 -1
  31. package/SVF-doxygen/html/html/GrammarBuilder_8h_source.html +3 -3
  32. package/SVF-doxygen/html/html/GraphWriter_8cpp_source.html +1 -1
  33. package/SVF-doxygen/html/html/GraphWriter_8h_source.html +1 -1
  34. package/SVF-doxygen/html/html/NumericLiteral_8h_source.html +12 -12
  35. package/SVF-doxygen/html/html/PAGGrammar_8txt.html +209 -0
  36. package/SVF-doxygen/html/html/PEGGrammar_8txt.html +11 -11
  37. package/SVF-doxygen/html/html/SingleAbsValue_8h_source.html +4 -4
  38. package/SVF-doxygen/html/html/VFGGrammar_8txt.html +119 -0
  39. package/SVF-doxygen/html/html/annotated.html +6 -6
  40. package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder-members.html +21 -20
  41. package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder.html +223 -220
  42. package/SVF-doxygen/html/html/classSVF_1_1BoundedZ3Expr.html +291 -296
  43. package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer-members.html +10 -10
  44. package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer.html +119 -119
  45. package/SVF-doxygen/html/html/classSVF_1_1CFGrammar-members.html +158 -0
  46. package/SVF-doxygen/html/html/classSVF_1_1CFGrammar.html +1051 -0
  47. package/SVF-doxygen/html/html/classSVF_1_1CFGrammar.png +0 -0
  48. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias-members.html +1 -1
  49. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +13 -13
  50. package/SVF-doxygen/html/html/classSVF_1_1CFLBase-members.html +1 -1
  51. package/SVF-doxygen/html/html/classSVF_1_1CFLBase.html +108 -114
  52. package/SVF-doxygen/html/html/classSVF_1_1CFLFIFOWorkList.html +17 -17
  53. package/SVF-doxygen/html/html/classSVF_1_1CFLGraph-members.html +2 -2
  54. package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +16 -16
  55. package/SVF-doxygen/html/html/classSVF_1_1CFLGraphBuilder-members.html +17 -16
  56. package/SVF-doxygen/html/html/classSVF_1_1CFLGraphBuilder.html +333 -280
  57. package/SVF-doxygen/html/html/classSVF_1_1CFLSolver-members.html +5 -5
  58. package/SVF-doxygen/html/html/classSVF_1_1CFLSolver.html +56 -56
  59. package/SVF-doxygen/html/html/classSVF_1_1CFLStat.html +2 -2
  60. package/SVF-doxygen/html/html/classSVF_1_1CFLVF-members.html +1 -1
  61. package/SVF-doxygen/html/html/classSVF_1_1CFLVF.html +14 -14
  62. package/SVF-doxygen/html/html/classSVF_1_1ConsExeState.html +1 -1
  63. package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +4 -4
  64. package/SVF-doxygen/html/html/classSVF_1_1GrammarBase.html +76 -76
  65. package/SVF-doxygen/html/html/classSVF_1_1GrammarBase.png +0 -0
  66. package/SVF-doxygen/html/html/classSVF_1_1GrammarBase_1_1SymbolHash.html +4 -4
  67. package/SVF-doxygen/html/html/classSVF_1_1GrammarBuilder.html +5 -5
  68. package/SVF-doxygen/html/html/classSVF_1_1NumericLiteral.html +11 -11
  69. package/SVF-doxygen/html/html/classSVF_1_1POCRAlias-members.html +1 -1
  70. package/SVF-doxygen/html/html/classSVF_1_1POCRAlias.html +4 -4
  71. package/SVF-doxygen/html/html/classSVF_1_1POCRHybrid-members.html +1 -1
  72. package/SVF-doxygen/html/html/classSVF_1_1POCRHybrid.html +4 -4
  73. package/SVF-doxygen/html/html/classSVF_1_1POCRHybridSolver-members.html +7 -7
  74. package/SVF-doxygen/html/html/classSVF_1_1POCRHybridSolver.html +53 -53
  75. package/SVF-doxygen/html/html/classSVF_1_1POCRSolver-members.html +6 -6
  76. package/SVF-doxygen/html/html/classSVF_1_1POCRSolver.html +47 -47
  77. package/SVF-doxygen/html/html/classSVF_1_1SingleAbsValue.html +3 -3
  78. package/SVF-doxygen/html/html/classSVF_1_1VFCFLGraphBuilder-members.html +21 -20
  79. package/SVF-doxygen/html/html/classSVF_1_1VFCFLGraphBuilder.html +148 -145
  80. package/SVF-doxygen/html/html/classes.html +6 -6
  81. package/SVF-doxygen/html/html/dir_1b8e404556d3e8597ae60437f0a084bf.html +7 -2
  82. package/SVF-doxygen/html/html/dir_7de7f3d0ab1cbd78bc64b135e4cd18be.html +80 -0
  83. package/SVF-doxygen/html/html/dir_8a9c8659eb68b9cbd3fead4690588a47.html +2 -2
  84. package/SVF-doxygen/html/html/files.html +14 -13
  85. package/SVF-doxygen/html/html/functions_a.html +5 -5
  86. package/SVF-doxygen/html/html/functions_b.html +9 -7
  87. package/SVF-doxygen/html/html/functions_c.html +5 -5
  88. package/SVF-doxygen/html/html/functions_d.html +1 -1
  89. package/SVF-doxygen/html/html/functions_e.html +4 -4
  90. package/SVF-doxygen/html/html/functions_f.html +2 -2
  91. package/SVF-doxygen/html/html/functions_func.html +5 -5
  92. package/SVF-doxygen/html/html/functions_func_b.html +9 -7
  93. package/SVF-doxygen/html/html/functions_func_c.html +5 -5
  94. package/SVF-doxygen/html/html/functions_func_d.html +1 -1
  95. package/SVF-doxygen/html/html/functions_func_e.html +3 -3
  96. package/SVF-doxygen/html/html/functions_func_f.html +1 -1
  97. package/SVF-doxygen/html/html/functions_func_g.html +13 -13
  98. package/SVF-doxygen/html/html/functions_func_h.html +3 -3
  99. package/SVF-doxygen/html/html/functions_func_i.html +1 -1
  100. package/SVF-doxygen/html/html/functions_func_n.html +2 -2
  101. package/SVF-doxygen/html/html/functions_func_p.html +2 -2
  102. package/SVF-doxygen/html/html/functions_func_r.html +1 -1
  103. package/SVF-doxygen/html/html/functions_func_s.html +1 -1
  104. package/SVF-doxygen/html/html/functions_g.html +15 -15
  105. package/SVF-doxygen/html/html/functions_h.html +3 -3
  106. package/SVF-doxygen/html/html/functions_i.html +2 -2
  107. package/SVF-doxygen/html/html/functions_k.html +3 -3
  108. package/SVF-doxygen/html/html/functions_l.html +5 -5
  109. package/SVF-doxygen/html/html/functions_n.html +3 -3
  110. package/SVF-doxygen/html/html/functions_o.html +13 -13
  111. package/SVF-doxygen/html/html/functions_p.html +16 -12
  112. package/SVF-doxygen/html/html/functions_r.html +1 -1
  113. package/SVF-doxygen/html/html/functions_s.html +17 -19
  114. package/SVF-doxygen/html/html/functions_t.html +3 -3
  115. package/SVF-doxygen/html/html/functions_type_k.html +2 -2
  116. package/SVF-doxygen/html/html/functions_type_p.html +1 -1
  117. package/SVF-doxygen/html/html/functions_type_s.html +3 -3
  118. package/SVF-doxygen/html/html/functions_v.html +6 -6
  119. package/SVF-doxygen/html/html/functions_vars_e.html +1 -1
  120. package/SVF-doxygen/html/html/functions_vars_f.html +1 -1
  121. package/SVF-doxygen/html/html/functions_vars_g.html +2 -2
  122. package/SVF-doxygen/html/html/functions_vars_k.html +1 -1
  123. package/SVF-doxygen/html/html/functions_vars_n.html +1 -1
  124. package/SVF-doxygen/html/html/functions_vars_s.html +2 -2
  125. package/SVF-doxygen/html/html/functions_w.html +9 -9
  126. package/SVF-doxygen/html/html/globals.html +6 -4
  127. package/SVF-doxygen/html/html/globals_defs.html +7 -0
  128. package/SVF-doxygen/html/html/globals_e.html +1 -1
  129. package/SVF-doxygen/html/html/globals_g.html +3 -3
  130. package/SVF-doxygen/html/html/globals_m.html +4 -1
  131. package/SVF-doxygen/html/html/globals_s.html +1 -1
  132. package/SVF-doxygen/html/html/globals_v.html +2 -2
  133. package/SVF-doxygen/html/html/globals_vars.html +12 -10
  134. package/SVF-doxygen/html/html/hierarchy.html +1 -1
  135. package/SVF-doxygen/html/html/menudata.js +1 -0
  136. package/SVF-doxygen/html/html/namespaceSVF.html +40 -2
  137. package/SVF-doxygen/html/html/namespacemembers_b.html +3 -0
  138. package/SVF-doxygen/html/html/namespacemembers_enum.html +3 -0
  139. package/SVF-doxygen/html/html/search/all_0.js +147 -146
  140. package/SVF-doxygen/html/html/search/all_1.js +478 -478
  141. package/SVF-doxygen/html/html/search/all_10.js +327 -325
  142. package/SVF-doxygen/html/html/search/all_11.js +208 -208
  143. package/SVF-doxygen/html/html/search/all_12.js +545 -545
  144. package/SVF-doxygen/html/html/search/all_13.js +189 -189
  145. package/SVF-doxygen/html/html/search/all_14.js +66 -66
  146. package/SVF-doxygen/html/html/search/all_15.js +170 -170
  147. package/SVF-doxygen/html/html/search/all_16.js +60 -60
  148. package/SVF-doxygen/html/html/search/all_17.js +1 -1
  149. package/SVF-doxygen/html/html/search/all_18.js +1 -1
  150. package/SVF-doxygen/html/html/search/all_19.js +10 -10
  151. package/SVF-doxygen/html/html/search/all_1a.js +169 -169
  152. package/SVF-doxygen/html/html/search/all_2.js +159 -156
  153. package/SVF-doxygen/html/html/search/all_3.js +637 -638
  154. package/SVF-doxygen/html/html/search/all_4.js +227 -227
  155. package/SVF-doxygen/html/html/search/all_5.js +156 -156
  156. package/SVF-doxygen/html/html/search/all_6.js +223 -223
  157. package/SVF-doxygen/html/html/search/all_7.js +1012 -1012
  158. package/SVF-doxygen/html/html/search/all_8.js +192 -192
  159. package/SVF-doxygen/html/html/search/all_9.js +597 -597
  160. package/SVF-doxygen/html/html/search/all_a.js +47 -47
  161. package/SVF-doxygen/html/html/search/all_b.js +26 -26
  162. package/SVF-doxygen/html/html/search/all_c.js +113 -113
  163. package/SVF-doxygen/html/html/search/all_d.js +196 -196
  164. package/SVF-doxygen/html/html/search/all_e.js +206 -206
  165. package/SVF-doxygen/html/html/search/all_f.js +122 -122
  166. package/SVF-doxygen/html/html/search/classes_0.js +26 -26
  167. package/SVF-doxygen/html/html/search/classes_1.js +9 -9
  168. package/SVF-doxygen/html/html/search/classes_10.js +73 -73
  169. package/SVF-doxygen/html/html/search/classes_11.js +15 -15
  170. package/SVF-doxygen/html/html/search/classes_12.js +2 -2
  171. package/SVF-doxygen/html/html/search/classes_13.js +10 -10
  172. package/SVF-doxygen/html/html/search/classes_14.js +14 -14
  173. package/SVF-doxygen/html/html/search/classes_15.js +1 -1
  174. package/SVF-doxygen/html/html/search/classes_2.js +76 -76
  175. package/SVF-doxygen/html/html/search/classes_3.js +35 -35
  176. package/SVF-doxygen/html/html/search/classes_4.js +10 -10
  177. package/SVF-doxygen/html/html/search/classes_5.js +28 -28
  178. package/SVF-doxygen/html/html/search/classes_6.js +98 -98
  179. package/SVF-doxygen/html/html/search/classes_7.js +33 -33
  180. package/SVF-doxygen/html/html/search/classes_8.js +56 -56
  181. package/SVF-doxygen/html/html/search/classes_9.js +1 -1
  182. package/SVF-doxygen/html/html/search/classes_a.js +12 -12
  183. package/SVF-doxygen/html/html/search/classes_b.js +29 -29
  184. package/SVF-doxygen/html/html/search/classes_c.js +6 -6
  185. package/SVF-doxygen/html/html/search/classes_d.js +19 -19
  186. package/SVF-doxygen/html/html/search/classes_e.js +36 -36
  187. package/SVF-doxygen/html/html/search/classes_f.js +25 -25
  188. package/SVF-doxygen/html/html/search/defines_0.js +3 -3
  189. package/SVF-doxygen/html/html/search/defines_1.js +2 -2
  190. package/SVF-doxygen/html/html/search/defines_2.js +30 -30
  191. package/SVF-doxygen/html/html/search/defines_3.js +20 -20
  192. package/SVF-doxygen/html/html/search/defines_4.js +3 -3
  193. package/SVF-doxygen/html/html/search/defines_5.js +4 -4
  194. package/SVF-doxygen/html/html/search/defines_6.js +2 -2
  195. package/SVF-doxygen/html/html/search/defines_7.js +5 -5
  196. package/SVF-doxygen/html/html/search/defines_8.js +13 -13
  197. package/SVF-doxygen/html/html/search/defines_9.js +9 -9
  198. package/SVF-doxygen/html/html/search/defines_a.js +2 -2
  199. package/SVF-doxygen/html/html/search/defines_b.js +1 -2
  200. package/SVF-doxygen/html/html/search/defines_c.js +2 -2
  201. package/SVF-doxygen/html/html/search/defines_d.js +2 -6
  202. package/SVF-doxygen/html/html/search/defines_e.js +6 -3
  203. package/SVF-doxygen/html/html/search/defines_f.html +6 -2
  204. package/SVF-doxygen/html/html/search/defines_f.js +3 -26
  205. package/SVF-doxygen/html/html/search/enums_0.js +3 -3
  206. package/SVF-doxygen/html/html/search/enums_1.js +2 -1
  207. package/SVF-doxygen/html/html/search/enums_10.js +1 -1
  208. package/SVF-doxygen/html/html/search/enums_11.js +1 -1
  209. package/SVF-doxygen/html/html/search/enums_2.js +8 -8
  210. package/SVF-doxygen/html/html/search/enums_3.js +1 -1
  211. package/SVF-doxygen/html/html/search/enums_4.js +4 -4
  212. package/SVF-doxygen/html/html/search/enums_5.js +1 -1
  213. package/SVF-doxygen/html/html/search/enums_6.js +2 -2
  214. package/SVF-doxygen/html/html/search/enums_7.js +2 -2
  215. package/SVF-doxygen/html/html/search/enums_8.js +4 -4
  216. package/SVF-doxygen/html/html/search/enums_9.js +1 -1
  217. package/SVF-doxygen/html/html/search/enums_a.js +2 -2
  218. package/SVF-doxygen/html/html/search/enums_b.js +7 -7
  219. package/SVF-doxygen/html/html/search/enums_c.js +1 -1
  220. package/SVF-doxygen/html/html/search/enums_d.js +4 -4
  221. package/SVF-doxygen/html/html/search/enums_e.js +2 -2
  222. package/SVF-doxygen/html/html/search/enums_f.js +4 -4
  223. package/SVF-doxygen/html/html/search/enumvalues_0.js +14 -14
  224. package/SVF-doxygen/html/html/search/enumvalues_1.js +14 -13
  225. package/SVF-doxygen/html/html/search/enumvalues_10.js +35 -35
  226. package/SVF-doxygen/html/html/search/enumvalues_11.js +3 -3
  227. package/SVF-doxygen/html/html/search/enumvalues_12.js +10 -10
  228. package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
  229. package/SVF-doxygen/html/html/search/enumvalues_14.js +1 -1
  230. package/SVF-doxygen/html/html/search/enumvalues_15.js +3 -3
  231. package/SVF-doxygen/html/html/search/enumvalues_2.js +40 -40
  232. package/SVF-doxygen/html/html/search/enumvalues_3.js +13 -13
  233. package/SVF-doxygen/html/html/search/enumvalues_4.js +34 -34
  234. package/SVF-doxygen/html/html/search/enumvalues_5.js +48 -48
  235. package/SVF-doxygen/html/html/search/enumvalues_6.js +6 -6
  236. package/SVF-doxygen/html/html/search/enumvalues_7.js +9 -9
  237. package/SVF-doxygen/html/html/search/enumvalues_8.js +23 -23
  238. package/SVF-doxygen/html/html/search/enumvalues_9.js +6 -6
  239. package/SVF-doxygen/html/html/search/enumvalues_a.js +17 -17
  240. package/SVF-doxygen/html/html/search/enumvalues_b.js +11 -11
  241. package/SVF-doxygen/html/html/search/enumvalues_c.js +6 -6
  242. package/SVF-doxygen/html/html/search/enumvalues_d.js +18 -17
  243. package/SVF-doxygen/html/html/search/enumvalues_e.js +11 -11
  244. package/SVF-doxygen/html/html/search/enumvalues_f.js +45 -45
  245. package/SVF-doxygen/html/html/search/files_0.js +13 -13
  246. package/SVF-doxygen/html/html/search/files_1.js +7 -7
  247. package/SVF-doxygen/html/html/search/files_10.js +8 -8
  248. package/SVF-doxygen/html/html/search/files_11.js +8 -8
  249. package/SVF-doxygen/html/html/search/files_12.js +2 -2
  250. package/SVF-doxygen/html/html/search/files_2.js +49 -50
  251. package/SVF-doxygen/html/html/search/files_3.js +14 -14
  252. package/SVF-doxygen/html/html/search/files_4.js +4 -4
  253. package/SVF-doxygen/html/html/search/files_5.js +13 -13
  254. package/SVF-doxygen/html/html/search/files_6.js +9 -9
  255. package/SVF-doxygen/html/html/search/files_7.js +14 -14
  256. package/SVF-doxygen/html/html/search/files_8.js +13 -13
  257. package/SVF-doxygen/html/html/search/files_9.js +18 -18
  258. package/SVF-doxygen/html/html/search/files_a.js +3 -3
  259. package/SVF-doxygen/html/html/search/files_b.js +2 -2
  260. package/SVF-doxygen/html/html/search/files_c.js +20 -19
  261. package/SVF-doxygen/html/html/search/files_d.js +4 -4
  262. package/SVF-doxygen/html/html/search/files_e.js +62 -62
  263. package/SVF-doxygen/html/html/search/files_f.js +8 -8
  264. package/SVF-doxygen/html/html/search/functions_0.js +351 -351
  265. package/SVF-doxygen/html/html/search/functions_1.js +81 -80
  266. package/SVF-doxygen/html/html/search/functions_10.js +121 -121
  267. package/SVF-doxygen/html/html/search/functions_11.js +281 -281
  268. package/SVF-doxygen/html/html/search/functions_12.js +55 -55
  269. package/SVF-doxygen/html/html/search/functions_13.js +38 -38
  270. package/SVF-doxygen/html/html/search/functions_14.js +71 -71
  271. package/SVF-doxygen/html/html/search/functions_15.js +29 -29
  272. package/SVF-doxygen/html/html/search/functions_16.js +2 -2
  273. package/SVF-doxygen/html/html/search/functions_17.js +169 -169
  274. package/SVF-doxygen/html/html/search/functions_2.js +251 -251
  275. package/SVF-doxygen/html/html/search/functions_3.js +71 -71
  276. package/SVF-doxygen/html/html/search/functions_4.js +55 -55
  277. package/SVF-doxygen/html/html/search/functions_5.js +55 -55
  278. package/SVF-doxygen/html/html/search/functions_6.js +832 -832
  279. package/SVF-doxygen/html/html/search/functions_7.js +144 -144
  280. package/SVF-doxygen/html/html/search/functions_8.js +417 -417
  281. package/SVF-doxygen/html/html/search/functions_9.js +29 -29
  282. package/SVF-doxygen/html/html/search/functions_a.js +2 -2
  283. package/SVF-doxygen/html/html/search/functions_b.js +23 -23
  284. package/SVF-doxygen/html/html/search/functions_c.js +75 -75
  285. package/SVF-doxygen/html/html/search/functions_d.js +35 -35
  286. package/SVF-doxygen/html/html/search/functions_e.js +56 -56
  287. package/SVF-doxygen/html/html/search/functions_f.js +143 -143
  288. package/SVF-doxygen/html/html/search/namespaces_0.js +1 -1
  289. package/SVF-doxygen/html/html/search/namespaces_1.js +7 -7
  290. package/SVF-doxygen/html/html/search/related_0.js +2 -2
  291. package/SVF-doxygen/html/html/search/related_1.js +1 -1
  292. package/SVF-doxygen/html/html/search/related_2.js +2 -2
  293. package/SVF-doxygen/html/html/search/related_3.js +2 -2
  294. package/SVF-doxygen/html/html/search/related_4.js +2 -2
  295. package/SVF-doxygen/html/html/search/related_5.js +1 -1
  296. package/SVF-doxygen/html/html/search/related_6.js +2 -2
  297. package/SVF-doxygen/html/html/search/related_7.js +4 -4
  298. package/SVF-doxygen/html/html/search/related_8.js +2 -2
  299. package/SVF-doxygen/html/html/search/related_9.js +4 -4
  300. package/SVF-doxygen/html/html/search/related_a.js +19 -19
  301. package/SVF-doxygen/html/html/search/related_b.js +4 -4
  302. package/SVF-doxygen/html/html/search/related_c.js +1 -1
  303. package/SVF-doxygen/html/html/search/related_d.js +11 -11
  304. package/SVF-doxygen/html/html/search/related_e.js +2 -2
  305. package/SVF-doxygen/html/html/search/related_f.js +2 -2
  306. package/SVF-doxygen/html/html/search/searchdata.js +1 -1
  307. package/SVF-doxygen/html/html/search/typedefs_0.js +18 -18
  308. package/SVF-doxygen/html/html/search/typedefs_1.js +25 -25
  309. package/SVF-doxygen/html/html/search/typedefs_10.js +60 -60
  310. package/SVF-doxygen/html/html/search/typedefs_11.js +13 -13
  311. package/SVF-doxygen/html/html/search/typedefs_12.js +11 -11
  312. package/SVF-doxygen/html/html/search/typedefs_13.js +35 -35
  313. package/SVF-doxygen/html/html/search/typedefs_14.js +8 -8
  314. package/SVF-doxygen/html/html/search/typedefs_2.js +126 -126
  315. package/SVF-doxygen/html/html/search/typedefs_3.js +39 -39
  316. package/SVF-doxygen/html/html/search/typedefs_4.js +16 -16
  317. package/SVF-doxygen/html/html/search/typedefs_5.js +41 -41
  318. package/SVF-doxygen/html/html/search/typedefs_6.js +52 -52
  319. package/SVF-doxygen/html/html/search/typedefs_7.js +40 -40
  320. package/SVF-doxygen/html/html/search/typedefs_8.js +1 -1
  321. package/SVF-doxygen/html/html/search/typedefs_9.js +6 -6
  322. package/SVF-doxygen/html/html/search/typedefs_a.js +29 -29
  323. package/SVF-doxygen/html/html/search/typedefs_b.js +29 -29
  324. package/SVF-doxygen/html/html/search/typedefs_c.js +40 -40
  325. package/SVF-doxygen/html/html/search/typedefs_d.js +15 -15
  326. package/SVF-doxygen/html/html/search/typedefs_e.js +52 -52
  327. package/SVF-doxygen/html/html/search/typedefs_f.js +14 -14
  328. package/SVF-doxygen/html/html/search/variables_0.js +147 -146
  329. package/SVF-doxygen/html/html/search/variables_1.js +74 -74
  330. package/SVF-doxygen/html/html/search/variables_10.js +97 -97
  331. package/SVF-doxygen/html/html/search/variables_11.js +46 -46
  332. package/SVF-doxygen/html/html/search/variables_12.js +93 -93
  333. package/SVF-doxygen/html/html/search/variables_13.js +77 -77
  334. package/SVF-doxygen/html/html/search/variables_14.js +14 -14
  335. package/SVF-doxygen/html/html/search/variables_15.js +48 -48
  336. package/SVF-doxygen/html/html/search/variables_16.js +9 -9
  337. package/SVF-doxygen/html/html/search/variables_17.js +1 -1
  338. package/SVF-doxygen/html/html/search/variables_18.js +2 -2
  339. package/SVF-doxygen/html/html/search/variables_2.js +35 -35
  340. package/SVF-doxygen/html/html/search/variables_3.js +148 -148
  341. package/SVF-doxygen/html/html/search/variables_4.js +56 -56
  342. package/SVF-doxygen/html/html/search/variables_5.js +40 -40
  343. package/SVF-doxygen/html/html/search/variables_6.js +67 -67
  344. package/SVF-doxygen/html/html/search/variables_7.js +33 -33
  345. package/SVF-doxygen/html/html/search/variables_8.js +7 -7
  346. package/SVF-doxygen/html/html/search/variables_9.js +77 -77
  347. package/SVF-doxygen/html/html/search/variables_a.js +4 -4
  348. package/SVF-doxygen/html/html/search/variables_b.js +10 -10
  349. package/SVF-doxygen/html/html/search/variables_c.js +45 -45
  350. package/SVF-doxygen/html/html/search/variables_d.js +56 -56
  351. package/SVF-doxygen/html/html/search/variables_e.js +123 -123
  352. package/SVF-doxygen/html/html/search/variables_f.js +33 -33
  353. package/SVF-doxygen/html/html/structSVF_1_1GrammarBase_1_1Symbol.html +25 -25
  354. package/SVF-doxygen/html/html/structSVF_1_1GrammarBase_1_1SymbolVectorHash.html +4 -4
  355. package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1BoundedZ3Expr_01_4.html +5 -5
  356. package/package.json +1 -1
  357. package/svf/include/AbstractExecution/BoundedZ3Expr.h +8 -12
  358. package/svf/include/CFL/CFGNormalizer.h +11 -11
  359. package/svf/include/CFL/{CFLGrammar.h → CFGrammar.h} +5 -5
  360. package/svf/include/CFL/CFLAlias.h +2 -2
  361. package/svf/include/CFL/CFLBase.h +2 -2
  362. package/svf/include/CFL/CFLGramGraphChecker.h +1 -1
  363. package/svf/include/CFL/CFLGraphBuilder.h +30 -81
  364. package/svf/include/CFL/CFLSolver.h +8 -8
  365. package/svf/include/CFL/GrammarBuilder.h +1 -1
  366. package/svf/include/Graphs/CFLGraph.h +3 -3
  367. package/svf/lib/CFL/CFGNormalizer.cpp +11 -11
  368. package/svf/lib/CFL/{CFLGrammar.cpp → CFGrammar.cpp} +7 -7
  369. package/svf/lib/CFL/CFLBase.cpp +5 -11
  370. package/svf/lib/CFL/CFLGraphBuilder.cpp +125 -74
  371. package/svf/lib/CFL/CFLVF.cpp +2 -2
  372. /package/svf/include/CFL/{CFLGrammar.txt → grammar/PAGGrammar.txt} +0 -0
  373. /package/svf/include/CFL/{PEGGrammar.txt → grammar/PEGGrammar.txt} +0 -0
  374. /package/svf/include/CFL/{VFG.txt → grammar/VFGGrammar.txt} +0 -0
@@ -121,172 +121,165 @@ $(function() {
121
121
  <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;{</div>
122
122
  <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="comment">// Check for valid grammar file before parsing other options</span></div>
123
123
  <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> filename = <a class="code" href="classSVF_1_1Options.html#ad09017ae2e1010fbba5c086a4772750f">Options::GrammarFilename</a>();</div>
124
- <div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordtype">bool</span> cflfile = (filename.rfind(<span class="stringliteral">&quot;CFLGrammar.txt&quot;</span>) == filename.length() - <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>(<span class="stringliteral">&quot;CFLGrammar.txt&quot;</span>).length());</div>
124
+ <div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordtype">bool</span> pagfile = (filename.rfind(<span class="stringliteral">&quot;PAGGrammar.txt&quot;</span>) == filename.length() - <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>(<span class="stringliteral">&quot;PAGGrammar.txt&quot;</span>).length());</div>
125
125
  <div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">bool</span> pegfile = (filename.rfind(<span class="stringliteral">&quot;PEGGrammar.txt&quot;</span>) == filename.length() - <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>(<span class="stringliteral">&quot;PEGGrammar.txt&quot;</span>).length());</div>
126
- <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1Options.html#a15a9c1086e1bbd6a76d56ad1bdd6b994">Options::Customized</a>() &amp;&amp; !(cflfile || pegfile))</div>
127
- <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; {</div>
128
- <div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#ab65033f068bfbeb0a1c52dcec3beb6bc">SVFUtil::errs</a>() &lt;&lt; <span class="stringliteral">&quot;Invalid alias grammar file: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1Options.html#ad09017ae2e1010fbba5c086a4772750f">Options::GrammarFilename</a>() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span></div>
129
- <div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Please use a file that ends with either &#39;CFLGrammar.txt&#39; or &#39;PEGGrammar.txt&#39;, &quot;</span></div>
130
- <div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; &lt;&lt; <span class="stringliteral">&quot;or use the -customized flag to allow custom grammar files.\n&quot;</span>;</div>
131
- <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;grammar loading failed!&quot;</span>); <span class="comment">// exit with error</span></div>
132
- <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; }</div>
133
- <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;}</div>
134
- <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; </div>
135
- <div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a77bc3b0260fe02cdcf41fdb6b80caa09"> 64</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a77bc3b0260fe02cdcf41fdb6b80caa09">CFLBase::buildCFLGrammar</a>()</div>
136
- <div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;{</div>
137
- <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">// Start building grammar</span></div>
138
- <div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordtype">double</span> start = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
139
- <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; </div>
140
- <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="classSVF_1_1GrammarBuilder.html">GrammarBuilder</a> grammarBuilder = <a class="code" href="classSVF_1_1GrammarBuilder.html">GrammarBuilder</a>(<a class="code" href="classSVF_1_1Options.html#ad09017ae2e1010fbba5c086a4772750f">Options::GrammarFilename</a>());</div>
141
- <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a> = grammarBuilder.<a class="code" href="classSVF_1_1GrammarBuilder.html#a23d03b2cd348d85bda1ee582dded6505">build</a>();</div>
142
- <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; </div>
143
- <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">// Get time of build grammar</span></div>
144
- <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">double</span> end = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
145
- <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a0d3217f4c3796b58a98add5c92298ad2">timeOfBuildCFLGrammar</a> += (end - start) / <a class="code" href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div>
146
- <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;}</div>
147
- <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div>
148
- <div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a0daabb58bd7d5be40379ccc670c37a93"> 77</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a0daabb58bd7d5be40379ccc670c37a93">CFLBase::buildCFLGraph</a>()</div>
149
- <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;{</div>
150
- <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="comment">// Start building CFLGraph</span></div>
151
- <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordtype">double</span> start = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
152
- <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; </div>
153
- <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classSVF_1_1AliasCFLGraphBuilder.html">AliasCFLGraphBuilder</a> cflGraphBuilder = <a class="code" href="classSVF_1_1AliasCFLGraphBuilder.html">AliasCFLGraphBuilder</a>();</div>
154
- <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a81dbd12b5141c4a2758d6f2d3321f1ac">Options::CFLGraph</a>().empty()) <span class="comment">// built from svfir</span></div>
155
- <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; {</div>
156
- <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">PointerAnalysis::initialize</a>();</div>
157
- <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="classSVF_1_1ConstraintGraph.html">ConstraintGraph</a> *consCG = <span class="keyword">new</span> <a class="code" href="classSVF_1_1ConstraintGraph.html">ConstraintGraph</a>(<a class="code" href="classSVF_1_1CFLBase.html#a9e6cbab31612da4a1f8f660d1fabc4c0">svfir</a>);</div>
158
- <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a4854dd8b167e468e698606254b31bf26">Options::PEGTransfer</a>())</div>
159
- <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a> = cflGraphBuilder.<a class="code" href="classSVF_1_1AliasCFLGraphBuilder.html#ac74b55198d73acebb9843fd13c1fd880">buildBiPEGgraph</a>(consCG, <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>-&gt;<a class="code" href="classSVF_1_1GrammarBase.html#a8921a7d7a006e31f13d88b8c808c931b">getStartKind</a>(), <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>, <a class="code" href="classSVF_1_1CFLBase.html#a9e6cbab31612da4a1f8f660d1fabc4c0">svfir</a>);</div>
160
- <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">else</span></div>
161
- <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a> = cflGraphBuilder.<a class="code" href="classSVF_1_1AliasCFLGraphBuilder.html#ab19243c4aceffce7b257f3d8cb3050fd">buildBigraph</a>(consCG, <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>-&gt;<a class="code" href="classSVF_1_1GrammarBase.html#a8921a7d7a006e31f13d88b8c808c931b">getStartKind</a>(), <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>);</div>
162
- <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keyword">delete</span> consCG;</div>
163
- <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div>
164
- <div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">else</span></div>
165
- <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; {</div>
166
- <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> fileName = <a class="code" href="classSVF_1_1Options.html#a81dbd12b5141c4a2758d6f2d3321f1ac">Options::CFLGraph</a>();</div>
167
- <div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordtype">bool</span> dotfile = (fileName.rfind(<span class="stringliteral">&quot;.dot&quot;</span>) == fileName.length() - <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>(<span class="stringliteral">&quot;dot&quot;</span>).length());</div>
168
- <div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">if</span> (dotfile)</div>
169
- <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a> = cflGraphBuilder.<a class="code" href="classSVF_1_1CFLGraphBuilder.html#a6c9fa25204550dc5bea1cae52a61472b">buildFromDot</a>(<a class="code" href="classSVF_1_1Options.html#a81dbd12b5141c4a2758d6f2d3321f1ac">Options::CFLGraph</a>(), <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>);</div>
170
- <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">else</span></div>
171
- <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a> = cflGraphBuilder.<a class="code" href="classSVF_1_1CFLGraphBuilder.html#acc19ccb854db14637c97f4ed99810da9">buildFromTextFile</a>(<a class="code" href="classSVF_1_1Options.html#a81dbd12b5141c4a2758d6f2d3321f1ac">Options::CFLGraph</a>(), <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>);</div>
172
- <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
173
- <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="comment">// Check CFL Graph and Grammar are accordance with grammar</span></div>
174
- <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="classSVF_1_1CFLGramGraphChecker.html">CFLGramGraphChecker</a> cflChecker = <a class="code" href="classSVF_1_1CFLGramGraphChecker.html">CFLGramGraphChecker</a>();</div>
175
- <div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; cflChecker.<a class="code" href="classSVF_1_1CFLGramGraphChecker.html#ada643d980c2590711660eb5f2a4e5f93">check</a>(<a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>, &amp;cflGraphBuilder, <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a>);</div>
176
- <div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; </div>
177
- <div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// Get time of build graph</span></div>
178
- <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordtype">double</span> end = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
179
- <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a9453bf479ccd00bacb3b371fa6383a9c">timeOfBuildCFLGraph</a> += (end - start) / <a class="code" href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div>
180
- <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;}</div>
181
- <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; </div>
182
- <div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a462de3facd2a9365d32397d250414ee9"> 111</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a462de3facd2a9365d32397d250414ee9">CFLBase::normalizeCFLGrammar</a>()</div>
183
- <div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;{</div>
184
- <div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="comment">// Start normalize grammar</span></div>
185
- <div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordtype">double</span> start = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
186
- <div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; </div>
187
- <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classSVF_1_1CFGNormalizer.html">CFGNormalizer</a> normalizer = <a class="code" href="classSVF_1_1CFGNormalizer.html">CFGNormalizer</a>();</div>
188
- <div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#af7b0e90b8f8998ab6cf4e05155c7a503">grammar</a> = normalizer.<a class="code" href="classSVF_1_1CFGNormalizer.html#ae8e2b22944e9d3d2ec14cd6aaa8b93c9">normalize</a>(<a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>);</div>
189
- <div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; </div>
190
- <div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="comment">// Get time of normalize grammar</span></div>
191
- <div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordtype">double</span> end = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
192
- <div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#ad4d65dd4c3e173d014199ac6b08a5261">timeOfNormalizeGrammar</a> += (end - start) / <a class="code" href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div>
193
- <div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;}</div>
194
- <div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; </div>
195
- <div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a2d1f2e2c7f8cbe07e0dda759a7424e6e"> 124</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a2d1f2e2c7f8cbe07e0dda759a7424e6e">CFLBase::solve</a>()</div>
196
- <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;{</div>
197
- <div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="comment">// Start solving</span></div>
198
- <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordtype">double</span> start = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
126
+ <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordtype">bool</span> vfgfile = (filename.rfind(<span class="stringliteral">&quot;VFGGrammar.txt&quot;</span>) == filename.length() - <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a>(<span class="stringliteral">&quot;VFGGrammar.txt&quot;</span>).length());</div>
127
+ <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1Options.html#a15a9c1086e1bbd6a76d56ad1bdd6b994">Options::Customized</a>() &amp;&amp; !(pagfile || pegfile || vfgfile))</div>
128
+ <div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; {</div>
129
+ <div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="namespaceSVF_1_1SVFUtil.html#ab65033f068bfbeb0a1c52dcec3beb6bc">SVFUtil::errs</a>() &lt;&lt; <span class="stringliteral">&quot;Invalid alias grammar file: &quot;</span> &lt;&lt; <a class="code" href="classSVF_1_1Options.html#ad09017ae2e1010fbba5c086a4772750f">Options::GrammarFilename</a>() &lt;&lt; <span class="stringliteral">&quot;\n&quot;</span></div>
130
+ <div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; &lt;&lt; <span class="stringliteral">&quot;Please use a file that ends with either &#39;CFGrammar.txt&#39; or &#39;PEGGrammar.txt&#39;, &quot;</span></div>
131
+ <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; &lt;&lt; <span class="stringliteral">&quot;or use the -customized flag to allow custom grammar files.\n&quot;</span>;</div>
132
+ <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; assert(<span class="keyword">false</span> &amp;&amp; <span class="stringliteral">&quot;grammar loading failed!&quot;</span>); <span class="comment">// exit with error</span></div>
133
+ <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div>
134
+ <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;}</div>
135
+ <div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
136
+ <div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a77bc3b0260fe02cdcf41fdb6b80caa09"> 65</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a77bc3b0260fe02cdcf41fdb6b80caa09">CFLBase::buildCFLGrammar</a>()</div>
137
+ <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;{</div>
138
+ <div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">// Start building grammar</span></div>
139
+ <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordtype">double</span> start = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
140
+ <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; </div>
141
+ <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="classSVF_1_1GrammarBuilder.html">GrammarBuilder</a> grammarBuilder = <a class="code" href="classSVF_1_1GrammarBuilder.html">GrammarBuilder</a>(<a class="code" href="classSVF_1_1Options.html#ad09017ae2e1010fbba5c086a4772750f">Options::GrammarFilename</a>());</div>
142
+ <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a> = grammarBuilder.<a class="code" href="classSVF_1_1GrammarBuilder.html#a23d03b2cd348d85bda1ee582dded6505">build</a>();</div>
143
+ <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
144
+ <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">// Get time of build grammar</span></div>
145
+ <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordtype">double</span> end = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
146
+ <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a0d3217f4c3796b58a98add5c92298ad2">timeOfBuildCFLGrammar</a> += (end - start) / <a class="code" href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div>
147
+ <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;}</div>
148
+ <div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; </div>
149
+ <div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a0daabb58bd7d5be40379ccc670c37a93"> 78</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a0daabb58bd7d5be40379ccc670c37a93">CFLBase::buildCFLGraph</a>()</div>
150
+ <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;{</div>
151
+ <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">// Start building CFLGraph</span></div>
152
+ <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordtype">double</span> start = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
153
+ <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; </div>
154
+ <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classSVF_1_1AliasCFLGraphBuilder.html">AliasCFLGraphBuilder</a> cflGraphBuilder = <a class="code" href="classSVF_1_1AliasCFLGraphBuilder.html">AliasCFLGraphBuilder</a>();</div>
155
+ <div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a81dbd12b5141c4a2758d6f2d3321f1ac">Options::CFLGraph</a>().empty()) <span class="comment">// built from svfir</span></div>
156
+ <div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; {</div>
157
+ <div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">PointerAnalysis::initialize</a>();</div>
158
+ <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classSVF_1_1ConstraintGraph.html">ConstraintGraph</a> *consCG = <span class="keyword">new</span> <a class="code" href="classSVF_1_1ConstraintGraph.html">ConstraintGraph</a>(<a class="code" href="classSVF_1_1CFLBase.html#a9e6cbab31612da4a1f8f660d1fabc4c0">svfir</a>);</div>
159
+ <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a4854dd8b167e468e698606254b31bf26">Options::PEGTransfer</a>())</div>
160
+ <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a> = cflGraphBuilder.<a class="code" href="classSVF_1_1AliasCFLGraphBuilder.html#ac74b55198d73acebb9843fd13c1fd880">buildBiPEGgraph</a>(consCG, <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>-&gt;<a class="code" href="classSVF_1_1GrammarBase.html#a8921a7d7a006e31f13d88b8c808c931b">getStartKind</a>(), <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>, <a class="code" href="classSVF_1_1CFLBase.html#a9e6cbab31612da4a1f8f660d1fabc4c0">svfir</a>);</div>
161
+ <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">else</span></div>
162
+ <div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a> = cflGraphBuilder.<a class="code" href="classSVF_1_1AliasCFLGraphBuilder.html#ab19243c4aceffce7b257f3d8cb3050fd">buildBigraph</a>(consCG, <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>-&gt;<a class="code" href="classSVF_1_1GrammarBase.html#a8921a7d7a006e31f13d88b8c808c931b">getStartKind</a>(), <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>);</div>
163
+ <div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keyword">delete</span> consCG;</div>
164
+ <div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
165
+ <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">else</span></div>
166
+ <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a> = cflGraphBuilder.<a class="code" href="classSVF_1_1CFLGraphBuilder.html#a27b247b46ce0b467459fcc2d53f50383">build</a>(<a class="code" href="classSVF_1_1Options.html#a81dbd12b5141c4a2758d6f2d3321f1ac">Options::CFLGraph</a>(), <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>);</div>
167
+ <div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">// Check CFL Graph and Grammar are accordance with grammar</span></div>
168
+ <div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="classSVF_1_1CFLGramGraphChecker.html">CFLGramGraphChecker</a> cflChecker = <a class="code" href="classSVF_1_1CFLGramGraphChecker.html">CFLGramGraphChecker</a>();</div>
169
+ <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; cflChecker.<a class="code" href="classSVF_1_1CFLGramGraphChecker.html#ada643d980c2590711660eb5f2a4e5f93">check</a>(<a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>, &amp;cflGraphBuilder, <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a>);</div>
170
+ <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; </div>
171
+ <div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// Get time of build graph</span></div>
172
+ <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">double</span> end = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
173
+ <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a9453bf479ccd00bacb3b371fa6383a9c">timeOfBuildCFLGraph</a> += (end - start) / <a class="code" href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div>
174
+ <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;}</div>
175
+ <div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; </div>
176
+ <div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a462de3facd2a9365d32397d250414ee9"> 105</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a462de3facd2a9365d32397d250414ee9">CFLBase::normalizeCFLGrammar</a>()</div>
177
+ <div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;{</div>
178
+ <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">// Start normalize grammar</span></div>
179
+ <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordtype">double</span> start = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
180
+ <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; </div>
181
+ <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="classSVF_1_1CFGNormalizer.html">CFGNormalizer</a> normalizer = <a class="code" href="classSVF_1_1CFGNormalizer.html">CFGNormalizer</a>();</div>
182
+ <div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8dd040c7078b7f1a61da76849c89a640">grammar</a> = normalizer.<a class="code" href="classSVF_1_1CFGNormalizer.html#a937b65bca67692e4c6507d2b6d5fb567">normalize</a>(<a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>);</div>
183
+ <div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; </div>
184
+ <div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="comment">// Get time of normalize grammar</span></div>
185
+ <div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordtype">double</span> end = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
186
+ <div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#ad4d65dd4c3e173d014199ac6b08a5261">timeOfNormalizeGrammar</a> += (end - start) / <a class="code" href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div>
187
+ <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;}</div>
188
+ <div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; </div>
189
+ <div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a2d1f2e2c7f8cbe07e0dda759a7424e6e"> 118</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a2d1f2e2c7f8cbe07e0dda759a7424e6e">CFLBase::solve</a>()</div>
190
+ <div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;{</div>
191
+ <div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="comment">// Start solving</span></div>
192
+ <div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordtype">double</span> start = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
193
+ <div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; </div>
194
+ <div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a34c3a3eec2d7d34ef78b5031d8844b17">solver</a>-&gt;<a class="code" href="classSVF_1_1CFLSolver.html#a2ee3436c26ebdb2aaf790c25b1d8b5a6">solve</a>();</div>
195
+ <div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; </div>
196
+ <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordtype">double</span> end = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
197
+ <div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a88e40af43705550a78837b8589bbf3f8">timeOfSolving</a> += (end - start) / <a class="code" href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div>
198
+ <div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;}</div>
199
199
  <div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
200
- <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a34c3a3eec2d7d34ef78b5031d8844b17">solver</a>-&gt;<a class="code" href="classSVF_1_1CFLSolver.html#a2ee3436c26ebdb2aaf790c25b1d8b5a6">solve</a>();</div>
201
- <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; </div>
202
- <div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordtype">double</span> end = <a class="code" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a>-&gt;<a class="code" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a>(<span class="keyword">true</span>);</div>
203
- <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a88e40af43705550a78837b8589bbf3f8">timeOfSolving</a> += (end - start) / <a class="code" href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div>
204
- <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;}</div>
205
- <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; </div>
206
- <div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a7ee2fdf1c0cdf019c863870dc51c0b5d"> 135</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a7ee2fdf1c0cdf019c863870dc51c0b5d">CFLBase::finalize</a>()</div>
207
- <div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;{</div>
208
- <div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a49b12231195521d2b53b045962f0a3f6">numOfChecks</a> = <a class="code" href="classSVF_1_1CFLBase.html#a34c3a3eec2d7d34ef78b5031d8844b17">solver</a>-&gt;<a class="code" href="classSVF_1_1CFLSolver.html#a46ded0b18821a2ade0ee151ac2b2d520">numOfChecks</a>;</div>
209
- <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; </div>
210
- <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="classSVF_1_1BVDataPTAImpl.html#a638f58c3bf6efdb3787fafaa4e6f19ca">BVDataPTAImpl::finalize</a>();</div>
211
- <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;}</div>
200
+ <div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a7ee2fdf1c0cdf019c863870dc51c0b5d"> 129</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a7ee2fdf1c0cdf019c863870dc51c0b5d">CFLBase::finalize</a>()</div>
201
+ <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;{</div>
202
+ <div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a49b12231195521d2b53b045962f0a3f6">numOfChecks</a> = <a class="code" href="classSVF_1_1CFLBase.html#a34c3a3eec2d7d34ef78b5031d8844b17">solver</a>-&gt;<a class="code" href="classSVF_1_1CFLSolver.html#a46ded0b18821a2ade0ee151ac2b2d520">numOfChecks</a>;</div>
203
+ <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; </div>
204
+ <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="classSVF_1_1BVDataPTAImpl.html#a638f58c3bf6efdb3787fafaa4e6f19ca">BVDataPTAImpl::finalize</a>();</div>
205
+ <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;}</div>
206
+ <div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; </div>
207
+ <div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a2aac58e19676290042874c262f1edd4d"> 136</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a2aac58e19676290042874c262f1edd4d">CFLBase::analyze</a>()</div>
208
+ <div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;{</div>
209
+ <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">initialize</a>();</div>
210
+ <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; </div>
211
+ <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a2d1f2e2c7f8cbe07e0dda759a7424e6e">solve</a>();</div>
212
212
  <div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; </div>
213
- <div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a2aac58e19676290042874c262f1edd4d"> 142</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a2aac58e19676290042874c262f1edd4d">CFLBase::analyze</a>()</div>
214
- <div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;{</div>
215
- <div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">initialize</a>();</div>
216
- <div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; </div>
217
- <div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a2d1f2e2c7f8cbe07e0dda759a7424e6e">solve</a>();</div>
218
- <div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; </div>
219
- <div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a7ee2fdf1c0cdf019c863870dc51c0b5d">finalize</a>();</div>
220
- <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;}</div>
221
- <div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; </div>
222
- <div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b"> 151</a></span>&#160;<a class="code" href="classSVF_1_1CFLGraph.html">CFLGraph</a>* <a class="code" href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b">CFLBase::getCFLGraph</a>()</div>
223
- <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;{</div>
224
- <div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a>;</div>
225
- <div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;}</div>
226
- <div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; </div>
227
- <div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a824da17d03599090d4e3b4c50aeccff9"> 156</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a824da17d03599090d4e3b4c50aeccff9">CFLBase::countSumEdges</a>()</div>
228
- <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;{</div>
229
- <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a25a593cb2a855a93d3593efba382a58c">numOfStartEdges</a> = 0;</div>
230
- <div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b">getCFLGraph</a>()-&gt;getCFLEdges().begin(); it != <a class="code" href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b">getCFLGraph</a>()-&gt;<a class="code" href="classSVF_1_1CFLGraph.html#afcf910a94a3b081067f5a55599475a16">getCFLEdges</a>().end(); it++ )</div>
231
- <div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; {</div>
232
- <div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">if</span> ((*it)-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1CFLBase.html#af7b0e90b8f8998ab6cf4e05155c7a503">grammar</a>-&gt;<a class="code" href="classSVF_1_1GrammarBase.html#a8921a7d7a006e31f13d88b8c808c931b">getStartKind</a>())</div>
233
- <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a25a593cb2a855a93d3593efba382a58c">numOfStartEdges</a>++;</div>
234
- <div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }</div>
235
- <div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;}</div>
236
- <div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; </div>
237
- <div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;} <span class="comment">// End namespace SVF</span></div>
213
+ <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a7ee2fdf1c0cdf019c863870dc51c0b5d">finalize</a>();</div>
214
+ <div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;}</div>
215
+ <div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; </div>
216
+ <div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b"> 145</a></span>&#160;<a class="code" href="classSVF_1_1CFLGraph.html">CFLGraph</a>* <a class="code" href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b">CFLBase::getCFLGraph</a>()</div>
217
+ <div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;{</div>
218
+ <div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a>;</div>
219
+ <div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;}</div>
220
+ <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; </div>
221
+ <div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="classSVF_1_1CFLBase.html#a824da17d03599090d4e3b4c50aeccff9"> 150</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classSVF_1_1CFLBase.html#a824da17d03599090d4e3b4c50aeccff9">CFLBase::countSumEdges</a>()</div>
222
+ <div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;{</div>
223
+ <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a25a593cb2a855a93d3593efba382a58c">numOfStartEdges</a> = 0;</div>
224
+ <div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">for</span>(<span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b">getCFLGraph</a>()-&gt;getCFLEdges().begin(); it != <a class="code" href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b">getCFLGraph</a>()-&gt;<a class="code" href="classSVF_1_1CFLGraph.html#afcf910a94a3b081067f5a55599475a16">getCFLEdges</a>().end(); it++ )</div>
225
+ <div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; {</div>
226
+ <div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">if</span> ((*it)-&gt;getEdgeKind() == <a class="code" href="classSVF_1_1CFLBase.html#a8dd040c7078b7f1a61da76849c89a640">grammar</a>-&gt;<a class="code" href="classSVF_1_1GrammarBase.html#a8921a7d7a006e31f13d88b8c808c931b">getStartKind</a>())</div>
227
+ <div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a25a593cb2a855a93d3593efba382a58c">numOfStartEdges</a>++;</div>
228
+ <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div>
229
+ <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;}</div>
230
+ <div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; </div>
231
+ <div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;} <span class="comment">// End namespace SVF</span></div>
238
232
  </div><!-- fragment --></div><!-- contents -->
239
233
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a5ec3d9bf1fc81346c9df29638daedc0f"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">SVF::PointerAnalysis::stat</a></div><div class="ttdeci">PTAStat * stat</div><div class="ttdoc">Statistics.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00150">PointerAnalysis.h:150</a></div></div>
240
234
  <div class="ttc" id="aclassSVF_1_1CFLGramGraphChecker_html_ada643d980c2590711660eb5f2a4e5f93"><div class="ttname"><a href="classSVF_1_1CFLGramGraphChecker.html#ada643d980c2590711660eb5f2a4e5f93">SVF::CFLGramGraphChecker::check</a></div><div class="ttdeci">void check(GrammarBase *grammar, CFLGraphBuilder *graphBuilder, CFLGraph *graph)</div><div class="ttdef"><b>Definition:</b> <a href="CFLGramGraphChecker_8h_source.html#l00040">CFLGramGraphChecker.h:40</a></div></div>
241
235
  <div class="ttc" id="aclassSVF_1_1PointerAnalysis_html_a431ec4f85eb0f029e5740b92fd9ceb32"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">SVF::PointerAnalysis::initialize</a></div><div class="ttdeci">virtual void initialize()</div><div class="ttdoc">Initialization of a pointer analysis, including building symbol table and SVFIR etc.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00106">PointerAnalysis.cpp:106</a></div></div>
242
- <div class="ttc" id="aclassSVF_1_1GrammarBase_html_a8921a7d7a006e31f13d88b8c808c931b"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a8921a7d7a006e31f13d88b8c808c931b">SVF::GrammarBase::getStartKind</a></div><div class="ttdeci">Kind getStartKind()</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00205">CFLGrammar.h:205</a></div></div>
243
- <div class="ttc" id="aclassSVF_1_1AliasCFLGraphBuilder_html"><div class="ttname"><a href="classSVF_1_1AliasCFLGraphBuilder.html">SVF::AliasCFLGraphBuilder</a></div><div class="ttdoc">AliasCFLGraphBuilder: a CFLGraphBuilder specialized for handling aliasing.</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8h_source.html#l00171">CFLGraphBuilder.h:171</a></div></div>
244
- <div class="ttc" id="aclassSVF_1_1CFLBase_html_a22ab9bbaee16e06d04817db8c394cc0b"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b">SVF::CFLBase::getCFLGraph</a></div><div class="ttdeci">CFLGraph * getCFLGraph()</div><div class="ttdoc">Get CFL graph.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00151">CFLBase.cpp:151</a></div></div>
236
+ <div class="ttc" id="aclassSVF_1_1GrammarBase_html_a8921a7d7a006e31f13d88b8c808c931b"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a8921a7d7a006e31f13d88b8c808c931b">SVF::GrammarBase::getStartKind</a></div><div class="ttdeci">Kind getStartKind()</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00205">CFGrammar.h:205</a></div></div>
237
+ <div class="ttc" id="aclassSVF_1_1AliasCFLGraphBuilder_html"><div class="ttname"><a href="classSVF_1_1AliasCFLGraphBuilder.html">SVF::AliasCFLGraphBuilder</a></div><div class="ttdoc">AliasCFLGraphBuilder: a CFLGraphBuilder specialized for handling aliasing.</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8h_source.html#l00120">CFLGraphBuilder.h:120</a></div></div>
238
+ <div class="ttc" id="aclassSVF_1_1CFLBase_html_a22ab9bbaee16e06d04817db8c394cc0b"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b">SVF::CFLBase::getCFLGraph</a></div><div class="ttdeci">CFLGraph * getCFLGraph()</div><div class="ttdoc">Get CFL graph.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00145">CFLBase.cpp:145</a></div></div>
245
239
  <div class="ttc" id="aclassSVF_1_1BVDataPTAImpl_html_a638f58c3bf6efdb3787fafaa4e6f19ca"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#a638f58c3bf6efdb3787fafaa4e6f19ca">SVF::BVDataPTAImpl::finalize</a></div><div class="ttdeci">void finalize() override</div><div class="ttdoc">Finalization of pointer analysis, and normalize points-to information to Bit Vector representation.</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8cpp_source.html#l00093">PointerAnalysisImpl.cpp:93</a></div></div>
246
240
  <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#l00065">BasicTypes.h:65</a></div></div>
247
- <div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_acc19ccb854db14637c97f4ed99810da9"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#acc19ccb854db14637c97f4ed99810da9">SVF::CFLGraphBuilder::buildFromTextFile</a></div><div class="ttdeci">CFLGraph * buildFromTextFile(std::string fileName, GrammarBase *grammar)</div><div class="ttdoc">Method to build a CFL graph from a Text file.</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8cpp_source.html#l00099">CFLGraphBuilder.cpp:99</a></div></div>
241
+ <div class="ttc" id="aclassSVF_1_1CFLBase_html_a8dd040c7078b7f1a61da76849c89a640"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a8dd040c7078b7f1a61da76849c89a640">SVF::CFLBase::grammar</a></div><div class="ttdeci">CFGrammar * grammar</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00112">CFLBase.h:112</a></div></div>
248
242
  <div class="ttc" id="aclassSVF_1_1CFLSolver_html_a46ded0b18821a2ade0ee151ac2b2d520"><div class="ttname"><a href="classSVF_1_1CFLSolver.html#a46ded0b18821a2ade0ee151ac2b2d520">SVF::CFLSolver::numOfChecks</a></div><div class="ttdeci">static double numOfChecks</div><div class="ttdef"><b>Definition:</b> <a href="CFLSolver_8h_source.html#l00052">CFLSolver.h:52</a></div></div>
249
243
  <div class="ttc" id="aclassSVF_1_1Options_html_a15a9c1086e1bbd6a76d56ad1bdd6b994"><div class="ttname"><a href="classSVF_1_1Options.html#a15a9c1086e1bbd6a76d56ad1bdd6b994">SVF::Options::Customized</a></div><div class="ttdeci">static const Option&lt; bool &gt; Customized</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00270">Options.h:270</a></div></div>
250
244
  <div class="ttc" id="aSVFType_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFType_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00571">SVFType.h:571</a></div></div>
245
+ <div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_a27b247b46ce0b467459fcc2d53f50383"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#a27b247b46ce0b467459fcc2d53f50383">SVF::CFLGraphBuilder::build</a></div><div class="ttdeci">CFLGraph * build(GenericGraph&lt; N, E &gt; *graph, GrammarBase *grammar, BuildDirection direction=BuildDirection::plain)</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8cpp_source.html#l00101">CFLGraphBuilder.cpp:101</a></div></div>
251
246
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_aa807cf1b8605a463d6d68d5096f3e0e8"><div class="ttname"><a href="classSVF_1_1CFLBase.html#aa807cf1b8605a463d6d68d5096f3e0e8">SVF::CFLBase::numOfIteration</a></div><div class="ttdeci">static double numOfIteration</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00103">CFLBase.h:103</a></div></div>
252
247
  <div class="ttc" id="aclassSVF_1_1Options_html_a81dbd12b5141c4a2758d6f2d3321f1ac"><div class="ttname"><a href="classSVF_1_1Options.html#a81dbd12b5141c4a2758d6f2d3321f1ac">SVF::Options::CFLGraph</a></div><div class="ttdeci">static const Option&lt; std::string &gt; CFLGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00263">Options.h:263</a></div></div>
253
248
  <div class="ttc" id="aclassSVF_1_1CFLGraph_html"><div class="ttname"><a href="classSVF_1_1CFLGraph.html">SVF::CFLGraph</a></div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#l00155">CFLGraph.h:155</a></div></div>
254
- <div class="ttc" id="aclassSVF_1_1CFLBase_html_a77bc3b0260fe02cdcf41fdb6b80caa09"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a77bc3b0260fe02cdcf41fdb6b80caa09">SVF::CFLBase::buildCFLGrammar</a></div><div class="ttdeci">virtual void buildCFLGrammar()</div><div class="ttdoc">Build Grammar from text file.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00064">CFLBase.cpp:64</a></div></div>
249
+ <div class="ttc" id="aclassSVF_1_1CFLBase_html_a77bc3b0260fe02cdcf41fdb6b80caa09"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a77bc3b0260fe02cdcf41fdb6b80caa09">SVF::CFLBase::buildCFLGrammar</a></div><div class="ttdeci">virtual void buildCFLGrammar()</div><div class="ttdoc">Build Grammar from text file.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00065">CFLBase.cpp:65</a></div></div>
255
250
  <div class="ttc" id="aclassSVF_1_1CFGNormalizer_html"><div class="ttname"><a href="classSVF_1_1CFGNormalizer.html">SVF::CFGNormalizer</a></div><div class="ttdef"><b>Definition:</b> <a href="CFGNormalizer_8h_source.html#l00047">CFGNormalizer.h:47</a></div></div>
256
251
  <div class="ttc" id="aclassSVF_1_1GrammarBuilder_html"><div class="ttname"><a href="classSVF_1_1GrammarBuilder.html">SVF::GrammarBuilder</a></div><div class="ttdef"><b>Definition:</b> <a href="GrammarBuilder_8h_source.html#l00070">GrammarBuilder.h:70</a></div></div>
257
252
  <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>
258
- <div class="ttc" id="aclassSVF_1_1CFLBase_html_a824da17d03599090d4e3b4c50aeccff9"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a824da17d03599090d4e3b4c50aeccff9">SVF::CFLBase::countSumEdges</a></div><div class="ttdeci">virtual void countSumEdges()</div><div class="ttdoc">Count the num of Nonterminal Edges.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00156">CFLBase.cpp:156</a></div></div>
253
+ <div class="ttc" id="aclassSVF_1_1CFLBase_html_a824da17d03599090d4e3b4c50aeccff9"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a824da17d03599090d4e3b4c50aeccff9">SVF::CFLBase::countSumEdges</a></div><div class="ttdeci">virtual void countSumEdges()</div><div class="ttdoc">Count the num of Nonterminal Edges.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00150">CFLBase.cpp:150</a></div></div>
259
254
  <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>
260
255
  <div class="ttc" id="aclassSVF_1_1GrammarBuilder_html_a23d03b2cd348d85bda1ee582dded6505"><div class="ttname"><a href="classSVF_1_1GrammarBuilder.html#a23d03b2cd348d85bda1ee582dded6505">SVF::GrammarBuilder::build</a></div><div class="ttdeci">GrammarBase * build() const</div><div class="ttdoc">Build grammarBase from fileName.</div><div class="ttdef"><b>Definition:</b> <a href="GrammarBuilder_8cpp_source.html#l00115">GrammarBuilder.cpp:115</a></div></div>
261
256
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_ac3b408acb295e2c319e3542539e6df47"><div class="ttname"><a href="classSVF_1_1CFLBase.html#ac3b408acb295e2c319e3542539e6df47">SVF::CFLBase::numOfTemporaryNonterminalEdges</a></div><div class="ttdeci">static double numOfTemporaryNonterminalEdges</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00099">CFLBase.h:99</a></div></div>
262
257
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_a34c3a3eec2d7d34ef78b5031d8844b17"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a34c3a3eec2d7d34ef78b5031d8844b17">SVF::CFLBase::solver</a></div><div class="ttdeci">CFLSolver * solver</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00113">CFLBase.h:113</a></div></div>
263
258
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_a9453bf479ccd00bacb3b371fa6383a9c"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a9453bf479ccd00bacb3b371fa6383a9c">SVF::CFLBase::timeOfBuildCFLGraph</a></div><div class="ttdeci">static double timeOfBuildCFLGraph</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00097">CFLBase.h:97</a></div></div>
264
- <div class="ttc" id="aclassSVF_1_1CFLBase_html_a0daabb58bd7d5be40379ccc670c37a93"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a0daabb58bd7d5be40379ccc670c37a93">SVF::CFLBase::buildCFLGraph</a></div><div class="ttdeci">virtual void buildCFLGraph()</div><div class="ttdoc">Build CFLGraph based on Option.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00077">CFLBase.cpp:77</a></div></div>
259
+ <div class="ttc" id="aclassSVF_1_1CFLBase_html_a0daabb58bd7d5be40379ccc670c37a93"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a0daabb58bd7d5be40379ccc670c37a93">SVF::CFLBase::buildCFLGraph</a></div><div class="ttdeci">virtual void buildCFLGraph()</div><div class="ttdoc">Build CFLGraph based on Option.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00078">CFLBase.cpp:78</a></div></div>
265
260
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_a5a29d4b85cb24fd33ab65d60a79e4201"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a5a29d4b85cb24fd33ab65d60a79e4201">SVF::CFLBase::checkParameter</a></div><div class="ttdeci">virtual void checkParameter()</div><div class="ttdoc">Parameter Checking.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00049">CFLBase.cpp:49</a></div></div>
266
261
  <div class="ttc" id="aclassSVF_1_1ConstraintGraph_html"><div class="ttname"><a href="classSVF_1_1ConstraintGraph.html">SVF::ConstraintGraph</a></div><div class="ttdef"><b>Definition:</b> <a href="ConsG_8h_source.html#l00044">ConsG.h:44</a></div></div>
267
262
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_ad4d65dd4c3e173d014199ac6b08a5261"><div class="ttname"><a href="classSVF_1_1CFLBase.html#ad4d65dd4c3e173d014199ac6b08a5261">SVF::CFLBase::timeOfNormalizeGrammar</a></div><div class="ttdeci">static double timeOfNormalizeGrammar</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00095">CFLBase.h:95</a></div></div>
268
- <div class="ttc" id="aclassSVF_1_1CFLBase_html_a2aac58e19676290042874c262f1edd4d"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a2aac58e19676290042874c262f1edd4d">SVF::CFLBase::analyze</a></div><div class="ttdeci">virtual void analyze()</div><div class="ttdoc">Perform analyze (main part of CFLR Analysis)</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00142">CFLBase.cpp:142</a></div></div>
269
- <div class="ttc" id="aclassSVF_1_1CFLBase_html_a7ee2fdf1c0cdf019c863870dc51c0b5d"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a7ee2fdf1c0cdf019c863870dc51c0b5d">SVF::CFLBase::finalize</a></div><div class="ttdeci">virtual void finalize()</div><div class="ttdoc">Finalize extra stat info passing.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00135">CFLBase.cpp:135</a></div></div>
263
+ <div class="ttc" id="aclassSVF_1_1CFLBase_html_a2aac58e19676290042874c262f1edd4d"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a2aac58e19676290042874c262f1edd4d">SVF::CFLBase::analyze</a></div><div class="ttdeci">virtual void analyze()</div><div class="ttdoc">Perform analyze (main part of CFLR Analysis)</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00136">CFLBase.cpp:136</a></div></div>
264
+ <div class="ttc" id="aclassSVF_1_1CFLBase_html_a7ee2fdf1c0cdf019c863870dc51c0b5d"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a7ee2fdf1c0cdf019c863870dc51c0b5d">SVF::CFLBase::finalize</a></div><div class="ttdeci">virtual void finalize()</div><div class="ttdoc">Finalize extra stat info passing.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00129">CFLBase.cpp:129</a></div></div>
270
265
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_a4c03b83cb2a3c0c166d96550d6771a1b"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a4c03b83cb2a3c0c166d96550d6771a1b">SVF::CFLBase::numOfNonterminalEdges</a></div><div class="ttdeci">static double numOfNonterminalEdges</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00100">CFLBase.h:100</a></div></div>
271
266
  <div class="ttc" id="aclassSVF_1_1CFLGramGraphChecker_html"><div class="ttname"><a href="classSVF_1_1CFLGramGraphChecker.html">SVF::CFLGramGraphChecker</a></div><div class="ttdef"><b>Definition:</b> <a href="CFLGramGraphChecker_8h_source.html#l00037">CFLGramGraphChecker.h:37</a></div></div>
272
- <div class="ttc" id="aclassSVF_1_1AliasCFLGraphBuilder_html_ac74b55198d73acebb9843fd13c1fd880"><div class="ttname"><a href="classSVF_1_1AliasCFLGraphBuilder.html#ac74b55198d73acebb9843fd13c1fd880">SVF::AliasCFLGraphBuilder::buildBiPEGgraph</a></div><div class="ttdeci">CFLGraph * buildBiPEGgraph(ConstraintGraph *graph, Kind startKind, GrammarBase *grammar, SVFIR *pag)</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8cpp_source.html#l00242">CFLGraphBuilder.cpp:242</a></div></div>
273
- <div class="ttc" id="aclassSVF_1_1CFGNormalizer_html_ae8e2b22944e9d3d2ec14cd6aaa8b93c9"><div class="ttname"><a href="classSVF_1_1CFGNormalizer.html#ae8e2b22944e9d3d2ec14cd6aaa8b93c9">SVF::CFGNormalizer::normalize</a></div><div class="ttdeci">CFLGrammar * normalize(GrammarBase *generalGrammar)</div><div class="ttdoc">Binary Normal Form(BNF) normalization with variable attribute expanded.</div><div class="ttdef"><b>Definition:</b> <a href="CFGNormalizer_8cpp_source.html#l00042">CFGNormalizer.cpp:42</a></div></div>
274
- <div class="ttc" id="aclassSVF_1_1AliasCFLGraphBuilder_html_ab19243c4aceffce7b257f3d8cb3050fd"><div class="ttname"><a href="classSVF_1_1AliasCFLGraphBuilder.html#ab19243c4aceffce7b257f3d8cb3050fd">SVF::AliasCFLGraphBuilder::buildBigraph</a></div><div class="ttdeci">CFLGraph * buildBigraph(ConstraintGraph *graph, Kind startKind, GrammarBase *grammar)</div><div class="ttdoc">Builds a bidirectional CFL graph by copying nodes and edges from a const graph that inherits from Gen...</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8cpp_source.html#l00200">CFLGraphBuilder.cpp:200</a></div></div>
267
+ <div class="ttc" id="aclassSVF_1_1AliasCFLGraphBuilder_html_ac74b55198d73acebb9843fd13c1fd880"><div class="ttname"><a href="classSVF_1_1AliasCFLGraphBuilder.html#ac74b55198d73acebb9843fd13c1fd880">SVF::AliasCFLGraphBuilder::buildBiPEGgraph</a></div><div class="ttdeci">CFLGraph * buildBiPEGgraph(ConstraintGraph *graph, Kind startKind, GrammarBase *grammar, SVFIR *pag)</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8cpp_source.html#l00293">CFLGraphBuilder.cpp:293</a></div></div>
268
+ <div class="ttc" id="aclassSVF_1_1AliasCFLGraphBuilder_html_ab19243c4aceffce7b257f3d8cb3050fd"><div class="ttname"><a href="classSVF_1_1AliasCFLGraphBuilder.html#ab19243c4aceffce7b257f3d8cb3050fd">SVF::AliasCFLGraphBuilder::buildBigraph</a></div><div class="ttdeci">CFLGraph * buildBigraph(ConstraintGraph *graph, Kind startKind, GrammarBase *grammar)</div><div class="ttdoc">Builds a bidirectional CFL graph by copying nodes and edges from a const graph that inherits from Gen...</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8cpp_source.html#l00251">CFLGraphBuilder.cpp:251</a></div></div>
275
269
  <div class="ttc" id="aclassSVF_1_1CFLSolver_html_a2ee3436c26ebdb2aaf790c25b1d8b5a6"><div class="ttname"><a href="classSVF_1_1CFLSolver.html#a2ee3436c26ebdb2aaf790c25b1d8b5a6">SVF::CFLSolver::solve</a></div><div class="ttdeci">virtual void solve()</div><div class="ttdoc">Start solving.</div><div class="ttdef"><b>Definition:</b> <a href="CFLSolver_8cpp_source.html#l00119">CFLSolver.cpp:119</a></div></div>
276
270
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_a88e40af43705550a78837b8589bbf3f8"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a88e40af43705550a78837b8589bbf3f8">SVF::CFLBase::timeOfSolving</a></div><div class="ttdeci">static double timeOfSolving</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00105">CFLBase.h:105</a></div></div>
277
271
  <div class="ttc" id="aclassSVF_1_1Options_html_a4854dd8b167e468e698606254b31bf26"><div class="ttname"><a href="classSVF_1_1Options.html#a4854dd8b167e468e698606254b31bf26">SVF::Options::PEGTransfer</a></div><div class="ttdeci">static const Option&lt; bool &gt; PEGTransfer</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00266">Options.h:266</a></div></div>
278
272
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_aef3da4ce970597586757cafd2a435c1f"><div class="ttname"><a href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">SVF::CFLBase::grammarBase</a></div><div class="ttdeci">GrammarBase * grammarBase</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00111">CFLBase.h:111</a></div></div>
279
273
  <div class="ttc" id="aCFLBase_8h_html"><div class="ttname"><a href="CFLBase_8h.html">CFLBase.h</a></div></div>
280
274
  <div class="ttc" id="aclassSVF_1_1CFLGraph_html_afcf910a94a3b081067f5a55599475a16"><div class="ttname"><a href="classSVF_1_1CFLGraph.html#afcf910a94a3b081067f5a55599475a16">SVF::CFLGraph::getCFLEdges</a></div><div class="ttdeci">const CFLEdgeSet &amp; getCFLEdges() const</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#l00181">CFLGraph.h:181</a></div></div>
281
- <div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_a6c9fa25204550dc5bea1cae52a61472b"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#a6c9fa25204550dc5bea1cae52a61472b">SVF::CFLGraphBuilder::buildFromDot</a></div><div class="ttdeci">CFLGraph * buildFromDot(std::string filename, GrammarBase *grammar)</div><div class="ttdoc">Method to build a CFL graph from a Dot file.</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8cpp_source.html#l00153">CFLGraphBuilder.cpp:153</a></div></div>
282
275
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_a8101683062b9a71c0b2309cbdfb7b26f"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">SVF::CFLBase::graph</a></div><div class="ttdeci">CFLGraph * graph</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00110">CFLBase.h:110</a></div></div>
283
276
  <div class="ttc" id="aclassSVF_1_1Options_html_ad09017ae2e1010fbba5c086a4772750f"><div class="ttname"><a href="classSVF_1_1Options.html#ad09017ae2e1010fbba5c086a4772750f">SVF::Options::GrammarFilename</a></div><div class="ttdeci">static const Option&lt; std::string &gt; GrammarFilename</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00262">Options.h:262</a></div></div>
284
- <div class="ttc" id="aclassSVF_1_1CFLBase_html_a462de3facd2a9365d32397d250414ee9"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a462de3facd2a9365d32397d250414ee9">SVF::CFLBase::normalizeCFLGrammar</a></div><div class="ttdeci">virtual void normalizeCFLGrammar()</div><div class="ttdoc">Normalize grammar.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00111">CFLBase.cpp:111</a></div></div>
277
+ <div class="ttc" id="aclassSVF_1_1CFLBase_html_a462de3facd2a9365d32397d250414ee9"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a462de3facd2a9365d32397d250414ee9">SVF::CFLBase::normalizeCFLGrammar</a></div><div class="ttdeci">virtual void normalizeCFLGrammar()</div><div class="ttdoc">Normalize grammar.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00105">CFLBase.cpp:105</a></div></div>
278
+ <div class="ttc" id="aclassSVF_1_1CFGNormalizer_html_a937b65bca67692e4c6507d2b6d5fb567"><div class="ttname"><a href="classSVF_1_1CFGNormalizer.html#a937b65bca67692e4c6507d2b6d5fb567">SVF::CFGNormalizer::normalize</a></div><div class="ttdeci">CFGrammar * normalize(GrammarBase *generalGrammar)</div><div class="ttdoc">Binary Normal Form(BNF) normalization with variable attribute expanded.</div><div class="ttdef"><b>Definition:</b> <a href="CFGNormalizer_8cpp_source.html#l00042">CFGNormalizer.cpp:42</a></div></div>
285
279
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_a0d3217f4c3796b58a98add5c92298ad2"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a0d3217f4c3796b58a98add5c92298ad2">SVF::CFLBase::timeOfBuildCFLGrammar</a></div><div class="ttdeci">static double timeOfBuildCFLGrammar</div><div class="ttdoc">Statistics.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00094">CFLBase.h:94</a></div></div>
286
- <div class="ttc" id="aclassSVF_1_1CFLBase_html_a2d1f2e2c7f8cbe07e0dda759a7424e6e"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a2d1f2e2c7f8cbe07e0dda759a7424e6e">SVF::CFLBase::solve</a></div><div class="ttdeci">virtual void solve()</div><div class="ttdoc">Solving CFL Reachability.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00124">CFLBase.cpp:124</a></div></div>
280
+ <div class="ttc" id="aclassSVF_1_1CFLBase_html_a2d1f2e2c7f8cbe07e0dda759a7424e6e"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a2d1f2e2c7f8cbe07e0dda759a7424e6e">SVF::CFLBase::solve</a></div><div class="ttdeci">virtual void solve()</div><div class="ttdoc">Solving CFL Reachability.</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8cpp_source.html#l00118">CFLBase.cpp:118</a></div></div>
287
281
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_a49b12231195521d2b53b045962f0a3f6"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a49b12231195521d2b53b045962f0a3f6">SVF::CFLBase::numOfChecks</a></div><div class="ttdeci">static double numOfChecks</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00104">CFLBase.h:104</a></div></div>
288
282
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_a9e6cbab31612da4a1f8f660d1fabc4c0"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a9e6cbab31612da4a1f8f660d1fabc4c0">SVF::CFLBase::svfir</a></div><div class="ttdeci">SVFIR * svfir</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00109">CFLBase.h:109</a></div></div>
289
- <div class="ttc" id="aclassSVF_1_1CFLBase_html_af7b0e90b8f8998ab6cf4e05155c7a503"><div class="ttname"><a href="classSVF_1_1CFLBase.html#af7b0e90b8f8998ab6cf4e05155c7a503">SVF::CFLBase::grammar</a></div><div class="ttdeci">CFLGrammar * grammar</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00112">CFLBase.h:112</a></div></div>
290
283
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_abc5502f15583f0546bbc2a678d2f2ed9"><div class="ttname"><a href="classSVF_1_1CFLBase.html#abc5502f15583f0546bbc2a678d2f2ed9">SVF::CFLBase::numOfTerminalEdges</a></div><div class="ttdeci">static double numOfTerminalEdges</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00098">CFLBase.h:98</a></div></div>
291
284
  <div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_ab65033f068bfbeb0a1c52dcec3beb6bc"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#ab65033f068bfbeb0a1c52dcec3beb6bc">SVF::SVFUtil::errs</a></div><div class="ttdeci">std::ostream &amp; errs()</div><div class="ttdoc">Overwrite llvm::errs()</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00056">SVFUtil.h:56</a></div></div>
292
285
  <div class="ttc" id="aclassSVF_1_1CFLBase_html_a25a593cb2a855a93d3593efba382a58c"><div class="ttname"><a href="classSVF_1_1CFLBase.html#a25a593cb2a855a93d3593efba382a58c">SVF::CFLBase::numOfStartEdges</a></div><div class="ttdeci">static double numOfStartEdges</div><div class="ttdef"><b>Definition:</b> <a href="CFLBase_8h_source.html#l00101">CFLBase.h:101</a></div></div>