svf-tools 1.0.577 → 1.0.579

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 (166) hide show
  1. package/SVF-doxygen/html/html/CFLAlias_8cpp.html +0 -1
  2. package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +10 -42
  3. package/SVF-doxygen/html/html/CFLAlias_8h.html +1 -8
  4. package/SVF-doxygen/html/html/CFLAlias_8h_source.html +22 -49
  5. package/SVF-doxygen/html/html/CFLBase_8cpp.html +89 -0
  6. package/SVF-doxygen/html/html/CFLBase_8cpp_source.html +119 -0
  7. package/SVF-doxygen/html/html/CFLBase_8h.html +104 -0
  8. package/SVF-doxygen/html/html/CFLBase_8h_source.html +117 -0
  9. package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +2 -2
  10. package/SVF-doxygen/html/html/CFLGraph_8h_source.html +5 -4
  11. package/SVF-doxygen/html/html/CFLStat_8cpp_source.html +17 -58
  12. package/SVF-doxygen/html/html/CFLStat_8h.html +1 -0
  13. package/SVF-doxygen/html/html/CFLStat_8h_source.html +12 -22
  14. package/SVF-doxygen/html/html/CFLVF_8cpp.html +0 -2
  15. package/SVF-doxygen/html/html/CFLVF_8cpp_source.html +4 -15
  16. package/SVF-doxygen/html/html/CFLVF_8h.html +3 -8
  17. package/SVF-doxygen/html/html/CFLVF_8h_source.html +11 -26
  18. package/SVF-doxygen/html/html/CHG_8cpp_source.html +1 -1
  19. package/SVF-doxygen/html/html/CHG_8h_source.html +1 -1
  20. package/SVF-doxygen/html/html/ConsGNode_8h_source.html +5 -5
  21. package/SVF-doxygen/html/html/ConsG_8cpp_source.html +1 -1
  22. package/SVF-doxygen/html/html/ConsG_8h_source.html +1 -1
  23. package/SVF-doxygen/html/html/DCHG_8h_source.html +1 -1
  24. package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +1 -1
  25. package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +1 -1
  26. package/SVF-doxygen/html/html/GenericGraph_8h_source.html +1 -1
  27. package/SVF-doxygen/html/html/GraphPrinter_8h_source.html +1 -1
  28. package/SVF-doxygen/html/html/ICFG_8cpp_source.html +1 -1
  29. package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
  30. package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +1 -1
  31. package/SVF-doxygen/html/html/IRGraph_8h_source.html +1 -1
  32. package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +1 -1
  33. package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
  34. package/SVF-doxygen/html/html/SVFG_8cpp_source.html +1 -1
  35. package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
  36. package/SVF-doxygen/html/html/TCT_8cpp_source.html +1 -1
  37. package/SVF-doxygen/html/html/TCT_8h_source.html +1 -1
  38. package/SVF-doxygen/html/html/VFG_8cpp_source.html +1 -1
  39. package/SVF-doxygen/html/html/VFG_8h_source.html +1 -1
  40. package/SVF-doxygen/html/html/annotated.html +271 -270
  41. package/SVF-doxygen/html/html/cfl_8cpp.html +6 -9
  42. package/SVF-doxygen/html/html/cfl_8cpp_source.html +6 -8
  43. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +9 -8
  44. package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.png +0 -0
  45. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias-members.html +120 -121
  46. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +212 -713
  47. package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.png +0 -0
  48. package/SVF-doxygen/html/html/classSVF_1_1CFLBase-members.html +270 -0
  49. package/SVF-doxygen/html/html/classSVF_1_1CFLBase.html +1199 -0
  50. package/SVF-doxygen/html/html/classSVF_1_1CFLBase.png +0 -0
  51. package/SVF-doxygen/html/html/classSVF_1_1CFLGraph-members.html +21 -20
  52. package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +33 -3
  53. package/SVF-doxygen/html/html/classSVF_1_1CFLStat-members.html +21 -31
  54. package/SVF-doxygen/html/html/classSVF_1_1CFLStat.html +62 -358
  55. package/SVF-doxygen/html/html/classSVF_1_1CFLVF-members.html +94 -80
  56. package/SVF-doxygen/html/html/classSVF_1_1CFLVF.html +207 -287
  57. package/SVF-doxygen/html/html/classSVF_1_1CFLVF.png +0 -0
  58. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode-members.html +26 -26
  59. package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +43 -43
  60. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +21 -20
  61. package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
  62. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +12 -11
  63. package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.png +0 -0
  64. package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +1 -1
  65. package/SVF-doxygen/html/html/classes.html +96 -95
  66. package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
  67. package/SVF-doxygen/html/html/dir_98f9a352f241e0e917d4efaa4086f6e8.html +2 -0
  68. package/SVF-doxygen/html/html/dir_ae8aa099e368efaa962140c6624142bc.html +2 -0
  69. package/SVF-doxygen/html/html/files.html +15 -13
  70. package/SVF-doxygen/html/html/functions.html +0 -8
  71. package/SVF-doxygen/html/html/functions_0x7e.html +2 -5
  72. package/SVF-doxygen/html/html/functions_a.html +9 -11
  73. package/SVF-doxygen/html/html/functions_b.html +11 -4
  74. package/SVF-doxygen/html/html/functions_c.html +33 -32
  75. package/SVF-doxygen/html/html/functions_f.html +16 -14
  76. package/SVF-doxygen/html/html/functions_func.html +6 -7
  77. package/SVF-doxygen/html/html/functions_func_0x7e.html +2 -5
  78. package/SVF-doxygen/html/html/functions_func_b.html +7 -0
  79. package/SVF-doxygen/html/html/functions_func_c.html +31 -23
  80. package/SVF-doxygen/html/html/functions_func_f.html +3 -1
  81. package/SVF-doxygen/html/html/functions_func_g.html +14 -11
  82. package/SVF-doxygen/html/html/functions_func_i.html +9 -7
  83. package/SVF-doxygen/html/html/functions_func_n.html +3 -0
  84. package/SVF-doxygen/html/html/functions_func_p.html +1 -1
  85. package/SVF-doxygen/html/html/functions_func_s.html +14 -13
  86. package/SVF-doxygen/html/html/functions_g.html +19 -15
  87. package/SVF-doxygen/html/html/functions_i.html +16 -14
  88. package/SVF-doxygen/html/html/functions_l.html +6 -6
  89. package/SVF-doxygen/html/html/functions_m.html +1 -2
  90. package/SVF-doxygen/html/html/functions_n.html +15 -8
  91. package/SVF-doxygen/html/html/functions_p.html +10 -10
  92. package/SVF-doxygen/html/html/functions_r.html +1 -1
  93. package/SVF-doxygen/html/html/functions_s.html +22 -21
  94. package/SVF-doxygen/html/html/functions_t.html +17 -13
  95. package/SVF-doxygen/html/html/functions_type_c.html +0 -1
  96. package/SVF-doxygen/html/html/functions_v.html +3 -3
  97. package/SVF-doxygen/html/html/functions_vars.html +0 -8
  98. package/SVF-doxygen/html/html/functions_vars_a.html +0 -1
  99. package/SVF-doxygen/html/html/functions_vars_c.html +0 -2
  100. package/SVF-doxygen/html/html/functions_vars_g.html +5 -4
  101. package/SVF-doxygen/html/html/functions_vars_m.html +0 -1
  102. package/SVF-doxygen/html/html/functions_vars_n.html +12 -8
  103. package/SVF-doxygen/html/html/functions_vars_p.html +1 -1
  104. package/SVF-doxygen/html/html/functions_vars_s.html +2 -4
  105. package/SVF-doxygen/html/html/functions_vars_t.html +12 -6
  106. package/SVF-doxygen/html/html/hierarchy.html +58 -57
  107. package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
  108. package/SVF-doxygen/html/html/namespaceSVF.html +3 -0
  109. package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
  110. package/SVF-doxygen/html/html/search/all_0.js +8 -8
  111. package/SVF-doxygen/html/html/search/all_1.js +2 -2
  112. package/SVF-doxygen/html/html/search/all_10.js +6 -6
  113. package/SVF-doxygen/html/html/search/all_11.js +1 -1
  114. package/SVF-doxygen/html/html/search/all_12.js +11 -11
  115. package/SVF-doxygen/html/html/search/all_13.js +16 -12
  116. package/SVF-doxygen/html/html/search/all_15.js +3 -3
  117. package/SVF-doxygen/html/html/search/all_16.js +1 -1
  118. package/SVF-doxygen/html/html/search/all_19.js +1 -2
  119. package/SVF-doxygen/html/html/search/all_2.js +2 -0
  120. package/SVF-doxygen/html/html/search/all_3.js +12 -7
  121. package/SVF-doxygen/html/html/search/all_6.js +4 -4
  122. package/SVF-doxygen/html/html/search/all_7.js +5 -4
  123. package/SVF-doxygen/html/html/search/all_9.js +4 -4
  124. package/SVF-doxygen/html/html/search/all_b.js +1 -1
  125. package/SVF-doxygen/html/html/search/all_c.js +4 -4
  126. package/SVF-doxygen/html/html/search/all_d.js +1 -1
  127. package/SVF-doxygen/html/html/search/all_e.js +14 -9
  128. package/SVF-doxygen/html/html/search/classes_2.js +1 -0
  129. package/SVF-doxygen/html/html/search/files_2.js +2 -0
  130. package/SVF-doxygen/html/html/search/functions_0.js +1 -1
  131. package/SVF-doxygen/html/html/search/functions_1.js +2 -0
  132. package/SVF-doxygen/html/html/search/functions_11.js +3 -3
  133. package/SVF-doxygen/html/html/search/functions_17.js +1 -2
  134. package/SVF-doxygen/html/html/search/functions_2.js +5 -2
  135. package/SVF-doxygen/html/html/search/functions_5.js +1 -1
  136. package/SVF-doxygen/html/html/search/functions_6.js +2 -1
  137. package/SVF-doxygen/html/html/search/functions_8.js +1 -1
  138. package/SVF-doxygen/html/html/search/functions_d.js +1 -0
  139. package/SVF-doxygen/html/html/search/functions_f.js +1 -1
  140. package/SVF-doxygen/html/html/search/typedefs_2.js +1 -1
  141. package/SVF-doxygen/html/html/search/variables_0.js +8 -8
  142. package/SVF-doxygen/html/html/search/variables_1.js +1 -1
  143. package/SVF-doxygen/html/html/search/variables_10.js +1 -1
  144. package/SVF-doxygen/html/html/search/variables_12.js +2 -2
  145. package/SVF-doxygen/html/html/search/variables_13.js +13 -9
  146. package/SVF-doxygen/html/html/search/variables_3.js +2 -2
  147. package/SVF-doxygen/html/html/search/variables_7.js +3 -2
  148. package/SVF-doxygen/html/html/search/variables_9.js +1 -1
  149. package/SVF-doxygen/html/html/search/variables_d.js +1 -1
  150. package/SVF-doxygen/html/html/search/variables_e.js +12 -8
  151. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1CFLNode_01_5_01_4_01_4.html +1 -1
  152. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4.html +2 -2
  153. package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CFLNode_01_5_01_4.html +1 -1
  154. package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
  155. package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
  156. package/include/CFL/CFLAlias.h +12 -51
  157. package/include/CFL/CFLBase.h +110 -0
  158. package/include/CFL/CFLStat.h +7 -18
  159. package/include/CFL/CFLVF.h +13 -25
  160. package/include/Graphs/CFLGraph.h +5 -0
  161. package/lib/CFL/CFLAlias.cpp +33 -66
  162. package/lib/CFL/CFLBase.cpp +133 -0
  163. package/lib/CFL/CFLStat.cpp +22 -149
  164. package/lib/CFL/CFLVF.cpp +28 -38
  165. package/package.json +1 -1
  166. package/tools/CFL/cfl.cpp +12 -25
@@ -0,0 +1,1199 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
+ <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6
+ <meta name="generator" content="Doxygen 1.8.13"/>
7
+ <meta name="viewport" content="width=device-width, initial-scale=1"/>
8
+ <title>Static Value-Flow Analysis: SVF::CFLBase Class Reference</title>
9
+ <link href="tabs.css" rel="stylesheet" type="text/css"/>
10
+ <script type="text/javascript" src="jquery.js"></script>
11
+ <script type="text/javascript" src="dynsections.js"></script>
12
+ <link href="search/search.css" rel="stylesheet" type="text/css"/>
13
+ <script type="text/javascript" src="search/searchdata.js"></script>
14
+ <script type="text/javascript" src="search/search.js"></script>
15
+ <link href="doxygen.css" rel="stylesheet" type="text/css" />
16
+ </head>
17
+ <body>
18
+ <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
19
+ <div id="titlearea">
20
+ <table cellspacing="0" cellpadding="0">
21
+ <tbody>
22
+ <tr style="height: 56px;">
23
+ <td id="projectalign" style="padding-left: 0.5em;">
24
+ <div id="projectname">Static Value-Flow Analysis
25
+ </div>
26
+ </td>
27
+ </tr>
28
+ </tbody>
29
+ </table>
30
+ </div>
31
+ <!-- end header part -->
32
+ <!-- Generated by Doxygen 1.8.13 -->
33
+ <script type="text/javascript">
34
+ var searchBox = new SearchBox("searchBox", "search",false,'Search');
35
+ </script>
36
+ <script type="text/javascript" src="menudata.js"></script>
37
+ <script type="text/javascript" src="menu.js"></script>
38
+ <script type="text/javascript">
39
+ $(function() {
40
+ initMenu('',true,false,'search.php','Search');
41
+ $(document).ready(function() { init_search(); });
42
+ });
43
+ </script>
44
+ <div id="main-nav"></div>
45
+ <!-- window showing the filter options -->
46
+ <div id="MSearchSelectWindow"
47
+ onmouseover="return searchBox.OnSearchSelectShow()"
48
+ onmouseout="return searchBox.OnSearchSelectHide()"
49
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
50
+ </div>
51
+
52
+ <!-- iframe showing the search results (closed by default) -->
53
+ <div id="MSearchResultsWindow">
54
+ <iframe src="javascript:void(0)" frameborder="0"
55
+ name="MSearchResults" id="MSearchResults">
56
+ </iframe>
57
+ </div>
58
+
59
+ <div id="nav-path" class="navpath">
60
+ <ul>
61
+ <li class="navelem"><a class="el" href="namespaceSVF.html">SVF</a></li><li class="navelem"><a class="el" href="classSVF_1_1CFLBase.html">CFLBase</a></li> </ul>
62
+ </div>
63
+ </div><!-- top -->
64
+ <div class="header">
65
+ <div class="summary">
66
+ <a href="#pub-methods">Public Member Functions</a> &#124;
67
+ <a href="#pro-attribs">Protected Attributes</a> &#124;
68
+ <a href="classSVF_1_1CFLBase-members.html">List of all members</a> </div>
69
+ <div class="headertitle">
70
+ <div class="title">SVF::CFLBase Class Reference</div> </div>
71
+ </div><!--header-->
72
+ <div class="contents">
73
+
74
+ <p>CFL Client Base Class.
75
+ <a href="classSVF_1_1CFLBase.html#details">More...</a></p>
76
+
77
+ <p><code>#include &lt;<a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>&gt;</code></p>
78
+ <div class="dynheader">
79
+ Inheritance diagram for SVF::CFLBase:</div>
80
+ <div class="dyncontent">
81
+ <div class="center">
82
+ <img src="classSVF_1_1CFLBase.png" usemap="#SVF::CFLBase_map" alt=""/>
83
+ <map id="SVF::CFLBase_map" name="SVF::CFLBase_map">
84
+ <area href="classSVF_1_1BVDataPTAImpl.html" alt="SVF::BVDataPTAImpl" shape="rect" coords="71,56,203,80"/>
85
+ <area href="classSVF_1_1PointerAnalysis.html" alt="SVF::PointerAnalysis" shape="rect" coords="71,0,203,24"/>
86
+ <area href="classSVF_1_1CFLAlias.html" alt="SVF::CFLAlias" shape="rect" coords="0,168,132,192"/>
87
+ <area href="classSVF_1_1CFLVF.html" alt="SVF::CFLVF" shape="rect" coords="142,168,274,192"/>
88
+ </map>
89
+ </div></div>
90
+ <table class="memberdecls">
91
+ <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
92
+ Public Member Functions</h2></td></tr>
93
+ <tr class="memitem:a59c71b0eada5c763ce776f3618d08dd8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a59c71b0eada5c763ce776f3618d08dd8">CFLBase</a> (<a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> *ir, <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PointerAnalysis::PTATY</a> pty)</td></tr>
94
+ <tr class="separator:a59c71b0eada5c763ce776f3618d08dd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
95
+ <tr class="memitem:a9bcd55546fc9ec1fbbac2b257ffa3243"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a9bcd55546fc9ec1fbbac2b257ffa3243">~CFLBase</a> ()</td></tr>
96
+ <tr class="memdesc:a9bcd55546fc9ec1fbbac2b257ffa3243"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <a href="#a9bcd55546fc9ec1fbbac2b257ffa3243">More...</a><br /></td></tr>
97
+ <tr class="separator:a9bcd55546fc9ec1fbbac2b257ffa3243"><td class="memSeparator" colspan="2">&#160;</td></tr>
98
+ <tr class="memitem:a77bc3b0260fe02cdcf41fdb6b80caa09"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a77bc3b0260fe02cdcf41fdb6b80caa09">buildCFLGrammar</a> ()</td></tr>
99
+ <tr class="memdesc:a77bc3b0260fe02cdcf41fdb6b80caa09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Build Grammar from text file. <a href="#a77bc3b0260fe02cdcf41fdb6b80caa09">More...</a><br /></td></tr>
100
+ <tr class="separator:a77bc3b0260fe02cdcf41fdb6b80caa09"><td class="memSeparator" colspan="2">&#160;</td></tr>
101
+ <tr class="memitem:a0daabb58bd7d5be40379ccc670c37a93"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a0daabb58bd7d5be40379ccc670c37a93">buildCFLGraph</a> ()</td></tr>
102
+ <tr class="memdesc:a0daabb58bd7d5be40379ccc670c37a93"><td class="mdescLeft">&#160;</td><td class="mdescRight">Build <a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> based on Option. <a href="#a0daabb58bd7d5be40379ccc670c37a93">More...</a><br /></td></tr>
103
+ <tr class="separator:a0daabb58bd7d5be40379ccc670c37a93"><td class="memSeparator" colspan="2">&#160;</td></tr>
104
+ <tr class="memitem:a462de3facd2a9365d32397d250414ee9"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a462de3facd2a9365d32397d250414ee9">normalizeCFLGrammar</a> ()</td></tr>
105
+ <tr class="memdesc:a462de3facd2a9365d32397d250414ee9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalize grammar. <a href="#a462de3facd2a9365d32397d250414ee9">More...</a><br /></td></tr>
106
+ <tr class="separator:a462de3facd2a9365d32397d250414ee9"><td class="memSeparator" colspan="2">&#160;</td></tr>
107
+ <tr class="memitem:a22ab9bbaee16e06d04817db8c394cc0b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a22ab9bbaee16e06d04817db8c394cc0b">getCFLGraph</a> ()</td></tr>
108
+ <tr class="memdesc:a22ab9bbaee16e06d04817db8c394cc0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get CFL graph. <a href="#a22ab9bbaee16e06d04817db8c394cc0b">More...</a><br /></td></tr>
109
+ <tr class="separator:a22ab9bbaee16e06d04817db8c394cc0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
110
+ <tr class="memitem:a824da17d03599090d4e3b4c50aeccff9"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a824da17d03599090d4e3b4c50aeccff9">countSumEdges</a> ()</td></tr>
111
+ <tr class="memdesc:a824da17d03599090d4e3b4c50aeccff9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Count the num of Nonterminal Edges. <a href="#a824da17d03599090d4e3b4c50aeccff9">More...</a><br /></td></tr>
112
+ <tr class="separator:a824da17d03599090d4e3b4c50aeccff9"><td class="memSeparator" colspan="2">&#160;</td></tr>
113
+ <tr class="memitem:a2d1f2e2c7f8cbe07e0dda759a7424e6e"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a2d1f2e2c7f8cbe07e0dda759a7424e6e">solve</a> ()</td></tr>
114
+ <tr class="memdesc:a2d1f2e2c7f8cbe07e0dda759a7424e6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Solving CFL Reachability. <a href="#a2d1f2e2c7f8cbe07e0dda759a7424e6e">More...</a><br /></td></tr>
115
+ <tr class="separator:a2d1f2e2c7f8cbe07e0dda759a7424e6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
116
+ <tr class="memitem:a2aac58e19676290042874c262f1edd4d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a2aac58e19676290042874c262f1edd4d">analyze</a> ()</td></tr>
117
+ <tr class="memdesc:a2aac58e19676290042874c262f1edd4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform analyze (main part of CFLR Analysis) <a href="#a2aac58e19676290042874c262f1edd4d">More...</a><br /></td></tr>
118
+ <tr class="separator:a2aac58e19676290042874c262f1edd4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
119
+ <tr class="inherit_header pub_methods_classSVF_1_1BVDataPTAImpl"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classSVF_1_1BVDataPTAImpl')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td></tr>
120
+ <tr class="memitem:ab0e1242aadfe1e16a2bd1445658a5476 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ab0e1242aadfe1e16a2bd1445658a5476">BVDataPTAImpl</a> (<a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> *<a class="el" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>, <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PointerAnalysis::PTATY</a> <a class="el" href="cJSON_8cpp.html#a3f9a0d3265a6254722587175dac3e4dc">type</a>, bool alias_check=<a class="el" href="cJSON_8cpp.html#a930920b2bc42824a5c03be681830f4b2">true</a>)</td></tr>
121
+ <tr class="memdesc:ab0e1242aadfe1e16a2bd1445658a5476 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <a href="classSVF_1_1BVDataPTAImpl.html#ab0e1242aadfe1e16a2bd1445658a5476">More...</a><br /></td></tr>
122
+ <tr class="separator:ab0e1242aadfe1e16a2bd1445658a5476 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
123
+ <tr class="memitem:a06f211184d3e75f0ca351a4b8092a478 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a06f211184d3e75f0ca351a4b8092a478">~BVDataPTAImpl</a> ()</td></tr>
124
+ <tr class="memdesc:a06f211184d3e75f0ca351a4b8092a478 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <a href="classSVF_1_1BVDataPTAImpl.html#a06f211184d3e75f0ca351a4b8092a478">More...</a><br /></td></tr>
125
+ <tr class="separator:a06f211184d3e75f0ca351a4b8092a478 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
126
+ <tr class="memitem:a34d87fa1988b78f032735b5fc2803792 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PersistentPointsToCache.html">PersistentPointsToCache</a>&lt; <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a34d87fa1988b78f032735b5fc2803792">getPtCache</a> (void)</td></tr>
127
+ <tr class="separator:a34d87fa1988b78f032735b5fc2803792 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
128
+ <tr class="memitem:af783769050ab663ad4bb93f901f01a6d inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#af783769050ab663ad4bb93f901f01a6d">destroy</a> ()</td></tr>
129
+ <tr class="memdesc:af783769050ab663ad4bb93f901f01a6d inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Release memory. <a href="classSVF_1_1BVDataPTAImpl.html#af783769050ab663ad4bb93f901f01a6d">More...</a><br /></td></tr>
130
+ <tr class="separator:af783769050ab663ad4bb93f901f01a6d inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
131
+ <tr class="memitem:a4909696c946cf6aba12542ec51766b64 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a4909696c946cf6aba12542ec51766b64">clearPts</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> element)</td></tr>
132
+ <tr class="memdesc:a4909696c946cf6aba12542ec51766b64 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove element from the points-to set of id. <a href="classSVF_1_1BVDataPTAImpl.html#a4909696c946cf6aba12542ec51766b64">More...</a><br /></td></tr>
133
+ <tr class="separator:a4909696c946cf6aba12542ec51766b64 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
134
+ <tr class="memitem:afdb10c2cce4935156566ea1c2daf9ea9 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#afdb10c2cce4935156566ea1c2daf9ea9">clearFullPts</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
135
+ <tr class="memdesc:afdb10c2cce4935156566ea1c2daf9ea9 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear points-to set of id. <a href="classSVF_1_1BVDataPTAImpl.html#afdb10c2cce4935156566ea1c2daf9ea9">More...</a><br /></td></tr>
136
+ <tr class="separator:afdb10c2cce4935156566ea1c2daf9ea9 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
137
+ <tr class="memitem:a4426df37aeabeb94d301373b55a53c20 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a4426df37aeabeb94d301373b55a53c20">clearAllPts</a> ()</td></tr>
138
+ <tr class="memdesc:a4426df37aeabeb94d301373b55a53c20 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear all data. <a href="classSVF_1_1BVDataPTAImpl.html#a4426df37aeabeb94d301373b55a53c20">More...</a><br /></td></tr>
139
+ <tr class="separator:a4426df37aeabeb94d301373b55a53c20 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
140
+ <tr class="memitem:a798c84d5e861de2b61bcb1a86385f721 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a798c84d5e861de2b61bcb1a86385f721">expandFIObjs</a> (const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;pts, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;expandedPts)</td></tr>
141
+ <tr class="memdesc:a798c84d5e861de2b61bcb1a86385f721 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expand FI objects. <a href="classSVF_1_1BVDataPTAImpl.html#a798c84d5e861de2b61bcb1a86385f721">More...</a><br /></td></tr>
142
+ <tr class="separator:a798c84d5e861de2b61bcb1a86385f721 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
143
+ <tr class="memitem:aa6a7186152037452599406a74b05d0e1 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#aa6a7186152037452599406a74b05d0e1">expandFIObjs</a> (const <a class="el" href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">NodeBS</a> &amp;pts, <a class="el" href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">NodeBS</a> &amp;expandedPts)</td></tr>
144
+ <tr class="memdesc:aa6a7186152037452599406a74b05d0e1 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">TODO: remove repetition. <a href="classSVF_1_1BVDataPTAImpl.html#aa6a7186152037452599406a74b05d0e1">More...</a><br /></td></tr>
145
+ <tr class="separator:aa6a7186152037452599406a74b05d0e1 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
146
+ <tr class="memitem:a7a87ca1a439e871896f92e4342befa2c inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a7a87ca1a439e871896f92e4342befa2c">remapPointsToSets</a> (void)</td></tr>
147
+ <tr class="memdesc:a7a87ca1a439e871896f92e4342befa2c inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remap all points-to sets to use the current mapping. <a href="classSVF_1_1BVDataPTAImpl.html#a7a87ca1a439e871896f92e4342befa2c">More...</a><br /></td></tr>
148
+ <tr class="separator:a7a87ca1a439e871896f92e4342befa2c inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
149
+ <tr class="memitem:adaba5a41a60e32d18d964bdb8ae5b2df inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#adaba5a41a60e32d18d964bdb8ae5b2df">alias</a> (const <a class="el" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a> *V1, const <a class="el" href="namespaceSVF.html#a90b263fd2f541eca78135078114cabda">Value</a> *V2)</td></tr>
150
+ <tr class="memdesc:adaba5a41a60e32d18d964bdb8ae5b2df inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface expose to users of our pointer analysis, given Value infos. <a href="classSVF_1_1BVDataPTAImpl.html#adaba5a41a60e32d18d964bdb8ae5b2df">More...</a><br /></td></tr>
151
+ <tr class="separator:adaba5a41a60e32d18d964bdb8ae5b2df inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
152
+ <tr class="memitem:a949533e5c99698c7f9862aae5de23687 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a949533e5c99698c7f9862aae5de23687">alias</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> node1, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> node2)</td></tr>
153
+ <tr class="memdesc:a949533e5c99698c7f9862aae5de23687 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface expose to users of our pointer analysis, given PAGNodeID. <a href="classSVF_1_1BVDataPTAImpl.html#a949533e5c99698c7f9862aae5de23687">More...</a><br /></td></tr>
154
+ <tr class="separator:a949533e5c99698c7f9862aae5de23687 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
155
+ <tr class="memitem:a25720f154731a8c745da10aa76ab8517 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceSVF.html#a61c01e2e687ab3a001fb806737583943">AliasResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a25720f154731a8c745da10aa76ab8517">alias</a> (const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;pts1, const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;pts2)</td></tr>
156
+ <tr class="memdesc:a25720f154731a8c745da10aa76ab8517 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface expose to users of our pointer analysis, given two pts. <a href="classSVF_1_1BVDataPTAImpl.html#a25720f154731a8c745da10aa76ab8517">More...</a><br /></td></tr>
157
+ <tr class="separator:a25720f154731a8c745da10aa76ab8517 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
158
+ <tr class="memitem:aee289e298e421448caaa604b7eb34fcb inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#aee289e298e421448caaa604b7eb34fcb">getPts</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
159
+ <tr class="separator:aee289e298e421448caaa604b7eb34fcb inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
160
+ <tr class="memitem:a58113943e4e7144d94d26991dcc8bcc7 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a58113943e4e7144d94d26991dcc8bcc7">getRevPts</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> nodeId)</td></tr>
161
+ <tr class="separator:a58113943e4e7144d94d26991dcc8bcc7 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
162
+ <tr class="memitem:ae7073c07bfd7912f888d54d4652c7cc2 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ae7073c07bfd7912f888d54d4652c7cc2">unionPts</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id, const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;target)</td></tr>
163
+ <tr class="separator:ae7073c07bfd7912f888d54d4652c7cc2 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
164
+ <tr class="memitem:ad5e657b856681a534a8990df35ea08d0 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ad5e657b856681a534a8990df35ea08d0">unionPts</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptd)</td></tr>
165
+ <tr class="separator:ad5e657b856681a534a8990df35ea08d0 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
166
+ <tr class="memitem:af68485a2208553579f9c2e4b2cb20cff inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#af68485a2208553579f9c2e4b2cb20cff">addPts</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptd)</td></tr>
167
+ <tr class="separator:af68485a2208553579f9c2e4b2cb20cff inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
168
+ <tr class="memitem:a25c68f9d2b88437778e854ff0d741d1b inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a25c68f9d2b88437778e854ff0d741d1b">writeToFile</a> (const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> &amp;filename)</td></tr>
169
+ <tr class="memdesc:a25c68f9d2b88437778e854ff0d741d1b inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface for analysis result storage on filesystem. <a href="classSVF_1_1BVDataPTAImpl.html#a25c68f9d2b88437778e854ff0d741d1b">More...</a><br /></td></tr>
170
+ <tr class="separator:a25c68f9d2b88437778e854ff0d741d1b inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
171
+ <tr class="memitem:a290501006cb700db0e07dc577429c928 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a290501006cb700db0e07dc577429c928">readFromFile</a> (const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> &amp;filename)</td></tr>
172
+ <tr class="separator:a290501006cb700db0e07dc577429c928 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
173
+ <tr class="memitem:aa0ca07204a31004fb876c6e18d1ac1ca inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#aa0ca07204a31004fb876c6e18d1ac1ca">writeToModule</a> ()</td></tr>
174
+ <tr class="separator:aa0ca07204a31004fb876c6e18d1ac1ca inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
175
+ <tr class="memitem:a857cdacfc8cafdeb1431bdfa077ef9b5 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a857cdacfc8cafdeb1431bdfa077ef9b5">readFromModule</a> ()</td></tr>
176
+ <tr class="separator:a857cdacfc8cafdeb1431bdfa077ef9b5 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
177
+ <tr class="memitem:ae20bbb7991f585deb2e6d0d8115b1b93 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ae20bbb7991f585deb2e6d0d8115b1b93">dumpCPts</a> ()</td></tr>
178
+ <tr class="memdesc:ae20bbb7991f585deb2e6d0d8115b1b93 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">dump and debug, print out conditional pts <a href="classSVF_1_1BVDataPTAImpl.html#ae20bbb7991f585deb2e6d0d8115b1b93">More...</a><br /></td></tr>
179
+ <tr class="separator:ae20bbb7991f585deb2e6d0d8115b1b93 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
180
+ <tr class="memitem:a8d6cea841b6ded0f80ef2b5784e9b752 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a8d6cea841b6ded0f80ef2b5784e9b752">dumpTopLevelPtsTo</a> ()</td></tr>
181
+ <tr class="separator:a8d6cea841b6ded0f80ef2b5784e9b752 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
182
+ <tr class="memitem:a97705b60d294b87ee075a69f04a35d22 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a97705b60d294b87ee075a69f04a35d22">dumpAllPts</a> ()</td></tr>
183
+ <tr class="separator:a97705b60d294b87ee075a69f04a35d22 inherit pub_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
184
+ <tr class="inherit_header pub_methods_classSVF_1_1PointerAnalysis"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classSVF_1_1PointerAnalysis')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td></tr>
185
+ <tr class="memitem:ade879ee99cae01632d567d3736dcad9e inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1ICFG.html">ICFG</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ade879ee99cae01632d567d3736dcad9e">getICFG</a> () const</td></tr>
186
+ <tr class="memdesc:ade879ee99cae01632d567d3736dcad9e inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get <a class="el" href="classSVF_1_1ICFG.html">ICFG</a>. <a href="classSVF_1_1PointerAnalysis.html#ade879ee99cae01632d567d3736dcad9e">More...</a><br /></td></tr>
187
+ <tr class="separator:ade879ee99cae01632d567d3736dcad9e inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
188
+ <tr class="memitem:ad2c8654a6672472f9bf17681aa9b60bb inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ad2c8654a6672472f9bf17681aa9b60bb">getNumOfResolvedIndCallEdge</a> () const</td></tr>
189
+ <tr class="memdesc:ad2c8654a6672472f9bf17681aa9b60bb inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return number of resolved indirect call edges. <a href="classSVF_1_1PointerAnalysis.html#ad2c8654a6672472f9bf17681aa9b60bb">More...</a><br /></td></tr>
190
+ <tr class="separator:ad2c8654a6672472f9bf17681aa9b60bb inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
191
+ <tr class="memitem:a7c9b7e5fe37ae31ba84d167945ca57df inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a> () const</td></tr>
192
+ <tr class="memdesc:a7c9b7e5fe37ae31ba84d167945ca57df inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return call graph. <a href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">More...</a><br /></td></tr>
193
+ <tr class="separator:a7c9b7e5fe37ae31ba84d167945ca57df inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
194
+ <tr class="memitem:a0bddf297a2d8cd59ce9a232f0229f248 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">CallGraphSCC</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0bddf297a2d8cd59ce9a232f0229f248">getCallGraphSCC</a> () const</td></tr>
195
+ <tr class="memdesc:a0bddf297a2d8cd59ce9a232f0229f248 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return call graph SCC. <a href="classSVF_1_1PointerAnalysis.html#a0bddf297a2d8cd59ce9a232f0229f248">More...</a><br /></td></tr>
196
+ <tr class="separator:a0bddf297a2d8cd59ce9a232f0229f248 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
197
+ <tr class="memitem:a14e2a209cb594f91a24ef09b12f82f3f inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a14e2a209cb594f91a24ef09b12f82f3f">PointerAnalysis</a> (<a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> *<a class="el" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>, <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a> ty=<a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790">Default_PTA</a>, bool alias_check=<a class="el" href="cJSON_8cpp.html#a930920b2bc42824a5c03be681830f4b2">true</a>)</td></tr>
198
+ <tr class="memdesc:a14e2a209cb594f91a24ef09b12f82f3f inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <a href="classSVF_1_1PointerAnalysis.html#a14e2a209cb594f91a24ef09b12f82f3f">More...</a><br /></td></tr>
199
+ <tr class="separator:a14e2a209cb594f91a24ef09b12f82f3f inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
200
+ <tr class="memitem:ac23f71c1307cda9cba44acc40059f0a3 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac23f71c1307cda9cba44acc40059f0a3">getAnalysisTy</a> () const</td></tr>
201
+ <tr class="memdesc:ac23f71c1307cda9cba44acc40059f0a3 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of pointer analysis. <a href="classSVF_1_1PointerAnalysis.html#ac23f71c1307cda9cba44acc40059f0a3">More...</a><br /></td></tr>
202
+ <tr class="separator:ac23f71c1307cda9cba44acc40059f0a3 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
203
+ <tr class="memitem:ac0f821cfe4fb9c9c8816e7a1b1bc0c5e inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">PTAImplTy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac0f821cfe4fb9c9c8816e7a1b1bc0c5e">getImplTy</a> () const</td></tr>
204
+ <tr class="memdesc:ac0f821cfe4fb9c9c8816e7a1b1bc0c5e inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return implementation type of the pointer analysis. <a href="classSVF_1_1PointerAnalysis.html#ac0f821cfe4fb9c9c8816e7a1b1bc0c5e">More...</a><br /></td></tr>
205
+ <tr class="separator:ac0f821cfe4fb9c9c8816e7a1b1bc0c5e inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
206
+ <tr class="memitem:a0ebf1138011aa526d92470c1931313ad inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTAStat.html">PTAStat</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0ebf1138011aa526d92470c1931313ad">getStat</a> () const</td></tr>
207
+ <tr class="memdesc:a0ebf1138011aa526d92470c1931313ad inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get PTA stat. <a href="classSVF_1_1PointerAnalysis.html#a0ebf1138011aa526d92470c1931313ad">More...</a><br /></td></tr>
208
+ <tr class="separator:a0ebf1138011aa526d92470c1931313ad inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
209
+ <tr class="memitem:ad8b71cebf46deaf60e2cd4f6d6bb9433 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFModule.html">SVFModule</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">getModule</a> () const</td></tr>
210
+ <tr class="memdesc:ad8b71cebf46deaf60e2cd4f6d6bb9433 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Module. <a href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">More...</a><br /></td></tr>
211
+ <tr class="separator:ad8b71cebf46deaf60e2cd4f6d6bb9433 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
212
+ <tr class="memitem:a60b111647e000cc983aa52513f90afbc inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a3c2bd95727ec0d9c55c631b6617026c8">OrderedNodeSet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a60b111647e000cc983aa52513f90afbc">getAllValidPtrs</a> ()</td></tr>
213
+ <tr class="memdesc:a60b111647e000cc983aa52513f90afbc inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get all Valid Pointers for resolution. <a href="classSVF_1_1PointerAnalysis.html#a60b111647e000cc983aa52513f90afbc">More...</a><br /></td></tr>
214
+ <tr class="separator:a60b111647e000cc983aa52513f90afbc inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
215
+ <tr class="memitem:a4aeca84393c5586eea7a480737daf17c inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a4aeca84393c5586eea7a480737daf17c">~PointerAnalysis</a> ()</td></tr>
216
+ <tr class="memdesc:a4aeca84393c5586eea7a480737daf17c inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <a href="classSVF_1_1PointerAnalysis.html#a4aeca84393c5586eea7a480737daf17c">More...</a><br /></td></tr>
217
+ <tr class="separator:a4aeca84393c5586eea7a480737daf17c inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
218
+ <tr class="memitem:a431ec4f85eb0f029e5740b92fd9ceb32 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">initialize</a> ()</td></tr>
219
+ <tr class="memdesc:a431ec4f85eb0f029e5740b92fd9ceb32 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialization of a pointer analysis, including building symbol table and <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> etc. <a href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">More...</a><br /></td></tr>
220
+ <tr class="separator:a431ec4f85eb0f029e5740b92fd9ceb32 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
221
+ <tr class="memitem:a0bb90b398ef85504bcd816ae57bee01d inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d">computeDDAPts</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>)</td></tr>
222
+ <tr class="memdesc:a0bb90b398ef85504bcd816ae57bee01d inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute points-to results on-demand, overridden by derived classes. <a href="classSVF_1_1PointerAnalysis.html#a0bb90b398ef85504bcd816ae57bee01d">More...</a><br /></td></tr>
223
+ <tr class="separator:a0bb90b398ef85504bcd816ae57bee01d inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
224
+ <tr class="memitem:a84edebc59e29f2cc1b89a699b8641f30 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a84edebc59e29f2cc1b89a699b8641f30">printIndCSTargets</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs, const <a class="el" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a> &amp;targets)</td></tr>
225
+ <tr class="memdesc:a84edebc59e29f2cc1b89a699b8641f30 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print targets of a function pointer. <a href="classSVF_1_1PointerAnalysis.html#a84edebc59e29f2cc1b89a699b8641f30">More...</a><br /></td></tr>
226
+ <tr class="separator:a84edebc59e29f2cc1b89a699b8641f30 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
227
+ <tr class="memitem:ab83b827ea42d3a61aad20b1a1485d866 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ab83b827ea42d3a61aad20b1a1485d866">dumpStat</a> ()</td></tr>
228
+ <tr class="memdesc:ab83b827ea42d3a61aad20b1a1485d866 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dump the statistics. <a href="classSVF_1_1PointerAnalysis.html#ab83b827ea42d3a61aad20b1a1485d866">More...</a><br /></td></tr>
229
+ <tr class="separator:ab83b827ea42d3a61aad20b1a1485d866 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
230
+ <tr class="memitem:a4880571f57542afc50da506dfe273183 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183">printStat</a> ()</td></tr>
231
+ <tr class="memdesc:a4880571f57542afc50da506dfe273183 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether print statistics. <a href="classSVF_1_1PointerAnalysis.html#a4880571f57542afc50da506dfe273183">More...</a><br /></td></tr>
232
+ <tr class="separator:a4880571f57542afc50da506dfe273183 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
233
+ <tr class="memitem:af44b14fed89918847c0228c1100c56d2 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#af44b14fed89918847c0228c1100c56d2">disablePrintStat</a> ()</td></tr>
234
+ <tr class="memdesc:af44b14fed89918847c0228c1100c56d2 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether print statistics. <a href="classSVF_1_1PointerAnalysis.html#af44b14fed89918847c0228c1100c56d2">More...</a><br /></td></tr>
235
+ <tr class="separator:af44b14fed89918847c0228c1100c56d2 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
236
+ <tr class="memitem:a8d128246f86f28fdf4981d91169ab440 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a8d128246f86f28fdf4981d91169ab440">resolveIndCalls</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs, const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;target, <a class="el" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a> &amp;newEdges)</td></tr>
237
+ <tr class="memdesc:a8d128246f86f28fdf4981d91169ab440 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resolve indirect call edges. <a href="classSVF_1_1PointerAnalysis.html#a8d128246f86f28fdf4981d91169ab440">More...</a><br /></td></tr>
238
+ <tr class="separator:a8d128246f86f28fdf4981d91169ab440 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
239
+ <tr class="memitem:ab541df6fc703c0b21c2c308584c0b7ff inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ab541df6fc703c0b21c2c308584c0b7ff">matchArgs</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs, const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *callee)</td></tr>
240
+ <tr class="memdesc:ab541df6fc703c0b21c2c308584c0b7ff inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Match arguments for callsite at caller and callee. <a href="classSVF_1_1PointerAnalysis.html#ab541df6fc703c0b21c2c308584c0b7ff">More...</a><br /></td></tr>
241
+ <tr class="separator:ab541df6fc703c0b21c2c308584c0b7ff inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
242
+ <tr class="memitem:aed4e5066f6ddef83afaf60adbcc11de0 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0">PTAName</a> () const</td></tr>
243
+ <tr class="memdesc:aed4e5066f6ddef83afaf60adbcc11de0 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return PTA name. <a href="classSVF_1_1PointerAnalysis.html#aed4e5066f6ddef83afaf60adbcc11de0">More...</a><br /></td></tr>
244
+ <tr class="separator:aed4e5066f6ddef83afaf60adbcc11de0 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
245
+ <tr class="memitem:ae2cc7cd0803dbd90639140e71b06b1b5 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CommonCHGraph.html">CommonCHGraph</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae2cc7cd0803dbd90639140e71b06b1b5">getCHGraph</a> () const</td></tr>
246
+ <tr class="memdesc:ae2cc7cd0803dbd90639140e71b06b1b5 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">get <a class="el" href="classSVF_1_1CHGraph.html">CHGraph</a> <a href="classSVF_1_1PointerAnalysis.html#ae2cc7cd0803dbd90639140e71b06b1b5">More...</a><br /></td></tr>
247
+ <tr class="separator:ae2cc7cd0803dbd90639140e71b06b1b5 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
248
+ <tr class="memitem:ade41f3562704d56c7490dcfc941b3437 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ade41f3562704d56c7490dcfc941b3437">getVFnsFromCHA</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs, <a class="el" href="classSVF_1_1PointerAnalysis.html#aa7f15c74eb438be78fcc028534477478">VFunSet</a> &amp;vfns)</td></tr>
249
+ <tr class="separator:ade41f3562704d56c7490dcfc941b3437 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
250
+ <tr class="memitem:a011b8401f5ed5fdb6cd507053465a7a2 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a011b8401f5ed5fdb6cd507053465a7a2">getVFnsFromPts</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs, const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;target, <a class="el" href="classSVF_1_1PointerAnalysis.html#aa7f15c74eb438be78fcc028534477478">VFunSet</a> &amp;vfns)</td></tr>
251
+ <tr class="separator:a011b8401f5ed5fdb6cd507053465a7a2 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
252
+ <tr class="memitem:a6a5dec067fa2a1babc83f36daa8afcc3 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a6a5dec067fa2a1babc83f36daa8afcc3">connectVCallToVFns</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs, const <a class="el" href="classSVF_1_1PointerAnalysis.html#aa7f15c74eb438be78fcc028534477478">VFunSet</a> &amp;vfns, <a class="el" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a> &amp;newEdges)</td></tr>
253
+ <tr class="separator:a6a5dec067fa2a1babc83f36daa8afcc3 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
254
+ <tr class="memitem:ac04b64a5884710508b304f93da88c7ba inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac04b64a5884710508b304f93da88c7ba">resolveCPPIndCalls</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs, const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;target, <a class="el" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a> &amp;newEdges)</td></tr>
255
+ <tr class="memdesc:ac04b64a5884710508b304f93da88c7ba inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resolve cpp indirect call edges. <a href="classSVF_1_1PointerAnalysis.html#ac04b64a5884710508b304f93da88c7ba">More...</a><br /></td></tr>
256
+ <tr class="separator:ac04b64a5884710508b304f93da88c7ba inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
257
+ <tr class="memitem:ae615dd279fbf681e3c15e7209e3adfbe inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">const TypeSystem *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae615dd279fbf681e3c15e7209e3adfbe">getTypeSystem</a> () const</td></tr>
258
+ <tr class="memdesc:ae615dd279fbf681e3c15e7209e3adfbe inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">get TypeSystem <a href="classSVF_1_1PointerAnalysis.html#ae615dd279fbf681e3c15e7209e3adfbe">More...</a><br /></td></tr>
259
+ <tr class="separator:ae615dd279fbf681e3c15e7209e3adfbe inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
260
+ <tr class="memitem:a240219c2dc4f5cc5f85445e18c79b83b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a240219c2dc4f5cc5f85445e18c79b83b">getPAG</a> () const</td></tr>
261
+ <tr class="separator:a240219c2dc4f5cc5f85445e18c79b83b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
262
+ <tr class="memitem:a1a6cee7e690ccb3e53cdc4c3e67b386d inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a1a6cee7e690ccb3e53cdc4c3e67b386d">dumpPts</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptr, const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;pts)</td></tr>
263
+ <tr class="separator:a1a6cee7e690ccb3e53cdc4c3e67b386d inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
264
+ <tr class="memitem:a062f1f2d6d47694caa9ac64a9e68c7b3 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a062f1f2d6d47694caa9ac64a9e68c7b3">printIndCSTargets</a> ()</td></tr>
265
+ <tr class="separator:a062f1f2d6d47694caa9ac64a9e68c7b3 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
266
+ <tr class="memitem:a08399de593c073b6dd848a8d849dad27 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a08399de593c073b6dd848a8d849dad27">dumpAllTypes</a> ()</td></tr>
267
+ <tr class="separator:a08399de593c073b6dd848a8d849dad27 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
268
+ <tr class="memitem:a56368369bc37e37b13f19e5eb1890063 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063">containBlackHoleNode</a> (const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;pts)</td></tr>
269
+ <tr class="memdesc:a56368369bc37e37b13f19e5eb1890063 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine whether a points-to contains a black hole or constant node. <a href="classSVF_1_1PointerAnalysis.html#a56368369bc37e37b13f19e5eb1890063">More...</a><br /></td></tr>
270
+ <tr class="separator:a56368369bc37e37b13f19e5eb1890063 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
271
+ <tr class="memitem:afa7d9f6209904acd7893ae583e28dafd inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#afa7d9f6209904acd7893ae583e28dafd">containConstantNode</a> (const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &amp;pts)</td></tr>
272
+ <tr class="separator:afa7d9f6209904acd7893ae583e28dafd inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
273
+ <tr class="memitem:a45462312a746339fff8b990a093d9a1b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a45462312a746339fff8b990a093d9a1b">isBlkObjOrConstantObj</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptd) const</td></tr>
274
+ <tr class="separator:a45462312a746339fff8b990a093d9a1b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
275
+ <tr class="memitem:a9d3b20c9883d734537fb98b57b5372b9 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a9d3b20c9883d734537fb98b57b5372b9">isNonPointerObj</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> ptd) const</td></tr>
276
+ <tr class="separator:a9d3b20c9883d734537fb98b57b5372b9 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
277
+ <tr class="memitem:ae6ea391ac44dffeb6899bb44323c5361 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361">isHeapMemObj</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id) const</td></tr>
278
+ <tr class="memdesc:ae6ea391ac44dffeb6899bb44323c5361 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether this object is heap or array. <a href="classSVF_1_1PointerAnalysis.html#ae6ea391ac44dffeb6899bb44323c5361">More...</a><br /></td></tr>
279
+ <tr class="separator:ae6ea391ac44dffeb6899bb44323c5361 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
280
+ <tr class="memitem:a89dfeedf8e3e91603a1e9c73e3608a73 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a89dfeedf8e3e91603a1e9c73e3608a73">isArrayMemObj</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id) const</td></tr>
281
+ <tr class="separator:a89dfeedf8e3e91603a1e9c73e3608a73 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
282
+ <tr class="memitem:af90d2ccb01402c5ca9d7a059f345c816 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#af90d2ccb01402c5ca9d7a059f345c816">isFIObjNode</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id) const</td></tr>
283
+ <tr class="separator:af90d2ccb01402c5ca9d7a059f345c816 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
284
+ <tr class="memitem:a9f1c599cb9f6e2ae83e29bb84ef6831c inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a9f1c599cb9f6e2ae83e29bb84ef6831c">getBaseObjVar</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
285
+ <tr class="separator:a9f1c599cb9f6e2ae83e29bb84ef6831c inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
286
+ <tr class="memitem:a68b05bc02c5473c1e0d39ac4f4454bac inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a68b05bc02c5473c1e0d39ac4f4454bac">getFIObjVar</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
287
+ <tr class="separator:a68b05bc02c5473c1e0d39ac4f4454bac inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
288
+ <tr class="memitem:acbbc0934af9bc0145389dc41430c6d8b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#acbbc0934af9bc0145389dc41430c6d8b">getGepObjVar</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id, const <a class="el" href="classSVF_1_1LocationSet.html">LocationSet</a> &amp;ls)</td></tr>
289
+ <tr class="separator:acbbc0934af9bc0145389dc41430c6d8b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
290
+ <tr class="memitem:a5dddd53b4ca9d7cc23d88ed9f3de9fde inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">NodeBS</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a5dddd53b4ca9d7cc23d88ed9f3de9fde">getAllFieldsObjVars</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
291
+ <tr class="separator:a5dddd53b4ca9d7cc23d88ed9f3de9fde inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
292
+ <tr class="memitem:ac5683fe2e24b393ccc5cb6d8bc92cf2b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac5683fe2e24b393ccc5cb6d8bc92cf2b">setObjFieldInsensitive</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id)</td></tr>
293
+ <tr class="separator:ac5683fe2e24b393ccc5cb6d8bc92cf2b inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
294
+ <tr class="memitem:a0f71e4cd0948b294c7d33a690bde7dbe inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0f71e4cd0948b294c7d33a690bde7dbe">isFieldInsensitive</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id) const</td></tr>
295
+ <tr class="separator:a0f71e4cd0948b294c7d33a690bde7dbe inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
296
+ <tr class="memitem:a1ca30dfa42702071b65d363c76d25cbe inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">getIndCallMap</a> ()</td></tr>
297
+ <tr class="memdesc:a1ca30dfa42702071b65d363c76d25cbe inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get callees from an indirect callsite. <a href="classSVF_1_1PointerAnalysis.html#a1ca30dfa42702071b65d363c76d25cbe">More...</a><br /></td></tr>
298
+ <tr class="separator:a1ca30dfa42702071b65d363c76d25cbe inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
299
+ <tr class="memitem:abdacd060691add054839aa183babe095 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#abdacd060691add054839aa183babe095">hasIndCSCallees</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs) const</td></tr>
300
+ <tr class="separator:abdacd060691add054839aa183babe095 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
301
+ <tr class="memitem:ae0efd57376195eacded85d58abee5b46 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae0efd57376195eacded85d58abee5b46">getIndCSCallees</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs) const</td></tr>
302
+ <tr class="separator:ae0efd57376195eacded85d58abee5b46 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
303
+ <tr class="memitem:aafa5df4aa576a144476e547b1da35795 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#aafa5df4aa576a144476e547b1da35795">callGraphSCCDetection</a> ()</td></tr>
304
+ <tr class="memdesc:aafa5df4aa576a144476e547b1da35795 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">CallGraph SCC related methods. <a href="classSVF_1_1PointerAnalysis.html#aafa5df4aa576a144476e547b1da35795">More...</a><br /></td></tr>
305
+ <tr class="separator:aafa5df4aa576a144476e547b1da35795 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
306
+ <tr class="memitem:ae8190ce12fb0c6360953f4b05047fbe8 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">getCallGraphSCCRepNode</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id) const</td></tr>
307
+ <tr class="memdesc:ae8190ce12fb0c6360953f4b05047fbe8 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get SCC rep node of a <a class="el" href="classSVF_1_1SVFG.html">SVFG</a> node. <a href="classSVF_1_1PointerAnalysis.html#ae8190ce12fb0c6360953f4b05047fbe8">More...</a><br /></td></tr>
308
+ <tr class="separator:ae8190ce12fb0c6360953f4b05047fbe8 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
309
+ <tr class="memitem:ae58c2b25494ec51e714c83c6cfd5dd67 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae58c2b25494ec51e714c83c6cfd5dd67">inSameCallGraphSCC</a> (const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *fun1, const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *fun2)</td></tr>
310
+ <tr class="memdesc:ae58c2b25494ec51e714c83c6cfd5dd67 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return TRUE if this edge is inside a CallGraph SCC, i.e., src node and dst node are in the same SCC on the <a class="el" href="classSVF_1_1SVFG.html">SVFG</a>. <a href="classSVF_1_1PointerAnalysis.html#ae58c2b25494ec51e714c83c6cfd5dd67">More...</a><br /></td></tr>
311
+ <tr class="separator:ae58c2b25494ec51e714c83c6cfd5dd67 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
312
+ <tr class="memitem:aa725a0c9426e8615cbc078c88561f66a inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#aa725a0c9426e8615cbc078c88561f66a">isInRecursion</a> (const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> *fun) const</td></tr>
313
+ <tr class="separator:aa725a0c9426e8615cbc078c88561f66a inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
314
+ <tr class="memitem:a108380f6f0b67654bb7c7676686096c8 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">isLocalVarInRecursiveFun</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> id) const</td></tr>
315
+ <tr class="memdesc:a108380f6f0b67654bb7c7676686096c8 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether a local variable is in function recursions. <a href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">More...</a><br /></td></tr>
316
+ <tr class="separator:a108380f6f0b67654bb7c7676686096c8 inherit pub_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
317
+ </table><table class="memberdecls">
318
+ <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
319
+ Static Public Attributes</h2></td></tr>
320
+ <tr><td colspan="2"><div class="groupHeader"></div></td></tr>
321
+ <tr class="memitem:a0d3217f4c3796b58a98add5c92298ad2"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a0d3217f4c3796b58a98add5c92298ad2">timeOfBuildCFLGrammar</a> = 0</td></tr>
322
+ <tr class="memdesc:a0d3217f4c3796b58a98add5c92298ad2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Statistics. <a href="#a0d3217f4c3796b58a98add5c92298ad2">More...</a><br /></td></tr>
323
+ <tr class="separator:a0d3217f4c3796b58a98add5c92298ad2"><td class="memSeparator" colspan="2">&#160;</td></tr>
324
+ <tr class="memitem:ad4d65dd4c3e173d014199ac6b08a5261"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#ad4d65dd4c3e173d014199ac6b08a5261">timeOfNormalizeGrammar</a> = 0</td></tr>
325
+ <tr class="separator:ad4d65dd4c3e173d014199ac6b08a5261"><td class="memSeparator" colspan="2">&#160;</td></tr>
326
+ <tr class="memitem:a9453bf479ccd00bacb3b371fa6383a9c"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a9453bf479ccd00bacb3b371fa6383a9c">timeOfBuildCFLGraph</a> = 0</td></tr>
327
+ <tr class="separator:a9453bf479ccd00bacb3b371fa6383a9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
328
+ <tr class="memitem:abc5502f15583f0546bbc2a678d2f2ed9"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#abc5502f15583f0546bbc2a678d2f2ed9">numOfTerminalEdges</a></td></tr>
329
+ <tr class="separator:abc5502f15583f0546bbc2a678d2f2ed9"><td class="memSeparator" colspan="2">&#160;</td></tr>
330
+ <tr class="memitem:ac3b408acb295e2c319e3542539e6df47"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#ac3b408acb295e2c319e3542539e6df47">numOfTemporaryNonterminalEdges</a></td></tr>
331
+ <tr class="separator:ac3b408acb295e2c319e3542539e6df47"><td class="memSeparator" colspan="2">&#160;</td></tr>
332
+ <tr class="memitem:a4c03b83cb2a3c0c166d96550d6771a1b"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a4c03b83cb2a3c0c166d96550d6771a1b">numOfNonterminalEdges</a></td></tr>
333
+ <tr class="separator:a4c03b83cb2a3c0c166d96550d6771a1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
334
+ <tr class="memitem:a25a593cb2a855a93d3593efba382a58c"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a25a593cb2a855a93d3593efba382a58c">numOfStartEdges</a> = 0</td></tr>
335
+ <tr class="separator:a25a593cb2a855a93d3593efba382a58c"><td class="memSeparator" colspan="2">&#160;</td></tr>
336
+ <tr class="memitem:a88e40af43705550a78837b8589bbf3f8"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a88e40af43705550a78837b8589bbf3f8">timeOfSolving</a> = 0</td></tr>
337
+ <tr class="separator:a88e40af43705550a78837b8589bbf3f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
338
+ <tr class="inherit_header pub_static_attribs_classSVF_1_1PointerAnalysis"><td colspan="2" onclick="javascript:toggleInherit('pub_static_attribs_classSVF_1_1PointerAnalysis')"><img src="closed.png" alt="-"/>&#160;Static Public Attributes inherited from <a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td></tr>
339
+ <tr class="memitem:a7648a0358e2c0798db1c547ec7aa7c64 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a7648a0358e2c0798db1c547ec7aa7c64">aliasTestMayAlias</a> = &quot;MAYALIAS&quot;</td></tr>
340
+ <tr class="separator:a7648a0358e2c0798db1c547ec7aa7c64 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
341
+ <tr class="memitem:a13ce6b930a35877f17bffd4b89e22654 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a13ce6b930a35877f17bffd4b89e22654">aliasTestMayAliasMangled</a> = &quot;_Z8MAYALIASPvS_&quot;</td></tr>
342
+ <tr class="separator:a13ce6b930a35877f17bffd4b89e22654 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
343
+ <tr class="memitem:ac353221cc7aced590dcf3550a24b1570 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac353221cc7aced590dcf3550a24b1570">aliasTestNoAlias</a> = &quot;NOALIAS&quot;</td></tr>
344
+ <tr class="separator:ac353221cc7aced590dcf3550a24b1570 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
345
+ <tr class="memitem:a0e68883e2ee328315af29e59bb2008cd inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0e68883e2ee328315af29e59bb2008cd">aliasTestNoAliasMangled</a> = &quot;_Z7NOALIASPvS_&quot;</td></tr>
346
+ <tr class="separator:a0e68883e2ee328315af29e59bb2008cd inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
347
+ <tr class="memitem:a83b0a51d88fa7aadff6e9267765d07a5 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a83b0a51d88fa7aadff6e9267765d07a5">aliasTestPartialAlias</a> = &quot;PARTIALALIAS&quot;</td></tr>
348
+ <tr class="separator:a83b0a51d88fa7aadff6e9267765d07a5 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
349
+ <tr class="memitem:acbb517523fd30708ed1a93f306cd3545 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#acbb517523fd30708ed1a93f306cd3545">aliasTestPartialAliasMangled</a> = &quot;_Z12PARTIALALIASPvS_&quot;</td></tr>
350
+ <tr class="separator:acbb517523fd30708ed1a93f306cd3545 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
351
+ <tr class="memitem:a7477a4301d548b93958e57df389cbba0 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a7477a4301d548b93958e57df389cbba0">aliasTestMustAlias</a> = &quot;MUSTALIAS&quot;</td></tr>
352
+ <tr class="separator:a7477a4301d548b93958e57df389cbba0 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
353
+ <tr class="memitem:aec884481726cfaf19c4ab8ec8d9195b7 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#aec884481726cfaf19c4ab8ec8d9195b7">aliasTestMustAliasMangled</a> = &quot;_Z9MUSTALIASPvS_&quot;</td></tr>
354
+ <tr class="separator:aec884481726cfaf19c4ab8ec8d9195b7 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
355
+ <tr class="memitem:a32c6f12ce8bc0554dbb6aafa36f9a235 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a32c6f12ce8bc0554dbb6aafa36f9a235">aliasTestFailMayAlias</a> = &quot;EXPECTEDFAIL_MAYALIAS&quot;</td></tr>
356
+ <tr class="separator:a32c6f12ce8bc0554dbb6aafa36f9a235 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
357
+ <tr class="memitem:a651cc82379c2d18cc2f69f25b2ae08db inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a651cc82379c2d18cc2f69f25b2ae08db">aliasTestFailMayAliasMangled</a> = &quot;_Z21EXPECTEDFAIL_MAYALIASPvS_&quot;</td></tr>
358
+ <tr class="separator:a651cc82379c2d18cc2f69f25b2ae08db inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
359
+ <tr class="memitem:a18347e41bc66b16e3f42c7c52811ad42 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a18347e41bc66b16e3f42c7c52811ad42">aliasTestFailNoAlias</a> = &quot;EXPECTEDFAIL_NOALIAS&quot;</td></tr>
360
+ <tr class="separator:a18347e41bc66b16e3f42c7c52811ad42 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
361
+ <tr class="memitem:aefd4e9ea66da5ad84a45efead823eb22 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#aefd4e9ea66da5ad84a45efead823eb22">aliasTestFailNoAliasMangled</a> = &quot;_Z20EXPECTEDFAIL_NOALIASPvS_&quot;</td></tr>
362
+ <tr class="separator:aefd4e9ea66da5ad84a45efead823eb22 inherit pub_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
363
+ </table><table class="memberdecls">
364
+ <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
365
+ Protected Attributes</h2></td></tr>
366
+ <tr class="memitem:a9e6cbab31612da4a1f8f660d1fabc4c0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a9e6cbab31612da4a1f8f660d1fabc4c0">svfir</a></td></tr>
367
+ <tr class="separator:a9e6cbab31612da4a1f8f660d1fabc4c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
368
+ <tr class="memitem:a8101683062b9a71c0b2309cbdfb7b26f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a></td></tr>
369
+ <tr class="separator:a8101683062b9a71c0b2309cbdfb7b26f"><td class="memSeparator" colspan="2">&#160;</td></tr>
370
+ <tr class="memitem:aef3da4ce970597586757cafd2a435c1f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a></td></tr>
371
+ <tr class="separator:aef3da4ce970597586757cafd2a435c1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
372
+ <tr class="memitem:af7b0e90b8f8998ab6cf4e05155c7a503"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGrammar.html">CFLGrammar</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#af7b0e90b8f8998ab6cf4e05155c7a503">grammar</a></td></tr>
373
+ <tr class="separator:af7b0e90b8f8998ab6cf4e05155c7a503"><td class="memSeparator" colspan="2">&#160;</td></tr>
374
+ <tr class="memitem:a34c3a3eec2d7d34ef78b5031d8844b17"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLSolver.html">CFLSolver</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html#a34c3a3eec2d7d34ef78b5031d8844b17">solver</a></td></tr>
375
+ <tr class="separator:a34c3a3eec2d7d34ef78b5031d8844b17"><td class="memSeparator" colspan="2">&#160;</td></tr>
376
+ <tr class="inherit_header pro_attribs_classSVF_1_1PointerAnalysis"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classSVF_1_1PointerAnalysis')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td></tr>
377
+ <tr class="memitem:a7e8b3f6843e5ea75fd189162d2cd60a5 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFModule.html">SVFModule</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">svfMod</a></td></tr>
378
+ <tr class="memdesc:a7e8b3f6843e5ea75fd189162d2cd60a5 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Module. <a href="classSVF_1_1PointerAnalysis.html#a7e8b3f6843e5ea75fd189162d2cd60a5">More...</a><br /></td></tr>
379
+ <tr class="separator:a7e8b3f6843e5ea75fd189162d2cd60a5 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
380
+ <tr class="memitem:ade83738ac754d5ffc2a3b497b600cad4 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">ptaTy</a></td></tr>
381
+ <tr class="memdesc:ade83738ac754d5ffc2a3b497b600cad4 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer analysis Type. <a href="classSVF_1_1PointerAnalysis.html#ade83738ac754d5ffc2a3b497b600cad4">More...</a><br /></td></tr>
382
+ <tr class="separator:ade83738ac754d5ffc2a3b497b600cad4 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
383
+ <tr class="memitem:a5d3c3094e263bf16a4f312a118c1bd36 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">PTAImplTy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">ptaImplTy</a></td></tr>
384
+ <tr class="memdesc:a5d3c3094e263bf16a4f312a118c1bd36 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">PTA implementation type. <a href="classSVF_1_1PointerAnalysis.html#a5d3c3094e263bf16a4f312a118c1bd36">More...</a><br /></td></tr>
385
+ <tr class="separator:a5d3c3094e263bf16a4f312a118c1bd36 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
386
+ <tr class="memitem:a5ec3d9bf1fc81346c9df29638daedc0f inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTAStat.html">PTAStat</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">stat</a></td></tr>
387
+ <tr class="memdesc:a5ec3d9bf1fc81346c9df29638daedc0f inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Statistics. <a href="classSVF_1_1PointerAnalysis.html#a5ec3d9bf1fc81346c9df29638daedc0f">More...</a><br /></td></tr>
388
+ <tr class="separator:a5ec3d9bf1fc81346c9df29638daedc0f inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
389
+ <tr class="memitem:ad47b39252e02c68dfb466d4f42dc7ebe inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">ptaCallGraph</a></td></tr>
390
+ <tr class="memdesc:ad47b39252e02c68dfb466d4f42dc7ebe inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call graph used for pointer analysis. <a href="classSVF_1_1PointerAnalysis.html#ad47b39252e02c68dfb466d4f42dc7ebe">More...</a><br /></td></tr>
391
+ <tr class="separator:ad47b39252e02c68dfb466d4f42dc7ebe inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
392
+ <tr class="memitem:ae3b651799345d9d92b6d736dafb03f63 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">CallGraphSCC</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">callGraphSCC</a></td></tr>
393
+ <tr class="memdesc:ae3b651799345d9d92b6d736dafb03f63 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">SCC for CallGraph. <a href="classSVF_1_1PointerAnalysis.html#ae3b651799345d9d92b6d736dafb03f63">More...</a><br /></td></tr>
394
+ <tr class="separator:ae3b651799345d9d92b6d736dafb03f63 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
395
+ <tr class="memitem:a962cc91e4d68b25ce201072c384d8fc2 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1ICFG.html">ICFG</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">icfg</a></td></tr>
396
+ <tr class="memdesc:a962cc91e4d68b25ce201072c384d8fc2 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interprocedural control-flow graph. <a href="classSVF_1_1PointerAnalysis.html#a962cc91e4d68b25ce201072c384d8fc2">More...</a><br /></td></tr>
397
+ <tr class="separator:a962cc91e4d68b25ce201072c384d8fc2 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
398
+ <tr class="memitem:a0c0fce2539bb9ec6c824f6584a0f6b33 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CommonCHGraph.html">CommonCHGraph</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">chgraph</a></td></tr>
399
+ <tr class="memdesc:a0c0fce2539bb9ec6c824f6584a0f6b33 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classSVF_1_1CHGraph.html">CHGraph</a>. <a href="classSVF_1_1PointerAnalysis.html#a0c0fce2539bb9ec6c824f6584a0f6b33">More...</a><br /></td></tr>
400
+ <tr class="separator:a0c0fce2539bb9ec6c824f6584a0f6b33 inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
401
+ <tr class="memitem:a219baed92b811d5519b056ad393fceed inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">TypeSystem *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">typeSystem</a></td></tr>
402
+ <tr class="memdesc:a219baed92b811d5519b056ad393fceed inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">TypeSystem. <a href="classSVF_1_1PointerAnalysis.html#a219baed92b811d5519b056ad393fceed">More...</a><br /></td></tr>
403
+ <tr class="separator:a219baed92b811d5519b056ad393fceed inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
404
+ <tr class="memitem:a3550ea3f087ec557a6fe076bc443b05d inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">print_stat</a></td></tr>
405
+ <tr class="memdesc:a3550ea3f087ec557a6fe076bc443b05d inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">User input flags. <a href="classSVF_1_1PointerAnalysis.html#a3550ea3f087ec557a6fe076bc443b05d">More...</a><br /></td></tr>
406
+ <tr class="separator:a3550ea3f087ec557a6fe076bc443b05d inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
407
+ <tr class="memitem:aac1a133d478bd14c74309d9c4eaf0c8e inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">alias_validation</a></td></tr>
408
+ <tr class="memdesc:aac1a133d478bd14c74309d9c4eaf0c8e inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag for validating points-to/alias results. <a href="classSVF_1_1PointerAnalysis.html#aac1a133d478bd14c74309d9c4eaf0c8e">More...</a><br /></td></tr>
409
+ <tr class="separator:aac1a133d478bd14c74309d9c4eaf0c8e inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
410
+ <tr class="memitem:afc320fbf269404fe128e69c98e6f9cac inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac">OnTheFlyIterBudgetForStat</a></td></tr>
411
+ <tr class="memdesc:afc320fbf269404fe128e69c98e6f9cac inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag for iteration budget for on-the-fly statistics. <a href="classSVF_1_1PointerAnalysis.html#afc320fbf269404fe128e69c98e6f9cac">More...</a><br /></td></tr>
412
+ <tr class="separator:afc320fbf269404fe128e69c98e6f9cac inherit pro_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
413
+ </table><table class="memberdecls">
414
+ <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
415
+ Additional Inherited Members</h2></td></tr>
416
+ <tr class="inherit_header pub_types_classSVF_1_1BVDataPTAImpl"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classSVF_1_1BVDataPTAImpl')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td></tr>
417
+ <tr class="memitem:ad76328a8543b02784992afc2d5501d8a inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ad76328a8543b02784992afc2d5501d8a">PTBackingType</a> { <a class="el" href="classSVF_1_1BVDataPTAImpl.html#ad76328a8543b02784992afc2d5501d8aa1cfb236b5127b660373c36b77a79ab5e">Mutable</a>,
418
+ <a class="el" href="classSVF_1_1BVDataPTAImpl.html#ad76328a8543b02784992afc2d5501d8aaeda0ee502cc42a07c64c6f09296b6640">Persistent</a>
419
+ }<tr class="memdesc:ad76328a8543b02784992afc2d5501d8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">How the <a class="el" href="classSVF_1_1PTData.html">PTData</a> used is implemented. <a href="classSVF_1_1BVDataPTAImpl.html#ad76328a8543b02784992afc2d5501d8a">More...</a><br /></td></tr>
420
+ </td></tr>
421
+ <tr class="separator:ad76328a8543b02784992afc2d5501d8a inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
422
+ <tr class="memitem:acfdb43f20bbcababc928cc4df93a8483 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1PTData.html">PTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#acfdb43f20bbcababc928cc4df93a8483">PTDataTy</a></td></tr>
423
+ <tr class="separator:acfdb43f20bbcababc928cc4df93a8483 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
424
+ <tr class="memitem:abd8bb73e9beac5e39667091b1e211bd3 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1DiffPTData.html">DiffPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#abd8bb73e9beac5e39667091b1e211bd3">DiffPTDataTy</a></td></tr>
425
+ <tr class="separator:abd8bb73e9beac5e39667091b1e211bd3 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
426
+ <tr class="memitem:a5c2288519153467142e74c8dd4e77180 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1DFPTData.html">DFPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a5c2288519153467142e74c8dd4e77180">DFPTDataTy</a></td></tr>
427
+ <tr class="separator:a5c2288519153467142e74c8dd4e77180 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
428
+ <tr class="memitem:a8bc5e039958280b18e5a00a56e0bdc94 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1VersionedPTData.html">VersionedPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a>, <a class="el" href="namespaceSVF.html#a32489632f53dce062ca2e8bff42c65cf">VersionedVar</a>, <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>&lt; <a class="el" href="namespaceSVF.html#a32489632f53dce062ca2e8bff42c65cf">VersionedVar</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a8bc5e039958280b18e5a00a56e0bdc94">VersionedPTDataTy</a></td></tr>
429
+ <tr class="separator:a8bc5e039958280b18e5a00a56e0bdc94 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
430
+ <tr class="memitem:a533384bd2eb8a1589ba8b7695c759073 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1MutablePTData.html">MutablePTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a533384bd2eb8a1589ba8b7695c759073">MutPTDataTy</a></td></tr>
431
+ <tr class="separator:a533384bd2eb8a1589ba8b7695c759073 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
432
+ <tr class="memitem:ac4e74e6dfee9d08198e0f7e3d76a0646 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1MutableDiffPTData.html">MutableDiffPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ac4e74e6dfee9d08198e0f7e3d76a0646">MutDiffPTDataTy</a></td></tr>
433
+ <tr class="separator:ac4e74e6dfee9d08198e0f7e3d76a0646 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
434
+ <tr class="memitem:ac130bf326911b8e5396f57daa78566e7 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1MutableDFPTData.html">MutableDFPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ac130bf326911b8e5396f57daa78566e7">MutDFPTDataTy</a></td></tr>
435
+ <tr class="separator:ac130bf326911b8e5396f57daa78566e7 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
436
+ <tr class="memitem:a639446e6bf9712afa439d089b94aefae inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1MutableIncDFPTData.html">MutableIncDFPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a639446e6bf9712afa439d089b94aefae">MutIncDFPTDataTy</a></td></tr>
437
+ <tr class="separator:a639446e6bf9712afa439d089b94aefae inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
438
+ <tr class="memitem:a7fde3e9b189e988cd0a24d567b136e13 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1MutableVersionedPTData.html">MutableVersionedPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a>, <a class="el" href="namespaceSVF.html#a32489632f53dce062ca2e8bff42c65cf">VersionedVar</a>, <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>&lt; <a class="el" href="namespaceSVF.html#a32489632f53dce062ca2e8bff42c65cf">VersionedVar</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a7fde3e9b189e988cd0a24d567b136e13">MutVersionedPTDataTy</a></td></tr>
439
+ <tr class="separator:a7fde3e9b189e988cd0a24d567b136e13 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
440
+ <tr class="memitem:ae3ba6392560e5c0978335151c3373fd1 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1PersistentPTData.html">PersistentPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ae3ba6392560e5c0978335151c3373fd1">PersPTDataTy</a></td></tr>
441
+ <tr class="separator:ae3ba6392560e5c0978335151c3373fd1 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
442
+ <tr class="memitem:a1342c0953d7bb9bf0f6f676bd564350e inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1PersistentDiffPTData.html">PersistentDiffPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a1342c0953d7bb9bf0f6f676bd564350e">PersDiffPTDataTy</a></td></tr>
443
+ <tr class="separator:a1342c0953d7bb9bf0f6f676bd564350e inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
444
+ <tr class="memitem:a7087f9d5a1a5b3576173bd6a7fd72163 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1PersistentDFPTData.html">PersistentDFPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a7087f9d5a1a5b3576173bd6a7fd72163">PersDFPTDataTy</a></td></tr>
445
+ <tr class="separator:a7087f9d5a1a5b3576173bd6a7fd72163 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
446
+ <tr class="memitem:a29172b3e8b3891a5d946a493cfcde2e7 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1PersistentIncDFPTData.html">PersistentIncDFPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a29172b3e8b3891a5d946a493cfcde2e7">PersIncDFPTDataTy</a></td></tr>
447
+ <tr class="separator:a29172b3e8b3891a5d946a493cfcde2e7 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
448
+ <tr class="memitem:ae028ae29bdc799f35777b82a39faf5e8 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1PersistentVersionedPTData.html">PersistentVersionedPTData</a>&lt; <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a>, <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a>, <a class="el" href="namespaceSVF.html#a32489632f53dce062ca2e8bff42c65cf">VersionedVar</a>, <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>&lt; <a class="el" href="namespaceSVF.html#a32489632f53dce062ca2e8bff42c65cf">VersionedVar</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ae028ae29bdc799f35777b82a39faf5e8">PersVersionedPTDataTy</a></td></tr>
449
+ <tr class="separator:ae028ae29bdc799f35777b82a39faf5e8 inherit pub_types_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
450
+ <tr class="inherit_header pub_types_classSVF_1_1PointerAnalysis"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classSVF_1_1PointerAnalysis')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td></tr>
451
+ <tr class="memitem:a0b182ac680cce0547dbe7714c870ca85 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PTATY</a> { <br />
452
+ &#160;&#160;<a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a9a25374fb6d2218c6c59de0482548f49">Andersen_BASE</a>,
453
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab68615784a520e39856be5237930e6a6">Andersen_WPA</a>,
454
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a6c06b12c95a4aa57edc6bef57514a7e1">AndersenSCD_WPA</a>,
455
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85accfa4ed42d3a3ac5e4abc403e738427b">AndersenSFR_WPA</a>,
456
+ <br />
457
+ &#160;&#160;<a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abf2f61ee9a5f6228db6587a8182ec9f2">AndersenWaveDiff_WPA</a>,
458
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad24ef5326c26db858c73432aa7e67a0a">Steensgaard_WPA</a>,
459
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ac9e931f254fa3471f5f5337cbca1de09">CSCallString_WPA</a>,
460
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adf8fe4349f84779601a0b41659ca8e27">CSSummary_WPA</a>,
461
+ <br />
462
+ &#160;&#160;<a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a62281bc39fea50a88e55edf605620322">FSDATAFLOW_WPA</a>,
463
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ad6ccf1ce66083278349c5c3111172d78">FSSPARSE_WPA</a>,
464
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a412254a7738029bf3ee96f5c15a6bec9">VFS_WPA</a>,
465
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a43837619e78e03dc95ec6e88959faf82">FSCS_WPA</a>,
466
+ <br />
467
+ &#160;&#160;<a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a164c6de3baace1c63db75a228a5816bb">CFLFICI_WPA</a>,
468
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85afbe666887476ce8620aca97a159921bc">CFLFSCI_WPA</a>,
469
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85ab87dcf990c05d31f91b9bfdfcfb54b7d">CFLFSCS_WPA</a>,
470
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acc2e7cbdd04a614a3b6189d2f01042f3">TypeCPP_WPA</a>,
471
+ <br />
472
+ &#160;&#160;<a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85abe1d8104c77bfe4bbc201a64410c7f61">FieldS_DDA</a>,
473
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85aa43c83e2f0df003c158d4b1325b50b18">FlowS_DDA</a>,
474
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85acaf0c0774025005647deaf59582b9d58">PathS_DDA</a>,
475
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85a0ab6564c48897595c9d23382a026e0a8">Cxt_DDA</a>,
476
+ <br />
477
+ &#160;&#160;<a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85adb3d4cbd8c38c1c498bc51198626a790">Default_PTA</a>
478
+ <br />
479
+ }<tr class="memdesc:a0b182ac680cce0547dbe7714c870ca85"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer analysis type list. <a href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">More...</a><br /></td></tr>
480
+ </td></tr>
481
+ <tr class="separator:a0b182ac680cce0547dbe7714c870ca85 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
482
+ <tr class="memitem:ac0c0855918cb2cdc3d8ebc175acfbd4d inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">PTAImplTy</a> { <a class="el" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da66b132e5ab8c8746eb22e58d199b4c2a">BaseImpl</a>,
483
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da84705167ea3a7162ecb9470a8a77b5d8">BVDataImpl</a>,
484
+ <a class="el" href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4da88380bb05f60a1349e192364ba6c5292">CondImpl</a>
485
+ }<tr class="memdesc:ac0c0855918cb2cdc3d8ebc175acfbd4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation type: <a class="el" href="classSVF_1_1BVDataPTAImpl.html">BVDataPTAImpl</a> or <a class="el" href="classSVF_1_1CondPTAImpl.html">CondPTAImpl</a>. <a href="classSVF_1_1PointerAnalysis.html#ac0c0855918cb2cdc3d8ebc175acfbd4d">More...</a><br /></td></tr>
486
+ </td></tr>
487
+ <tr class="separator:ac0c0855918cb2cdc3d8ebc175acfbd4d inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
488
+ <tr class="memitem:ac87eb408daafd5d556ecd8633f7d4f1f inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">typedef llvm::AliasAnalysis&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac87eb408daafd5d556ecd8633f7d4f1f">AliasAnalysis</a></td></tr>
489
+ <tr class="memdesc:ac87eb408daafd5d556ecd8633f7d4f1f inherit pub_types_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indirect call edges type, map a callsite to a set of callees. <a href="classSVF_1_1PointerAnalysis.html#ac87eb408daafd5d556ecd8633f7d4f1f">More...</a><br /></td></tr>
490
+ <tr class="separator:ac87eb408daafd5d556ecd8633f7d4f1f inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
491
+ <tr class="memitem:a5583b5fc0db461a0138b1f2f1c9a89a0 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>&lt; const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a5583b5fc0db461a0138b1f2f1c9a89a0">CallSiteSet</a></td></tr>
492
+ <tr class="separator:a5583b5fc0db461a0138b1f2f1c9a89a0 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
493
+ <tr class="memitem:ad95c842964e6ca46e51fb763fefec585 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1SVFIR.html#a51bf00bfd1d32ea8a4a280cf99725d7d">SVFIR::CallSiteToFunPtrMap</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a></td></tr>
494
+ <tr class="separator:ad95c842964e6ca46e51fb763fefec585 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
495
+ <tr class="memitem:ac1422cd8b449fdb4a1f7c539364e4c41 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>&lt; const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a></td></tr>
496
+ <tr class="separator:ac1422cd8b449fdb4a1f7c539364e4c41 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
497
+ <tr class="memitem:a35bd5f0fb2c146199e9f1aa6a19b4062 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#aedf0d6718ca176e0b9e17ab4b30729c6">OrderedMap</a>&lt; const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *, <a class="el" href="classSVF_1_1PointerAnalysis.html#ac1422cd8b449fdb4a1f7c539364e4c41">FunctionSet</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a></td></tr>
498
+ <tr class="separator:a35bd5f0fb2c146199e9f1aa6a19b4062 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
499
+ <tr class="memitem:ac4ad73782f42f90ad7ac9c66edb27c69 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1SCCDetection.html">SCCDetection</a>&lt; <a class="el" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">CallGraphSCC</a></td></tr>
500
+ <tr class="separator:ac4ad73782f42f90ad7ac9c66edb27c69 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
501
+ <tr class="memitem:af46f4b99fc2d5061c9266a7f45aafaca inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>&lt; const <a class="el" href="namespaceSVF.html#a67f3f86344f028cacfbeb08caaf7bb0f">GlobalValue</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#af46f4b99fc2d5061c9266a7f45aafaca">VTableSet</a></td></tr>
502
+ <tr class="separator:af46f4b99fc2d5061c9266a7f45aafaca inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
503
+ <tr class="memitem:aa7f15c74eb438be78fcc028534477478 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>&lt; const <a class="el" href="classSVF_1_1SVFFunction.html">SVFFunction</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#aa7f15c74eb438be78fcc028534477478">VFunSet</a></td></tr>
504
+ <tr class="separator:aa7f15c74eb438be78fcc028534477478 inherit pub_types_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
505
+ <tr class="inherit_header pub_static_methods_classSVF_1_1BVDataPTAImpl"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classSVF_1_1BVDataPTAImpl')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td></tr>
506
+ <tr class="memitem:a6ba68138c10d1fbe5be6346c8dfeca74 inherit pub_static_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a6ba68138c10d1fbe5be6346c8dfeca74">classof</a> (const <a class="el" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a> *pta)</td></tr>
507
+ <tr class="separator:a6ba68138c10d1fbe5be6346c8dfeca74 inherit pub_static_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
508
+ <tr class="inherit_header pro_methods_classSVF_1_1BVDataPTAImpl"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classSVF_1_1BVDataPTAImpl')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classSVF_1_1BVDataPTAImpl.html">SVF::BVDataPTAImpl</a></td></tr>
509
+ <tr class="memitem:ae94cea78b71fb75837ee2a17b5ed0e81 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#acfdb43f20bbcababc928cc4df93a8483">PTDataTy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ae94cea78b71fb75837ee2a17b5ed0e81">getPTDataTy</a> () const</td></tr>
510
+ <tr class="memdesc:ae94cea78b71fb75837ee2a17b5ed0e81 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get points-to data structure. <a href="classSVF_1_1BVDataPTAImpl.html#ae94cea78b71fb75837ee2a17b5ed0e81">More...</a><br /></td></tr>
511
+ <tr class="separator:ae94cea78b71fb75837ee2a17b5ed0e81 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
512
+ <tr class="memitem:a57ff2bf45ede7a730a8adaba8e61179d inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a57ff2bf45ede7a730a8adaba8e61179d">finalize</a> ()</td></tr>
513
+ <tr class="memdesc:a57ff2bf45ede7a730a8adaba8e61179d inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finalization of pointer analysis, and normalize points-to information to Bit Vector representation. <a href="classSVF_1_1BVDataPTAImpl.html#a57ff2bf45ede7a730a8adaba8e61179d">More...</a><br /></td></tr>
514
+ <tr class="separator:a57ff2bf45ede7a730a8adaba8e61179d inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
515
+ <tr class="memitem:aa534e475fa34fa322c567bc376a3da70 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#aa534e475fa34fa322c567bc376a3da70">updateCallGraph</a> (const <a class="el" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a> &amp;)</td></tr>
516
+ <tr class="memdesc:aa534e475fa34fa322c567bc376a3da70 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update callgraph. This should be implemented by its subclass. <a href="classSVF_1_1BVDataPTAImpl.html#aa534e475fa34fa322c567bc376a3da70">More...</a><br /></td></tr>
517
+ <tr class="separator:aa534e475fa34fa322c567bc376a3da70 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
518
+ <tr class="memitem:ab9c0bb439f98ae11dd178148109697ab inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#abd8bb73e9beac5e39667091b1e211bd3">DiffPTDataTy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ab9c0bb439f98ae11dd178148109697ab">getDiffPTDataTy</a> () const</td></tr>
519
+ <tr class="separator:ab9c0bb439f98ae11dd178148109697ab inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
520
+ <tr class="memitem:a642613e98982259183d3f34a97f05502 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a5c2288519153467142e74c8dd4e77180">DFPTDataTy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a642613e98982259183d3f34a97f05502">getDFPTDataTy</a> () const</td></tr>
521
+ <tr class="separator:a642613e98982259183d3f34a97f05502 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
522
+ <tr class="memitem:acbb979edee9427efa2a7c0dbd881c483 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#ac130bf326911b8e5396f57daa78566e7">MutDFPTDataTy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#acbb979edee9427efa2a7c0dbd881c483">getMutDFPTDataTy</a> () const</td></tr>
523
+ <tr class="separator:acbb979edee9427efa2a7c0dbd881c483 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
524
+ <tr class="memitem:a4859864a4c72d5e04c10305e4579e8ee inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a8bc5e039958280b18e5a00a56e0bdc94">VersionedPTDataTy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a4859864a4c72d5e04c10305e4579e8ee">getVersionedPTDataTy</a> () const</td></tr>
525
+ <tr class="separator:a4859864a4c72d5e04c10305e4579e8ee inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
526
+ <tr class="memitem:a9830d4676fd424b633f8e4d918734296 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a9830d4676fd424b633f8e4d918734296">onTheFlyCallGraphSolve</a> (const <a class="el" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a> &amp;callsites, <a class="el" href="classSVF_1_1PointerAnalysis.html#a35bd5f0fb2c146199e9f1aa6a19b4062">CallEdgeMap</a> &amp;newEdges)</td></tr>
527
+ <tr class="memdesc:a9830d4676fd424b633f8e4d918734296 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="mdescLeft">&#160;</td><td class="mdescRight">On the fly call graph construction. <a href="classSVF_1_1BVDataPTAImpl.html#a9830d4676fd424b633f8e4d918734296">More...</a><br /></td></tr>
528
+ <tr class="separator:a9830d4676fd424b633f8e4d918734296 inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
529
+ <tr class="memitem:a2026cffd7043208333083ed1a6603e7b inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1BVDataPTAImpl.html#a2026cffd7043208333083ed1a6603e7b">normalizePointsTo</a> ()</td></tr>
530
+ <tr class="separator:a2026cffd7043208333083ed1a6603e7b inherit pro_methods_classSVF_1_1BVDataPTAImpl"><td class="memSeparator" colspan="2">&#160;</td></tr>
531
+ <tr class="inherit_header pro_methods_classSVF_1_1PointerAnalysis"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classSVF_1_1PointerAnalysis')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td></tr>
532
+ <tr class="memitem:a9d3e7753643166465b0d647a75bc145a inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1PointerAnalysis.html#ad95c842964e6ca46e51fb763fefec585">CallSiteToFunPtrMap</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a">getIndirectCallsites</a> () const</td></tr>
533
+ <tr class="memdesc:a9d3e7753643166465b0d647a75bc145a inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return all indirect callsites. <a href="classSVF_1_1PointerAnalysis.html#a9d3e7753643166465b0d647a75bc145a">More...</a><br /></td></tr>
534
+ <tr class="separator:a9d3e7753643166465b0d647a75bc145a inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
535
+ <tr class="memitem:adbceaf90526e44192c2fa4aac5468f5f inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#adbceaf90526e44192c2fa4aac5468f5f">getFunPtr</a> (const <a class="el" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a> *cs) const</td></tr>
536
+ <tr class="memdesc:adbceaf90526e44192c2fa4aac5468f5f inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return function pointer PAGNode at a callsite cs. <a href="classSVF_1_1PointerAnalysis.html#adbceaf90526e44192c2fa4aac5468f5f">More...</a><br /></td></tr>
537
+ <tr class="separator:adbceaf90526e44192c2fa4aac5468f5f inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
538
+ <tr class="memitem:a73fb8e595473e0c7df1dd0de4968ad13 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a73fb8e595473e0c7df1dd0de4968ad13">resetObjFieldSensitive</a> ()</td></tr>
539
+ <tr class="memdesc:a73fb8e595473e0c7df1dd0de4968ad13 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset all object node as field-sensitive. <a href="classSVF_1_1PointerAnalysis.html#a73fb8e595473e0c7df1dd0de4968ad13">More...</a><br /></td></tr>
540
+ <tr class="separator:a73fb8e595473e0c7df1dd0de4968ad13 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
541
+ <tr class="memitem:a0454332c89e60729956bb7d69a1a24df inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0454332c89e60729956bb7d69a1a24df">validateTests</a> ()</td></tr>
542
+ <tr class="memdesc:a0454332c89e60729956bb7d69a1a24df inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight">Alias check functions to verify correctness of pointer analysis. <a href="classSVF_1_1PointerAnalysis.html#a0454332c89e60729956bb7d69a1a24df">More...</a><br /></td></tr>
543
+ <tr class="separator:a0454332c89e60729956bb7d69a1a24df inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
544
+ <tr class="memitem:a7accf4e4db4001716e53d98ce5217ac8 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#a7accf4e4db4001716e53d98ce5217ac8">validateSuccessTests</a> (<a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> fun)</td></tr>
545
+ <tr class="separator:a7accf4e4db4001716e53d98ce5217ac8 inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
546
+ <tr class="memitem:ab982e6bbd99a2f9a0a3abbebeeb00dcc inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#ab982e6bbd99a2f9a0a3abbebeeb00dcc">validateExpectedFailureTests</a> (<a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> fun)</td></tr>
547
+ <tr class="separator:ab982e6bbd99a2f9a0a3abbebeeb00dcc inherit pro_methods_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
548
+ <tr class="inherit_header pro_static_attribs_classSVF_1_1PointerAnalysis"><td colspan="2" onclick="javascript:toggleInherit('pro_static_attribs_classSVF_1_1PointerAnalysis')"><img src="closed.png" alt="-"/>&#160;Static Protected Attributes inherited from <a class="el" href="classSVF_1_1PointerAnalysis.html">SVF::PointerAnalysis</a></td></tr>
549
+ <tr class="memitem:adc7f5c71efb9cd1bec4f5ca9127654c3 inherit pro_static_attribs_classSVF_1_1PointerAnalysis"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a> = nullptr</td></tr>
550
+ <tr class="memdesc:adc7f5c71efb9cd1bec4f5ca9127654c3 inherit pro_static_attribs_classSVF_1_1PointerAnalysis"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a>. <a href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">More...</a><br /></td></tr>
551
+ <tr class="separator:adc7f5c71efb9cd1bec4f5ca9127654c3 inherit pro_static_attribs_classSVF_1_1PointerAnalysis"><td class="memSeparator" colspan="2">&#160;</td></tr>
552
+ </table>
553
+ <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
554
+ <div class="textblock"><p>CFL Client Base Class. </p>
555
+
556
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00049">49</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
557
+ </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
558
+ <a id="a59c71b0eada5c763ce776f3618d08dd8"></a>
559
+ <h2 class="memtitle"><span class="permalink"><a href="#a59c71b0eada5c763ce776f3618d08dd8">&#9670;&nbsp;</a></span>CFLBase()</h2>
560
+
561
+ <div class="memitem">
562
+ <div class="memproto">
563
+ <table class="mlabels">
564
+ <tr>
565
+ <td class="mlabels-left">
566
+ <table class="memname">
567
+ <tr>
568
+ <td class="memname">SVF::CFLBase::CFLBase </td>
569
+ <td>(</td>
570
+ <td class="paramtype"><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> *&#160;</td>
571
+ <td class="paramname"><em>ir</em>, </td>
572
+ </tr>
573
+ <tr>
574
+ <td class="paramkey"></td>
575
+ <td></td>
576
+ <td class="paramtype"><a class="el" href="classSVF_1_1PointerAnalysis.html#a0b182ac680cce0547dbe7714c870ca85">PointerAnalysis::PTATY</a>&#160;</td>
577
+ <td class="paramname"><em>pty</em>&#160;</td>
578
+ </tr>
579
+ <tr>
580
+ <td></td>
581
+ <td>)</td>
582
+ <td></td><td></td>
583
+ </tr>
584
+ </table>
585
+ </td>
586
+ <td class="mlabels-right">
587
+ <span class="mlabels"><span class="mlabel">inline</span></span> </td>
588
+ </tr>
589
+ </table>
590
+ </div><div class="memdoc">
591
+
592
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00053">53</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
593
+ <div class="fragment"><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; : <a class="code" href="classSVF_1_1BVDataPTAImpl.html#ab0e1242aadfe1e16a2bd1445658a5476">BVDataPTAImpl</a>(ir, pty), <a class="code" href="classSVF_1_1CFLBase.html#a9e6cbab31612da4a1f8f660d1fabc4c0">svfir</a>(ir), <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a>(<span class="keyword">nullptr</span>), <a class="code" href="classSVF_1_1CFLBase.html#af7b0e90b8f8998ab6cf4e05155c7a503">grammar</a>(<span class="keyword">nullptr</span>), <a class="code" href="classSVF_1_1CFLBase.html#a34c3a3eec2d7d34ef78b5031d8844b17">solver</a>(<span class="keyword">nullptr</span>)</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }</div><div class="ttc" id="classSVF_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#l00101">CFLBase.h:101</a></div></div>
594
+ <div class="ttc" id="classSVF_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#l00102">CFLBase.h:102</a></div></div>
595
+ <div class="ttc" id="classSVF_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#l00104">CFLBase.h:104</a></div></div>
596
+ <div class="ttc" id="classSVF_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#l00105">CFLBase.h:105</a></div></div>
597
+ <div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_ab0e1242aadfe1e16a2bd1445658a5476"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#ab0e1242aadfe1e16a2bd1445658a5476">SVF::BVDataPTAImpl::BVDataPTAImpl</a></div><div class="ttdeci">BVDataPTAImpl(SVFIR *pag, PointerAnalysis::PTATY type, bool alias_check=true)</div><div class="ttdoc">Constructor. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysisImpl_8cpp_source.html#l00048">PointerAnalysisImpl.cpp:48</a></div></div>
598
+ </div><!-- fragment -->
599
+ </div>
600
+ </div>
601
+ <a id="a9bcd55546fc9ec1fbbac2b257ffa3243"></a>
602
+ <h2 class="memtitle"><span class="permalink"><a href="#a9bcd55546fc9ec1fbbac2b257ffa3243">&#9670;&nbsp;</a></span>~CFLBase()</h2>
603
+
604
+ <div class="memitem">
605
+ <div class="memproto">
606
+ <table class="mlabels">
607
+ <tr>
608
+ <td class="mlabels-left">
609
+ <table class="memname">
610
+ <tr>
611
+ <td class="memname">virtual SVF::CFLBase::~CFLBase </td>
612
+ <td>(</td>
613
+ <td class="paramname"></td><td>)</td>
614
+ <td></td>
615
+ </tr>
616
+ </table>
617
+ </td>
618
+ <td class="mlabels-right">
619
+ <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
620
+ </tr>
621
+ </table>
622
+ </div><div class="memdoc">
623
+
624
+ <p>Destructor. </p>
625
+
626
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00058">58</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
627
+ <div class="fragment"><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; {</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">delete</span> <a class="code" href="classSVF_1_1CFLBase.html#a34c3a3eec2d7d34ef78b5031d8844b17">solver</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">delete</span> <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div><div class="ttc" id="classSVF_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#l00103">CFLBase.h:103</a></div></div>
628
+ <div class="ttc" id="classSVF_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#l00105">CFLBase.h:105</a></div></div>
629
+ </div><!-- fragment -->
630
+ </div>
631
+ </div>
632
+ <h2 class="groupheader">Member Function Documentation</h2>
633
+ <a id="a2aac58e19676290042874c262f1edd4d"></a>
634
+ <h2 class="memtitle"><span class="permalink"><a href="#a2aac58e19676290042874c262f1edd4d">&#9670;&nbsp;</a></span>analyze()</h2>
635
+
636
+ <div class="memitem">
637
+ <div class="memproto">
638
+ <table class="mlabels">
639
+ <tr>
640
+ <td class="mlabels-left">
641
+ <table class="memname">
642
+ <tr>
643
+ <td class="memname">void SVF::CFLBase::analyze </td>
644
+ <td>(</td>
645
+ <td class="paramname"></td><td>)</td>
646
+ <td></td>
647
+ </tr>
648
+ </table>
649
+ </td>
650
+ <td class="mlabels-right">
651
+ <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
652
+ </tr>
653
+ </table>
654
+ </div><div class="memdoc">
655
+
656
+ <p>Perform analyze (main part of CFLR Analysis) </p>
657
+
658
+ <p>Implements <a class="el" href="classSVF_1_1PointerAnalysis.html#ae1e217dc18be0ce70bee5ad930cb54c6">SVF::PointerAnalysis</a>.</p>
659
+
660
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8cpp_source.html#l00109">109</a> of file <a class="el" href="CFLBase_8cpp_source.html">CFLBase.cpp</a>.</p>
661
+ <div class="fragment"><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;{</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">initialize</a>();</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a2d1f2e2c7f8cbe07e0dda759a7424e6e">solve</a>();</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="classSVF_1_1BVDataPTAImpl.html#a57ff2bf45ede7a730a8adaba8e61179d">finalize</a>();</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;}</div><div class="ttc" id="classSVF_1_1BVDataPTAImpl_html_a57ff2bf45ede7a730a8adaba8e61179d"><div class="ttname"><a href="classSVF_1_1BVDataPTAImpl.html#a57ff2bf45ede7a730a8adaba8e61179d">SVF::BVDataPTAImpl::finalize</a></div><div class="ttdeci">virtual void finalize()</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#l00095">PointerAnalysisImpl.cpp:95</a></div></div>
662
+ <div class="ttc" id="classSVF_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#l00098">CFLBase.cpp:98</a></div></div>
663
+ <div class="ttc" id="classSVF_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#l00111">PointerAnalysis.cpp:111</a></div></div>
664
+ </div><!-- fragment -->
665
+ </div>
666
+ </div>
667
+ <a id="a77bc3b0260fe02cdcf41fdb6b80caa09"></a>
668
+ <h2 class="memtitle"><span class="permalink"><a href="#a77bc3b0260fe02cdcf41fdb6b80caa09">&#9670;&nbsp;</a></span>buildCFLGrammar()</h2>
669
+
670
+ <div class="memitem">
671
+ <div class="memproto">
672
+ <table class="mlabels">
673
+ <tr>
674
+ <td class="mlabels-left">
675
+ <table class="memname">
676
+ <tr>
677
+ <td class="memname">void SVF::CFLBase::buildCFLGrammar </td>
678
+ <td>(</td>
679
+ <td class="paramname"></td><td>)</td>
680
+ <td></td>
681
+ </tr>
682
+ </table>
683
+ </td>
684
+ <td class="mlabels-right">
685
+ <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
686
+ </tr>
687
+ </table>
688
+ </div><div class="memdoc">
689
+
690
+ <p>Build Grammar from text file. </p>
691
+
692
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8cpp_source.html#l00044">44</a> of file <a class="el" href="CFLBase_8cpp_source.html">CFLBase.cpp</a>.</p>
693
+ <div class="fragment"><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;{</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="comment">// Start building grammar</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</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><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; GrammarBuilder grammarBuilder = GrammarBuilder(<a class="code" href="classSVF_1_1Options.html#aa929e2ae2c0a78181c3a1311bfe73596">Options::GrammarFilename</a>);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a> = grammarBuilder.build();</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="comment">// Get time of build grammar</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</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><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a0d3217f4c3796b58a98add5c92298ad2">timeOfBuildCFLGrammar</a> += (end - start) / <a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;}</div><div class="ttc" id="classSVF_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#l00088">CFLBase.h:88</a></div></div>
694
+ <div class="ttc" id="classSVF_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>
695
+ <div class="ttc" id="classSVF_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>
696
+ <div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00182">SVFBasicTypes.h:182</a></div></div>
697
+ <div class="ttc" id="classSVF_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#l00103">CFLBase.h:103</a></div></div>
698
+ <div class="ttc" id="classSVF_1_1Options_html_aa929e2ae2c0a78181c3a1311bfe73596"><div class="ttname"><a href="classSVF_1_1Options.html#aa929e2ae2c0a78181c3a1311bfe73596">SVF::Options::GrammarFilename</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std::string &gt; GrammarFilename</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00252">Options.h:252</a></div></div>
699
+ </div><!-- fragment -->
700
+ </div>
701
+ </div>
702
+ <a id="a0daabb58bd7d5be40379ccc670c37a93"></a>
703
+ <h2 class="memtitle"><span class="permalink"><a href="#a0daabb58bd7d5be40379ccc670c37a93">&#9670;&nbsp;</a></span>buildCFLGraph()</h2>
704
+
705
+ <div class="memitem">
706
+ <div class="memproto">
707
+ <table class="mlabels">
708
+ <tr>
709
+ <td class="mlabels-left">
710
+ <table class="memname">
711
+ <tr>
712
+ <td class="memname">void SVF::CFLBase::buildCFLGraph </td>
713
+ <td>(</td>
714
+ <td class="paramname"></td><td>)</td>
715
+ <td></td>
716
+ </tr>
717
+ </table>
718
+ </td>
719
+ <td class="mlabels-right">
720
+ <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
721
+ </tr>
722
+ </table>
723
+ </div><div class="memdoc">
724
+
725
+ <p>Build <a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> based on Option. </p>
726
+
727
+ <p>Reimplemented in <a class="el" href="classSVF_1_1CFLVF.html#aa20f8d27da439c831f36b31312daf047">SVF::CFLVF</a>.</p>
728
+
729
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8cpp_source.html#l00057">57</a> of file <a class="el" href="CFLBase_8cpp_source.html">CFLBase.cpp</a>.</p>
730
+ <div class="fragment"><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;{</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="comment">// Start building CFLGraph</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</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><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; AliasCFLGraphBuilder cflGraphBuilder = AliasCFLGraphBuilder();</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a87b63f1f8f4f65cdf6647f9f056ffc53">Options::CFLGraph</a>.empty()) <span class="comment">// built from svfir</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; {</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="classSVF_1_1PointerAnalysis.html#a431ec4f85eb0f029e5740b92fd9ceb32">PointerAnalysis::initialize</a>();</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; ConstraintGraph *consCG = <span class="keyword">new</span> ConstraintGraph(<a class="code" href="classSVF_1_1CFLBase.html#a9e6cbab31612da4a1f8f660d1fabc4c0">svfir</a>);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a7d566af0280a0c2457947fd426c81c81">Options::PEGTransfer</a>)</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a> = cflGraphBuilder.buildBiPEGgraph(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><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a> = cflGraphBuilder.buildBigraph(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><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">delete</span> consCG;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a> = cflGraphBuilder.buildFromDot(<a class="code" href="classSVF_1_1Options.html#a87b63f1f8f4f65cdf6647f9f056ffc53">Options::CFLGraph</a>, <a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">// Check CFL Graph and Grammar are accordance with grammar</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; CFLGramGraphChecker cflChecker = CFLGramGraphChecker();</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; cflChecker.check(<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><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">// Get time of build graph</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</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><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a9453bf479ccd00bacb3b371fa6383a9c">timeOfBuildCFLGraph</a> += (end - start) / <a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;}</div><div class="ttc" id="classSVF_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#l00101">CFLBase.h:101</a></div></div>
731
+ <div class="ttc" id="classSVF_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#l00102">CFLBase.h:102</a></div></div>
732
+ <div class="ttc" id="classSVF_1_1Options_html_a7d566af0280a0c2457947fd426c81c81"><div class="ttname"><a href="classSVF_1_1Options.html#a7d566af0280a0c2457947fd426c81c81">SVF::Options::PEGTransfer</a></div><div class="ttdeci">static const llvm::cl::opt&lt; bool &gt; PEGTransfer</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00256">Options.h:256</a></div></div>
733
+ <div class="ttc" id="classSVF_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#l00195">CFLGrammar.h:195</a></div></div>
734
+ <div class="ttc" id="classSVF_1_1Options_html_a87b63f1f8f4f65cdf6647f9f056ffc53"><div class="ttname"><a href="classSVF_1_1Options.html#a87b63f1f8f4f65cdf6647f9f056ffc53">SVF::Options::CFLGraph</a></div><div class="ttdeci">static const llvm::cl::opt&lt; std::string &gt; CFLGraph</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00253">Options.h:253</a></div></div>
735
+ <div class="ttc" id="classSVF_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#l00091">CFLBase.h:91</a></div></div>
736
+ <div class="ttc" id="classSVF_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>
737
+ <div class="ttc" id="classSVF_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>
738
+ <div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00182">SVFBasicTypes.h:182</a></div></div>
739
+ <div class="ttc" id="classSVF_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#l00103">CFLBase.h:103</a></div></div>
740
+ <div class="ttc" id="classSVF_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#l00111">PointerAnalysis.cpp:111</a></div></div>
741
+ </div><!-- fragment -->
742
+ </div>
743
+ </div>
744
+ <a id="a824da17d03599090d4e3b4c50aeccff9"></a>
745
+ <h2 class="memtitle"><span class="permalink"><a href="#a824da17d03599090d4e3b4c50aeccff9">&#9670;&nbsp;</a></span>countSumEdges()</h2>
746
+
747
+ <div class="memitem">
748
+ <div class="memproto">
749
+ <table class="mlabels">
750
+ <tr>
751
+ <td class="mlabels-left">
752
+ <table class="memname">
753
+ <tr>
754
+ <td class="memname">void SVF::CFLBase::countSumEdges </td>
755
+ <td>(</td>
756
+ <td class="paramname"></td><td>)</td>
757
+ <td></td>
758
+ </tr>
759
+ </table>
760
+ </td>
761
+ <td class="mlabels-right">
762
+ <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
763
+ </tr>
764
+ </table>
765
+ </div><div class="memdoc">
766
+
767
+ <p>Count the num of Nonterminal Edges. </p>
768
+
769
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8cpp_source.html#l00123">123</a> of file <a class="el" href="CFLBase_8cpp_source.html">CFLBase.cpp</a>.</p>
770
+ <div class="fragment"><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;{</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a25a593cb2a855a93d3593efba382a58c">numOfStartEdges</a> = 0;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</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><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; {</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</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><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a25a593cb2a855a93d3593efba382a58c">numOfStartEdges</a>++;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;}</div><div class="ttc" id="classSVF_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#l00118">CFLBase.cpp:118</a></div></div>
771
+ <div class="ttc" id="classSVF_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#l00195">CFLGrammar.h:195</a></div></div>
772
+ <div class="ttc" id="classSVF_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#l00104">CFLBase.h:104</a></div></div>
773
+ <div class="ttc" id="classSVF_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#l00095">CFLBase.h:95</a></div></div>
774
+ <div class="ttc" id="classSVF_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#l00112">CFLGraph.h:112</a></div></div>
775
+ </div><!-- fragment -->
776
+ </div>
777
+ </div>
778
+ <a id="a22ab9bbaee16e06d04817db8c394cc0b"></a>
779
+ <h2 class="memtitle"><span class="permalink"><a href="#a22ab9bbaee16e06d04817db8c394cc0b">&#9670;&nbsp;</a></span>getCFLGraph()</h2>
780
+
781
+ <div class="memitem">
782
+ <div class="memproto">
783
+ <table class="memname">
784
+ <tr>
785
+ <td class="memname"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * SVF::CFLBase::getCFLGraph </td>
786
+ <td>(</td>
787
+ <td class="paramname"></td><td>)</td>
788
+ <td></td>
789
+ </tr>
790
+ </table>
791
+ </div><div class="memdoc">
792
+
793
+ <p>Get CFL graph. </p>
794
+
795
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8cpp_source.html#l00118">118</a> of file <a class="el" href="CFLBase_8cpp_source.html">CFLBase.cpp</a>.</p>
796
+ <div class="fragment"><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;{</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1CFLBase.html#a8101683062b9a71c0b2309cbdfb7b26f">graph</a>;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;}</div><div class="ttc" id="classSVF_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#l00102">CFLBase.h:102</a></div></div>
797
+ </div><!-- fragment -->
798
+ </div>
799
+ </div>
800
+ <a id="a462de3facd2a9365d32397d250414ee9"></a>
801
+ <h2 class="memtitle"><span class="permalink"><a href="#a462de3facd2a9365d32397d250414ee9">&#9670;&nbsp;</a></span>normalizeCFLGrammar()</h2>
802
+
803
+ <div class="memitem">
804
+ <div class="memproto">
805
+ <table class="mlabels">
806
+ <tr>
807
+ <td class="mlabels-left">
808
+ <table class="memname">
809
+ <tr>
810
+ <td class="memname">void SVF::CFLBase::normalizeCFLGrammar </td>
811
+ <td>(</td>
812
+ <td class="paramname"></td><td>)</td>
813
+ <td></td>
814
+ </tr>
815
+ </table>
816
+ </td>
817
+ <td class="mlabels-right">
818
+ <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
819
+ </tr>
820
+ </table>
821
+ </div><div class="memdoc">
822
+
823
+ <p>Normalize grammar. </p>
824
+
825
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8cpp_source.html#l00085">85</a> of file <a class="el" href="CFLBase_8cpp_source.html">CFLBase.cpp</a>.</p>
826
+ <div class="fragment"><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;{</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="comment">// Start normalize grammar</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</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><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; CFGNormalizer normalizer = CFGNormalizer();</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#af7b0e90b8f8998ab6cf4e05155c7a503">grammar</a> = normalizer.normalize(<a class="code" href="classSVF_1_1CFLBase.html#aef3da4ce970597586757cafd2a435c1f">grammarBase</a>);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">// Get time of normalize grammar</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</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><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#ad4d65dd4c3e173d014199ac6b08a5261">timeOfNormalizeGrammar</a> += (end - start) / <a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;}</div><div class="ttc" id="classSVF_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#l00104">CFLBase.h:104</a></div></div>
827
+ <div class="ttc" id="classSVF_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#l00089">CFLBase.h:89</a></div></div>
828
+ <div class="ttc" id="classSVF_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>
829
+ <div class="ttc" id="classSVF_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>
830
+ <div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00182">SVFBasicTypes.h:182</a></div></div>
831
+ <div class="ttc" id="classSVF_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#l00103">CFLBase.h:103</a></div></div>
832
+ </div><!-- fragment -->
833
+ </div>
834
+ </div>
835
+ <a id="a2d1f2e2c7f8cbe07e0dda759a7424e6e"></a>
836
+ <h2 class="memtitle"><span class="permalink"><a href="#a2d1f2e2c7f8cbe07e0dda759a7424e6e">&#9670;&nbsp;</a></span>solve()</h2>
837
+
838
+ <div class="memitem">
839
+ <div class="memproto">
840
+ <table class="mlabels">
841
+ <tr>
842
+ <td class="mlabels-left">
843
+ <table class="memname">
844
+ <tr>
845
+ <td class="memname">void SVF::CFLBase::solve </td>
846
+ <td>(</td>
847
+ <td class="paramname"></td><td>)</td>
848
+ <td></td>
849
+ </tr>
850
+ </table>
851
+ </td>
852
+ <td class="mlabels-right">
853
+ <span class="mlabels"><span class="mlabel">virtual</span></span> </td>
854
+ </tr>
855
+ </table>
856
+ </div><div class="memdoc">
857
+
858
+ <p>Solving CFL Reachability. </p>
859
+
860
+ <p>Reimplemented in <a class="el" href="classSVF_1_1CFLAlias.html#a5b7d65e7e74d596d61a1aad75e53cf27">SVF::CFLAlias</a>.</p>
861
+
862
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8cpp_source.html#l00098">98</a> of file <a class="el" href="CFLBase_8cpp_source.html">CFLBase.cpp</a>.</p>
863
+ <div class="fragment"><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;{</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// Start solving</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</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><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</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><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</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><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="classSVF_1_1CFLBase.html#a88e40af43705550a78837b8589bbf3f8">timeOfSolving</a> += (end - start) / <a class="code" href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a>;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;}</div><div class="ttc" id="classSVF_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>
864
+ <div class="ttc" id="classSVF_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>
865
+ <div class="ttc" id="SVFBasicTypes_8h_html_a1aeda3370621dc00e9a0fe8e7aabc736"><div class="ttname"><a href="SVFBasicTypes_8h.html#a1aeda3370621dc00e9a0fe8e7aabc736">TIMEINTERVAL</a></div><div class="ttdeci">#define TIMEINTERVAL</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00182">SVFBasicTypes.h:182</a></div></div>
866
+ <div class="ttc" id="classSVF_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#l00105">CFLBase.h:105</a></div></div>
867
+ <div class="ttc" id="classSVF_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#l00097">CFLBase.h:97</a></div></div>
868
+ <div class="ttc" id="classSVF_1_1CFLSolver_html_a2ee3436c26ebdb2aaf790c25b1d8b5a6"><div class="ttname"><a href="classSVF_1_1CFLSolver.html#a2ee3436c26ebdb2aaf790c25b1d8b5a6">SVF::CFLSolver::solve</a></div><div class="ttdeci">void solve()</div><div class="ttdoc">Start solving. </div><div class="ttdef"><b>Definition:</b> <a href="CFLSolver_8cpp_source.html#l00034">CFLSolver.cpp:34</a></div></div>
869
+ </div><!-- fragment -->
870
+ </div>
871
+ </div>
872
+ <h2 class="groupheader">Member Data Documentation</h2>
873
+ <a id="af7b0e90b8f8998ab6cf4e05155c7a503"></a>
874
+ <h2 class="memtitle"><span class="permalink"><a href="#af7b0e90b8f8998ab6cf4e05155c7a503">&#9670;&nbsp;</a></span>grammar</h2>
875
+
876
+ <div class="memitem">
877
+ <div class="memproto">
878
+ <table class="mlabels">
879
+ <tr>
880
+ <td class="mlabels-left">
881
+ <table class="memname">
882
+ <tr>
883
+ <td class="memname"><a class="el" href="classSVF_1_1CFLGrammar.html">CFLGrammar</a>* SVF::CFLBase::grammar</td>
884
+ </tr>
885
+ </table>
886
+ </td>
887
+ <td class="mlabels-right">
888
+ <span class="mlabels"><span class="mlabel">protected</span></span> </td>
889
+ </tr>
890
+ </table>
891
+ </div><div class="memdoc">
892
+
893
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00104">104</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
894
+
895
+ </div>
896
+ </div>
897
+ <a id="aef3da4ce970597586757cafd2a435c1f"></a>
898
+ <h2 class="memtitle"><span class="permalink"><a href="#aef3da4ce970597586757cafd2a435c1f">&#9670;&nbsp;</a></span>grammarBase</h2>
899
+
900
+ <div class="memitem">
901
+ <div class="memproto">
902
+ <table class="mlabels">
903
+ <tr>
904
+ <td class="mlabels-left">
905
+ <table class="memname">
906
+ <tr>
907
+ <td class="memname"><a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a>* SVF::CFLBase::grammarBase</td>
908
+ </tr>
909
+ </table>
910
+ </td>
911
+ <td class="mlabels-right">
912
+ <span class="mlabels"><span class="mlabel">protected</span></span> </td>
913
+ </tr>
914
+ </table>
915
+ </div><div class="memdoc">
916
+
917
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00103">103</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
918
+
919
+ </div>
920
+ </div>
921
+ <a id="a8101683062b9a71c0b2309cbdfb7b26f"></a>
922
+ <h2 class="memtitle"><span class="permalink"><a href="#a8101683062b9a71c0b2309cbdfb7b26f">&#9670;&nbsp;</a></span>graph</h2>
923
+
924
+ <div class="memitem">
925
+ <div class="memproto">
926
+ <table class="mlabels">
927
+ <tr>
928
+ <td class="mlabels-left">
929
+ <table class="memname">
930
+ <tr>
931
+ <td class="memname"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a>* SVF::CFLBase::graph</td>
932
+ </tr>
933
+ </table>
934
+ </td>
935
+ <td class="mlabels-right">
936
+ <span class="mlabels"><span class="mlabel">protected</span></span> </td>
937
+ </tr>
938
+ </table>
939
+ </div><div class="memdoc">
940
+
941
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00102">102</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
942
+
943
+ </div>
944
+ </div>
945
+ <a id="a4c03b83cb2a3c0c166d96550d6771a1b"></a>
946
+ <h2 class="memtitle"><span class="permalink"><a href="#a4c03b83cb2a3c0c166d96550d6771a1b">&#9670;&nbsp;</a></span>numOfNonterminalEdges</h2>
947
+
948
+ <div class="memitem">
949
+ <div class="memproto">
950
+ <table class="mlabels">
951
+ <tr>
952
+ <td class="mlabels-left">
953
+ <table class="memname">
954
+ <tr>
955
+ <td class="memname">double SVF::CFLBase::numOfNonterminalEdges</td>
956
+ </tr>
957
+ </table>
958
+ </td>
959
+ <td class="mlabels-right">
960
+ <span class="mlabels"><span class="mlabel">static</span></span> </td>
961
+ </tr>
962
+ </table>
963
+ </div><div class="memdoc">
964
+
965
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00094">94</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
966
+
967
+ </div>
968
+ </div>
969
+ <a id="a25a593cb2a855a93d3593efba382a58c"></a>
970
+ <h2 class="memtitle"><span class="permalink"><a href="#a25a593cb2a855a93d3593efba382a58c">&#9670;&nbsp;</a></span>numOfStartEdges</h2>
971
+
972
+ <div class="memitem">
973
+ <div class="memproto">
974
+ <table class="mlabels">
975
+ <tr>
976
+ <td class="mlabels-left">
977
+ <table class="memname">
978
+ <tr>
979
+ <td class="memname">double SVF::CFLBase::numOfStartEdges = 0</td>
980
+ </tr>
981
+ </table>
982
+ </td>
983
+ <td class="mlabels-right">
984
+ <span class="mlabels"><span class="mlabel">static</span></span> </td>
985
+ </tr>
986
+ </table>
987
+ </div><div class="memdoc">
988
+
989
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00095">95</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
990
+
991
+ </div>
992
+ </div>
993
+ <a id="ac3b408acb295e2c319e3542539e6df47"></a>
994
+ <h2 class="memtitle"><span class="permalink"><a href="#ac3b408acb295e2c319e3542539e6df47">&#9670;&nbsp;</a></span>numOfTemporaryNonterminalEdges</h2>
995
+
996
+ <div class="memitem">
997
+ <div class="memproto">
998
+ <table class="mlabels">
999
+ <tr>
1000
+ <td class="mlabels-left">
1001
+ <table class="memname">
1002
+ <tr>
1003
+ <td class="memname">double SVF::CFLBase::numOfTemporaryNonterminalEdges</td>
1004
+ </tr>
1005
+ </table>
1006
+ </td>
1007
+ <td class="mlabels-right">
1008
+ <span class="mlabels"><span class="mlabel">static</span></span> </td>
1009
+ </tr>
1010
+ </table>
1011
+ </div><div class="memdoc">
1012
+
1013
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00093">93</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
1014
+
1015
+ </div>
1016
+ </div>
1017
+ <a id="abc5502f15583f0546bbc2a678d2f2ed9"></a>
1018
+ <h2 class="memtitle"><span class="permalink"><a href="#abc5502f15583f0546bbc2a678d2f2ed9">&#9670;&nbsp;</a></span>numOfTerminalEdges</h2>
1019
+
1020
+ <div class="memitem">
1021
+ <div class="memproto">
1022
+ <table class="mlabels">
1023
+ <tr>
1024
+ <td class="mlabels-left">
1025
+ <table class="memname">
1026
+ <tr>
1027
+ <td class="memname">double SVF::CFLBase::numOfTerminalEdges</td>
1028
+ </tr>
1029
+ </table>
1030
+ </td>
1031
+ <td class="mlabels-right">
1032
+ <span class="mlabels"><span class="mlabel">static</span></span> </td>
1033
+ </tr>
1034
+ </table>
1035
+ </div><div class="memdoc">
1036
+
1037
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00092">92</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
1038
+
1039
+ </div>
1040
+ </div>
1041
+ <a id="a34c3a3eec2d7d34ef78b5031d8844b17"></a>
1042
+ <h2 class="memtitle"><span class="permalink"><a href="#a34c3a3eec2d7d34ef78b5031d8844b17">&#9670;&nbsp;</a></span>solver</h2>
1043
+
1044
+ <div class="memitem">
1045
+ <div class="memproto">
1046
+ <table class="mlabels">
1047
+ <tr>
1048
+ <td class="mlabels-left">
1049
+ <table class="memname">
1050
+ <tr>
1051
+ <td class="memname"><a class="el" href="classSVF_1_1CFLSolver.html">CFLSolver</a>* SVF::CFLBase::solver</td>
1052
+ </tr>
1053
+ </table>
1054
+ </td>
1055
+ <td class="mlabels-right">
1056
+ <span class="mlabels"><span class="mlabel">protected</span></span> </td>
1057
+ </tr>
1058
+ </table>
1059
+ </div><div class="memdoc">
1060
+
1061
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00105">105</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
1062
+
1063
+ </div>
1064
+ </div>
1065
+ <a id="a9e6cbab31612da4a1f8f660d1fabc4c0"></a>
1066
+ <h2 class="memtitle"><span class="permalink"><a href="#a9e6cbab31612da4a1f8f660d1fabc4c0">&#9670;&nbsp;</a></span>svfir</h2>
1067
+
1068
+ <div class="memitem">
1069
+ <div class="memproto">
1070
+ <table class="mlabels">
1071
+ <tr>
1072
+ <td class="mlabels-left">
1073
+ <table class="memname">
1074
+ <tr>
1075
+ <td class="memname"><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a>* SVF::CFLBase::svfir</td>
1076
+ </tr>
1077
+ </table>
1078
+ </td>
1079
+ <td class="mlabels-right">
1080
+ <span class="mlabels"><span class="mlabel">protected</span></span> </td>
1081
+ </tr>
1082
+ </table>
1083
+ </div><div class="memdoc">
1084
+
1085
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00101">101</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
1086
+
1087
+ </div>
1088
+ </div>
1089
+ <a id="a0d3217f4c3796b58a98add5c92298ad2"></a>
1090
+ <h2 class="memtitle"><span class="permalink"><a href="#a0d3217f4c3796b58a98add5c92298ad2">&#9670;&nbsp;</a></span>timeOfBuildCFLGrammar</h2>
1091
+
1092
+ <div class="memitem">
1093
+ <div class="memproto">
1094
+ <table class="mlabels">
1095
+ <tr>
1096
+ <td class="mlabels-left">
1097
+ <table class="memname">
1098
+ <tr>
1099
+ <td class="memname">double SVF::CFLBase::timeOfBuildCFLGrammar = 0</td>
1100
+ </tr>
1101
+ </table>
1102
+ </td>
1103
+ <td class="mlabels-right">
1104
+ <span class="mlabels"><span class="mlabel">static</span></span> </td>
1105
+ </tr>
1106
+ </table>
1107
+ </div><div class="memdoc">
1108
+
1109
+ <p>Statistics. </p>
1110
+
1111
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00088">88</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
1112
+
1113
+ </div>
1114
+ </div>
1115
+ <a id="a9453bf479ccd00bacb3b371fa6383a9c"></a>
1116
+ <h2 class="memtitle"><span class="permalink"><a href="#a9453bf479ccd00bacb3b371fa6383a9c">&#9670;&nbsp;</a></span>timeOfBuildCFLGraph</h2>
1117
+
1118
+ <div class="memitem">
1119
+ <div class="memproto">
1120
+ <table class="mlabels">
1121
+ <tr>
1122
+ <td class="mlabels-left">
1123
+ <table class="memname">
1124
+ <tr>
1125
+ <td class="memname">double SVF::CFLBase::timeOfBuildCFLGraph = 0</td>
1126
+ </tr>
1127
+ </table>
1128
+ </td>
1129
+ <td class="mlabels-right">
1130
+ <span class="mlabels"><span class="mlabel">static</span></span> </td>
1131
+ </tr>
1132
+ </table>
1133
+ </div><div class="memdoc">
1134
+
1135
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00091">91</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
1136
+
1137
+ </div>
1138
+ </div>
1139
+ <a id="ad4d65dd4c3e173d014199ac6b08a5261"></a>
1140
+ <h2 class="memtitle"><span class="permalink"><a href="#ad4d65dd4c3e173d014199ac6b08a5261">&#9670;&nbsp;</a></span>timeOfNormalizeGrammar</h2>
1141
+
1142
+ <div class="memitem">
1143
+ <div class="memproto">
1144
+ <table class="mlabels">
1145
+ <tr>
1146
+ <td class="mlabels-left">
1147
+ <table class="memname">
1148
+ <tr>
1149
+ <td class="memname">double SVF::CFLBase::timeOfNormalizeGrammar = 0</td>
1150
+ </tr>
1151
+ </table>
1152
+ </td>
1153
+ <td class="mlabels-right">
1154
+ <span class="mlabels"><span class="mlabel">static</span></span> </td>
1155
+ </tr>
1156
+ </table>
1157
+ </div><div class="memdoc">
1158
+
1159
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00089">89</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
1160
+
1161
+ </div>
1162
+ </div>
1163
+ <a id="a88e40af43705550a78837b8589bbf3f8"></a>
1164
+ <h2 class="memtitle"><span class="permalink"><a href="#a88e40af43705550a78837b8589bbf3f8">&#9670;&nbsp;</a></span>timeOfSolving</h2>
1165
+
1166
+ <div class="memitem">
1167
+ <div class="memproto">
1168
+ <table class="mlabels">
1169
+ <tr>
1170
+ <td class="mlabels-left">
1171
+ <table class="memname">
1172
+ <tr>
1173
+ <td class="memname">double SVF::CFLBase::timeOfSolving = 0</td>
1174
+ </tr>
1175
+ </table>
1176
+ </td>
1177
+ <td class="mlabels-right">
1178
+ <span class="mlabels"><span class="mlabel">static</span></span> </td>
1179
+ </tr>
1180
+ </table>
1181
+ </div><div class="memdoc">
1182
+
1183
+ <p class="definition">Definition at line <a class="el" href="CFLBase_8h_source.html#l00097">97</a> of file <a class="el" href="CFLBase_8h_source.html">CFLBase.h</a>.</p>
1184
+
1185
+ </div>
1186
+ </div>
1187
+ <hr/>The documentation for this class was generated from the following files:<ul>
1188
+ <li>/home/runner/work/SVF/SVF/include/CFL/<a class="el" href="CFLBase_8h_source.html">CFLBase.h</a></li>
1189
+ <li>/home/runner/work/SVF/SVF/lib/CFL/<a class="el" href="CFLBase_8cpp_source.html">CFLBase.cpp</a></li>
1190
+ </ul>
1191
+ </div><!-- contents -->
1192
+ <!-- start footer part -->
1193
+ <hr class="footer"/><address class="footer"><small>
1194
+ Generated by &#160;<a href="http://www.doxygen.org/index.html">
1195
+ <img class="footer" src="doxygen.png" alt="doxygen"/>
1196
+ </a> 1.8.13
1197
+ </small></address>
1198
+ </body>
1199
+ </html>