svf-tools 1.0.557 → 1.0.558
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.
- package/SVF-doxygen/html/html/AndersenPWC_8h_source.html +15 -15
- package/SVF-doxygen/html/html/AndersenSCD_8cpp_source.html +12 -11
- package/SVF-doxygen/html/html/AndersenSFR_8cpp_source.html +11 -10
- package/SVF-doxygen/html/html/AndersenStat_8cpp_source.html +47 -46
- package/SVF-doxygen/html/html/AndersenWaveDiff_8cpp_source.html +9 -8
- package/SVF-doxygen/html/html/Andersen_8cpp_source.html +35 -34
- package/SVF-doxygen/html/html/Andersen_8h_source.html +6 -6
- package/SVF-doxygen/html/html/CHGBuilder_8cpp.html +2 -2
- package/SVF-doxygen/html/html/CHGBuilder_8cpp_source.html +19 -18
- package/SVF-doxygen/html/html/CHGBuilder_8h_source.html +15 -15
- package/SVF-doxygen/html/html/ContextDDA_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/DDAPass_8cpp_source.html +13 -12
- package/SVF-doxygen/html/html/DDAPass_8h_source.html +11 -11
- package/SVF-doxygen/html/html/DDAStat_8cpp_source.html +20 -19
- package/SVF-doxygen/html/html/DDAStat_8h_source.html +13 -13
- package/SVF-doxygen/html/html/DDAVFSolver_8h_source.html +2 -2
- package/SVF-doxygen/html/html/FlowSensitiveStat_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/ICFGStat_8h_source.html +5 -4
- package/SVF-doxygen/html/html/LockAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MHP_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MTAStat_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/MTAStat_8h_source.html +1 -1
- package/SVF-doxygen/html/html/MTA_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/MemSSA_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/NodeIDAllocator_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PTAStat_8cpp_source.html +67 -69
- package/SVF-doxygen/html/html/PTAStat_8h.html +1 -0
- package/SVF-doxygen/html/html/PTAStat_8h_source.html +70 -76
- package/SVF-doxygen/html/html/PointerAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/PointerAnalysis_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PointsTo_8cpp_source.html +2 -1
- package/SVF-doxygen/html/html/SVFGReadWrite_8cpp_source.html +5 -4
- package/SVF-doxygen/html/html/SVFGStat_8cpp_source.html +22 -21
- package/SVF-doxygen/html/html/SVFGStat_8h_source.html +5 -5
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/SVFG_8h_source.html +3 -3
- package/SVF-doxygen/html/html/SVFStat_8cpp.html +81 -0
- package/SVF-doxygen/html/html/SVFStat_8cpp_source.html +85 -0
- package/SVF-doxygen/html/html/SVFStat_8h.html +94 -0
- package/SVF-doxygen/html/html/SVFStat_8h_source.html +103 -0
- package/SVF-doxygen/html/html/Steensgaard_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/VersionedFlowSensitiveStat_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/VersionedFlowSensitive_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/WPAStat_8h_source.html +8 -8
- package/SVF-doxygen/html/html/annotated.html +39 -38
- package/SVF-doxygen/html/html/classSVF_1_1Andersen.html +79 -79
- package/SVF-doxygen/html/html/classSVF_1_1AndersenBase.html +15 -15
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSCD.html +37 -37
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1AndersenSFR.html +22 -22
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat-members.html +24 -22
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.html +97 -86
- package/SVF-doxygen/html/html/classSVF_1_1AndersenStat.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1AndersenWaveDiff.html +24 -24
- package/SVF-doxygen/html/html/classSVF_1_1CHGBuilder.html +47 -47
- package/SVF-doxygen/html/html/classSVF_1_1ContextDDA.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1DDAPass.html +30 -30
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat-members.html +24 -23
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat.html +80 -67
- package/SVF-doxygen/html/html/classSVF_1_1DDAStat.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1DDAVFSolver.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1FlowDDA.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitive.html +26 -26
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat-members.html +24 -22
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.html +67 -56
- package/SVF-doxygen/html/html/classSVF_1_1FlowSensitiveStat.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1ICFGStat-members.html +23 -21
- package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.html +55 -42
- package/SVF-doxygen/html/html/classSVF_1_1ICFGStat.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1LockAnalysis.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1MHP.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1MTA.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat-members.html +25 -23
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat.html +59 -48
- package/SVF-doxygen/html/html/classSVF_1_1MTAStat.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1MemSSA.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat-members.html +22 -21
- package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.html +57 -44
- package/SVF-doxygen/html/html/classSVF_1_1MemSSAStat.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1NodeIDAllocator_1_1Clusterer.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1Options.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat-members.html +24 -22
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.html +186 -420
- package/SVF-doxygen/html/html/classSVF_1_1PTAStat.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFG.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1SVFGStat-members.html +33 -32
- package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.html +100 -87
- package/SVF-doxygen/html/html/classSVF_1_1SVFGStat.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1SVFStat-members.html +100 -0
- package/SVF-doxygen/html/html/classSVF_1_1SVFStat.html +605 -0
- package/SVF-doxygen/html/html/classSVF_1_1SVFStat.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1Steensgaard.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitive.html +12 -12
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat-members.html +26 -24
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.html +65 -54
- package/SVF-doxygen/html/html/classSVF_1_1VersionedFlowSensitiveStat.png +0 -0
- package/SVF-doxygen/html/html/classes.html +50 -50
- package/SVF-doxygen/html/html/dda_8cpp.html +1 -1
- package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/dir_862d3276083eaac55caed79b9120bf29.html +2 -0
- package/SVF-doxygen/html/html/dir_95e22971b5dbae2382075a3453e365b4.html +2 -0
- package/SVF-doxygen/html/html/files.html +10 -8
- package/SVF-doxygen/html/html/functions_0x7e.html +3 -0
- package/SVF-doxygen/html/html/functions_c.html +28 -29
- package/SVF-doxygen/html/html/functions_e.html +3 -2
- package/SVF-doxygen/html/html/functions_enum.html +1 -1
- package/SVF-doxygen/html/html/functions_eval_c.html +1 -1
- package/SVF-doxygen/html/html/functions_eval_w.html +1 -1
- package/SVF-doxygen/html/html/functions_f.html +3 -3
- package/SVF-doxygen/html/html/functions_func_0x7e.html +3 -0
- package/SVF-doxygen/html/html/functions_func_c.html +28 -27
- package/SVF-doxygen/html/html/functions_func_e.html +1 -1
- package/SVF-doxygen/html/html/functions_func_g.html +1 -1
- package/SVF-doxygen/html/html/functions_func_p.html +9 -7
- package/SVF-doxygen/html/html/functions_func_s.html +14 -11
- package/SVF-doxygen/html/html/functions_g.html +2 -2
- package/SVF-doxygen/html/html/functions_l.html +6 -6
- package/SVF-doxygen/html/html/functions_m.html +2 -1
- package/SVF-doxygen/html/html/functions_n.html +1 -1
- package/SVF-doxygen/html/html/functions_o.html +3 -3
- package/SVF-doxygen/html/html/functions_p.html +25 -21
- package/SVF-doxygen/html/html/functions_r.html +7 -3
- package/SVF-doxygen/html/html/functions_s.html +24 -22
- package/SVF-doxygen/html/html/functions_t.html +8 -8
- package/SVF-doxygen/html/html/functions_type_n.html +1 -1
- package/SVF-doxygen/html/html/functions_type_s.html +1 -1
- package/SVF-doxygen/html/html/functions_type_t.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_e.html +1 -0
- package/SVF-doxygen/html/html/functions_vars_g.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_m.html +1 -0
- package/SVF-doxygen/html/html/functions_vars_s.html +1 -0
- package/SVF-doxygen/html/html/functions_vars_t.html +1 -1
- package/SVF-doxygen/html/html/functions_w.html +12 -12
- package/SVF-doxygen/html/html/hierarchy.html +47 -46
- package/SVF-doxygen/html/html/namespaceSVF.html +2 -0
- package/SVF-doxygen/html/html/search/all_10.js +13 -13
- package/SVF-doxygen/html/html/search/all_11.js +3 -3
- package/SVF-doxygen/html/html/search/all_12.js +11 -8
- package/SVF-doxygen/html/html/search/all_13.js +4 -4
- package/SVF-doxygen/html/html/search/all_15.js +1 -1
- package/SVF-doxygen/html/html/search/all_16.js +3 -3
- package/SVF-doxygen/html/html/search/all_19.js +1 -0
- package/SVF-doxygen/html/html/search/all_3.js +3 -3
- package/SVF-doxygen/html/html/search/all_5.js +2 -2
- package/SVF-doxygen/html/html/search/all_6.js +1 -1
- package/SVF-doxygen/html/html/search/all_7.js +2 -2
- package/SVF-doxygen/html/html/search/all_c.js +3 -3
- package/SVF-doxygen/html/html/search/all_d.js +1 -1
- package/SVF-doxygen/html/html/search/all_e.js +2 -2
- package/SVF-doxygen/html/html/search/all_f.js +2 -2
- package/SVF-doxygen/html/html/search/classes_f.js +1 -0
- package/SVF-doxygen/html/html/search/enums_1.js +1 -1
- package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
- package/SVF-doxygen/html/html/search/enumvalues_2.js +1 -1
- package/SVF-doxygen/html/html/search/files_d.js +2 -0
- package/SVF-doxygen/html/html/search/functions_11.js +2 -1
- package/SVF-doxygen/html/html/search/functions_17.js +1 -0
- package/SVF-doxygen/html/html/search/functions_2.js +1 -1
- package/SVF-doxygen/html/html/search/functions_4.js +1 -1
- package/SVF-doxygen/html/html/search/functions_6.js +1 -1
- package/SVF-doxygen/html/html/search/functions_f.js +4 -4
- package/SVF-doxygen/html/html/search/typedefs_10.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_11.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_c.js +1 -1
- package/SVF-doxygen/html/html/search/variables_12.js +1 -1
- package/SVF-doxygen/html/html/search/variables_13.js +3 -3
- package/SVF-doxygen/html/html/search/variables_5.js +1 -1
- package/SVF-doxygen/html/html/search/variables_7.js +1 -1
- package/SVF-doxygen/html/html/search/variables_d.js +1 -1
- package/include/Graphs/ICFGStat.h +1 -1
- package/include/Util/PTAStat.h +6 -36
- package/include/Util/SVFStat.h +95 -0
- package/include/WPA/AndersenPWC.h +1 -1
- package/lib/DDA/DDAPass.cpp +1 -0
- package/lib/DDA/DDAStat.cpp +1 -0
- package/lib/Graphs/SVFGReadWrite.cpp +1 -0
- package/lib/Graphs/SVFGStat.cpp +1 -0
- package/lib/SVF-FE/CHGBuilder.cpp +1 -0
- package/lib/Util/PTAStat.cpp +2 -21
- package/lib/Util/SVFStat.cpp +58 -0
- package/lib/WPA/Andersen.cpp +1 -0
- package/lib/WPA/AndersenSCD.cpp +1 -0
- package/lib/WPA/AndersenSFR.cpp +1 -0
- package/lib/WPA/AndersenStat.cpp +1 -0
- package/lib/WPA/AndersenWaveDiff.cpp +1 -0
- package/package.json +1 -1
|
@@ -63,9 +63,7 @@ $(function() {
|
|
|
63
63
|
</div><!-- top -->
|
|
64
64
|
<div class="header">
|
|
65
65
|
<div class="summary">
|
|
66
|
-
<a href="#pub-types">Public Types</a> |
|
|
67
66
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
68
|
-
<a href="#pub-static-methods">Static Public Member Functions</a> |
|
|
69
67
|
<a href="#pub-attribs">Public Attributes</a> |
|
|
70
68
|
<a href="#pub-static-attribs">Static Public Attributes</a> |
|
|
71
69
|
<a href="#pri-methods">Private Member Functions</a> |
|
|
@@ -83,68 +81,63 @@ Inheritance diagram for SVF::PTAStat:</div>
|
|
|
83
81
|
<div class="center">
|
|
84
82
|
<img src="classSVF_1_1PTAStat.png" usemap="#SVF::PTAStat_map" alt=""/>
|
|
85
83
|
<map id="SVF::PTAStat_map" name="SVF::PTAStat_map">
|
|
86
|
-
<area href="
|
|
87
|
-
<area href="
|
|
88
|
-
<area href="
|
|
89
|
-
<area href="
|
|
90
|
-
<area href="
|
|
91
|
-
<area href="
|
|
92
|
-
<area href="
|
|
93
|
-
<area href="
|
|
84
|
+
<area href="classSVF_1_1SVFStat.html" alt="SVF::SVFStat" shape="rect" coords="0,0,200,24"/>
|
|
85
|
+
<area href="classSVF_1_1AndersenStat.html" alt="SVF::AndersenStat" shape="rect" coords="210,112,410,136"/>
|
|
86
|
+
<area href="classSVF_1_1DDAStat.html" alt="SVF::DDAStat" shape="rect" coords="210,168,410,192"/>
|
|
87
|
+
<area href="classSVF_1_1FlowSensitiveStat.html" alt="SVF::FlowSensitiveStat" shape="rect" coords="210,224,410,248"/>
|
|
88
|
+
<area href="classSVF_1_1ICFGStat.html" alt="SVF::ICFGStat" shape="rect" coords="210,280,410,304"/>
|
|
89
|
+
<area href="classSVF_1_1MemSSAStat.html" alt="SVF::MemSSAStat" shape="rect" coords="210,336,410,360"/>
|
|
90
|
+
<area href="classSVF_1_1MTAStat.html" alt="SVF::MTAStat" shape="rect" coords="210,392,410,416"/>
|
|
91
|
+
<area href="classSVF_1_1SVFGStat.html" alt="SVF::SVFGStat" shape="rect" coords="210,448,410,472"/>
|
|
92
|
+
<area href="classSVF_1_1VersionedFlowSensitiveStat.html" alt="SVF::VersionedFlowSensitiveStat" shape="rect" coords="210,504,410,528"/>
|
|
94
93
|
</map>
|
|
95
94
|
</div></div>
|
|
96
95
|
<table class="memberdecls">
|
|
97
|
-
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
|
|
98
|
-
Public Types</h2></td></tr>
|
|
99
|
-
<tr class="memitem:a926cd5ab95f4f42ffe264413a32725cf"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#a926cd5ab95f4f42ffe264413a32725cf">ClockType</a> { <a class="el" href="classSVF_1_1PTAStat.html#a926cd5ab95f4f42ffe264413a32725cfa6c9d7a9709df10eb67ce27e744e0f61c">Wall</a>,
|
|
100
|
-
<a class="el" href="classSVF_1_1PTAStat.html#a926cd5ab95f4f42ffe264413a32725cfa518df17b11048afda951359227f53d2d">CPU</a>
|
|
101
|
-
}</td></tr>
|
|
102
|
-
<tr class="separator:a926cd5ab95f4f42ffe264413a32725cf"><td class="memSeparator" colspan="2"> </td></tr>
|
|
103
|
-
<tr class="memitem:a7e8f9f9c1662822f3f8bd016db84e1e6"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< const char *, <a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#a7e8f9f9c1662822f3f8bd016db84e1e6">NUMStatMap</a></td></tr>
|
|
104
|
-
<tr class="separator:a7e8f9f9c1662822f3f8bd016db84e1e6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
105
|
-
<tr class="memitem:a28f304e7095f3843ca4cc017bc1f7b10"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< const char *, double > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#a28f304e7095f3843ca4cc017bc1f7b10">TIMEStatMap</a></td></tr>
|
|
106
|
-
<tr class="separator:a28f304e7095f3843ca4cc017bc1f7b10"><td class="memSeparator" colspan="2"> </td></tr>
|
|
107
|
-
</table><table class="memberdecls">
|
|
108
96
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
109
97
|
Public Member Functions</h2></td></tr>
|
|
110
98
|
<tr class="memitem:ac9b65b591200c16c420fbd26710b448f"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#ac9b65b591200c16c420fbd26710b448f">PTAStat</a> (<a class="el" href="classSVF_1_1PointerAnalysis.html">PointerAnalysis</a> *<a class="el" href="cJSON_8cpp.html#a009ef1d888ab6dbe77e6b42b0b39f1ae">p</a>)</td></tr>
|
|
111
99
|
<tr class="separator:ac9b65b591200c16c420fbd26710b448f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
112
100
|
<tr class="memitem:a1e5294c49b8bd8a850e938dccd5800a5"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#a1e5294c49b8bd8a850e938dccd5800a5">~PTAStat</a> ()</td></tr>
|
|
113
101
|
<tr class="separator:a1e5294c49b8bd8a850e938dccd5800a5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
114
|
-
<tr class="memitem:
|
|
115
|
-
<tr class="separator:
|
|
116
|
-
<tr class="memitem:
|
|
117
|
-
<tr class="separator:
|
|
118
|
-
<tr class="memitem:
|
|
119
|
-
<tr class="separator:
|
|
120
|
-
<tr class="
|
|
121
|
-
<tr class="
|
|
122
|
-
<tr class="
|
|
123
|
-
<tr class="
|
|
124
|
-
<tr class="
|
|
125
|
-
<tr class="
|
|
126
|
-
<tr class="
|
|
127
|
-
<tr class="
|
|
128
|
-
|
|
129
|
-
<tr class="
|
|
130
|
-
|
|
131
|
-
<tr class="memitem:
|
|
132
|
-
<tr class="separator:
|
|
102
|
+
<tr class="memitem:ad6de9d3f25c20705768000c987af0eb6"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#ad6de9d3f25c20705768000c987af0eb6">performStat</a> () override</td></tr>
|
|
103
|
+
<tr class="separator:ad6de9d3f25c20705768000c987af0eb6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
104
|
+
<tr class="memitem:aca3e99ad83bddabee1dd565522691c78"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">printStat</a> (<a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> str="") override</td></tr>
|
|
105
|
+
<tr class="separator:aca3e99ad83bddabee1dd565522691c78"><td class="memSeparator" colspan="2"> </td></tr>
|
|
106
|
+
<tr class="memitem:af2eb88d1563be9e6290a5fc69bec3bbe"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#af2eb88d1563be9e6290a5fc69bec3bbe">callgraphStat</a> () override</td></tr>
|
|
107
|
+
<tr class="separator:af2eb88d1563be9e6290a5fc69bec3bbe"><td class="memSeparator" colspan="2"> </td></tr>
|
|
108
|
+
<tr class="inherit_header pub_methods_classSVF_1_1SVFStat"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classSVF_1_1SVFStat')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classSVF_1_1SVFStat.html">SVF::SVFStat</a></td></tr>
|
|
109
|
+
<tr class="memitem:ad22433722f7c71df19a891a5b5039d26 inherit pub_methods_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#ad22433722f7c71df19a891a5b5039d26">SVFStat</a> ()</td></tr>
|
|
110
|
+
<tr class="separator:ad22433722f7c71df19a891a5b5039d26 inherit pub_methods_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
111
|
+
<tr class="memitem:a135ac9973ebfef4680d343320453ff52 inherit pub_methods_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#a135ac9973ebfef4680d343320453ff52">~SVFStat</a> ()</td></tr>
|
|
112
|
+
<tr class="separator:a135ac9973ebfef4680d343320453ff52 inherit pub_methods_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
113
|
+
<tr class="memitem:a730cc814fede3edb563aa9957c869e9e inherit pub_methods_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#a730cc814fede3edb563aa9957c869e9e">startClk</a> ()</td></tr>
|
|
114
|
+
<tr class="separator:a730cc814fede3edb563aa9957c869e9e inherit pub_methods_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
115
|
+
<tr class="memitem:a1b7f1e3381de87f75f06cddb9c6c1ec1 inherit pub_methods_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#a1b7f1e3381de87f75f06cddb9c6c1ec1">endClk</a> ()</td></tr>
|
|
116
|
+
<tr class="separator:a1b7f1e3381de87f75f06cddb9c6c1ec1 inherit pub_methods_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
117
|
+
<tr class="memitem:ab03780f736bed7861c9be14637e37ba3 inherit pub_methods_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#ab03780f736bed7861c9be14637e37ba3">performStatPerQuery</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>)</td></tr>
|
|
118
|
+
<tr class="separator:ab03780f736bed7861c9be14637e37ba3 inherit pub_methods_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
119
|
+
<tr class="memitem:a2dd8ce8bb1970344533babb9fc8ddd02 inherit pub_methods_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#a2dd8ce8bb1970344533babb9fc8ddd02">printStatPerQuery</a> (<a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>, const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> &)</td></tr>
|
|
120
|
+
<tr class="separator:a2dd8ce8bb1970344533babb9fc8ddd02 inherit pub_methods_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
133
121
|
</table><table class="memberdecls">
|
|
134
122
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
|
|
135
123
|
Public Attributes</h2></td></tr>
|
|
136
|
-
<tr class="memitem:
|
|
137
|
-
<tr class="separator:afa718535839a939e51afc0f8c1fbdac6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
138
|
-
<tr class="memitem:afdb975520329be0c33cc7bdd51ba7031"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTAStat.html#a7e8f9f9c1662822f3f8bd016db84e1e6">NUMStatMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a></td></tr>
|
|
124
|
+
<tr class="memitem:afdb975520329be0c33cc7bdd51ba7031"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFStat.html#ab810863d70cb2f5b4e312d07eae51227">NUMStatMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a></td></tr>
|
|
139
125
|
<tr class="separator:afdb975520329be0c33cc7bdd51ba7031"><td class="memSeparator" colspan="2"> </td></tr>
|
|
140
|
-
<tr class="memitem:a3724756ac0527ba3d199be32e38c6337"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1PTAStat.html#a28f304e7095f3843ca4cc017bc1f7b10">TIMEStatMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#a3724756ac0527ba3d199be32e38c6337">timeStatMap</a></td></tr>
|
|
141
|
-
<tr class="separator:a3724756ac0527ba3d199be32e38c6337"><td class="memSeparator" colspan="2"> </td></tr>
|
|
142
126
|
<tr class="memitem:a5b4095f427c9c7b9ec0db497ba33baea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#aa7b6a13e52671de8524b130738aeb564">NodeBS</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#a5b4095f427c9c7b9ec0db497ba33baea">localVarInRecursion</a></td></tr>
|
|
143
127
|
<tr class="separator:a5b4095f427c9c7b9ec0db497ba33baea"><td class="memSeparator" colspan="2"> </td></tr>
|
|
144
128
|
<tr class="memitem:a59e0fe6fa506f1cf319b5acaf9d28be9"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#a59e0fe6fa506f1cf319b5acaf9d28be9">startTime</a></td></tr>
|
|
145
129
|
<tr class="separator:a59e0fe6fa506f1cf319b5acaf9d28be9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
146
130
|
<tr class="memitem:a267ba4aac2e7ceb65f008f9486d3d9f7"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#a267ba4aac2e7ceb65f008f9486d3d9f7">endTime</a></td></tr>
|
|
147
131
|
<tr class="separator:a267ba4aac2e7ceb65f008f9486d3d9f7"><td class="memSeparator" colspan="2"> </td></tr>
|
|
132
|
+
<tr class="inherit_header pub_attribs_classSVF_1_1SVFStat"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_classSVF_1_1SVFStat')"><img src="closed.png" alt="-"/> Public Attributes inherited from <a class="el" href="classSVF_1_1SVFStat.html">SVF::SVFStat</a></td></tr>
|
|
133
|
+
<tr class="memitem:a07b6f8cb424b84b468c4518140fa3a41 inherit pub_attribs_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFStat.html#ab810863d70cb2f5b4e312d07eae51227">NUMStatMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a></td></tr>
|
|
134
|
+
<tr class="separator:a07b6f8cb424b84b468c4518140fa3a41 inherit pub_attribs_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
135
|
+
<tr class="memitem:a5383691a34426a1a997b5eed387f1831 inherit pub_attribs_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SVFStat.html#aeded7780a3f826b3efab971807e2dd98">TIMEStatMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a></td></tr>
|
|
136
|
+
<tr class="separator:a5383691a34426a1a997b5eed387f1831 inherit pub_attribs_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
137
|
+
<tr class="memitem:abd7a79d1fe50110a0c1d448027492669 inherit pub_attribs_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#abd7a79d1fe50110a0c1d448027492669">startTime</a></td></tr>
|
|
138
|
+
<tr class="separator:abd7a79d1fe50110a0c1d448027492669 inherit pub_attribs_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
139
|
+
<tr class="memitem:a8b01f1564408b51f28c107454bf9068d inherit pub_attribs_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#a8b01f1564408b51f28c107454bf9068d">endTime</a></td></tr>
|
|
140
|
+
<tr class="separator:a8b01f1564408b51f28c107454bf9068d inherit pub_attribs_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
148
141
|
</table><table class="memberdecls">
|
|
149
142
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
|
|
150
143
|
Static Public Attributes</h2></td></tr>
|
|
@@ -318,68 +311,27 @@ Private Attributes</h2></td></tr>
|
|
|
318
311
|
<tr class="separator:a608441b95be0861d8c1b0a035281f4d5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
319
312
|
<tr class="memitem:a194734855aa1c9e0ba891f1085d50d5d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1PTAStat.html#a194734855aa1c9e0ba891f1085d50d5d">moduleName</a></td></tr>
|
|
320
313
|
<tr class="separator:a194734855aa1c9e0ba891f1085d50d5d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
314
|
+
</table><table class="memberdecls">
|
|
315
|
+
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
|
|
316
|
+
Additional Inherited Members</h2></td></tr>
|
|
317
|
+
<tr class="inherit_header pub_types_classSVF_1_1SVFStat"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classSVF_1_1SVFStat')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="classSVF_1_1SVFStat.html">SVF::SVFStat</a></td></tr>
|
|
318
|
+
<tr class="memitem:a4f47da512cfa8f94fddaddc65334b454 inherit pub_types_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#a4f47da512cfa8f94fddaddc65334b454">ClockType</a> { <a class="el" href="classSVF_1_1SVFStat.html#a4f47da512cfa8f94fddaddc65334b454a4daec28631d54e09b587e78707ab54fc">Wall</a>,
|
|
319
|
+
<a class="el" href="classSVF_1_1SVFStat.html#a4f47da512cfa8f94fddaddc65334b454ad58693e596aa4088fa4a05065f9c0ffa">CPU</a>
|
|
320
|
+
}</td></tr>
|
|
321
|
+
<tr class="separator:a4f47da512cfa8f94fddaddc65334b454 inherit pub_types_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
322
|
+
<tr class="memitem:ab810863d70cb2f5b4e312d07eae51227 inherit pub_types_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#aedf0d6718ca176e0b9e17ab4b30729c6">OrderedMap</a>< const char *, <a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#ab810863d70cb2f5b4e312d07eae51227">NUMStatMap</a></td></tr>
|
|
323
|
+
<tr class="separator:ab810863d70cb2f5b4e312d07eae51227 inherit pub_types_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
324
|
+
<tr class="memitem:aeded7780a3f826b3efab971807e2dd98 inherit pub_types_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#aedf0d6718ca176e0b9e17ab4b30729c6">OrderedMap</a>< const char *, double > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#aeded7780a3f826b3efab971807e2dd98">TIMEStatMap</a></td></tr>
|
|
325
|
+
<tr class="separator:aeded7780a3f826b3efab971807e2dd98 inherit pub_types_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
326
|
+
<tr class="inherit_header pub_static_methods_classSVF_1_1SVFStat"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classSVF_1_1SVFStat')"><img src="closed.png" alt="-"/> Static Public Member Functions inherited from <a class="el" href="classSVF_1_1SVFStat.html">SVF::SVFStat</a></td></tr>
|
|
327
|
+
<tr class="memitem:ac9d390c417df6f6af6b274618b87010d inherit pub_static_methods_classSVF_1_1SVFStat"><td class="memItemLeft" align="right" valign="top">static double </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1SVFStat.html#ac9d390c417df6f6af6b274618b87010d">getClk</a> (bool mark=<a class="el" href="cJSON_8cpp.html#a65e9886d74aaee76545e83dd09011727">false</a>)</td></tr>
|
|
328
|
+
<tr class="separator:ac9d390c417df6f6af6b274618b87010d inherit pub_static_methods_classSVF_1_1SVFStat"><td class="memSeparator" colspan="2"> </td></tr>
|
|
321
329
|
</table>
|
|
322
330
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
323
331
|
<div class="textblock"><p>Pointer Analysis Statistics </p>
|
|
324
332
|
|
|
325
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
326
|
-
</div><h2 class="groupheader">
|
|
327
|
-
<a id="a7e8f9f9c1662822f3f8bd016db84e1e6"></a>
|
|
328
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a7e8f9f9c1662822f3f8bd016db84e1e6">◆ </a></span>NUMStatMap</h2>
|
|
329
|
-
|
|
330
|
-
<div class="memitem">
|
|
331
|
-
<div class="memproto">
|
|
332
|
-
<table class="memname">
|
|
333
|
-
<tr>
|
|
334
|
-
<td class="memname">typedef <a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a><const char*,<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>> <a class="el" href="classSVF_1_1PTAStat.html#a7e8f9f9c1662822f3f8bd016db84e1e6">SVF::PTAStat::NUMStatMap</a></td>
|
|
335
|
-
</tr>
|
|
336
|
-
</table>
|
|
337
|
-
</div><div class="memdoc">
|
|
338
|
-
|
|
339
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00121">121</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
340
|
-
|
|
341
|
-
</div>
|
|
342
|
-
</div>
|
|
343
|
-
<a id="a28f304e7095f3843ca4cc017bc1f7b10"></a>
|
|
344
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a28f304e7095f3843ca4cc017bc1f7b10">◆ </a></span>TIMEStatMap</h2>
|
|
345
|
-
|
|
346
|
-
<div class="memitem">
|
|
347
|
-
<div class="memproto">
|
|
348
|
-
<table class="memname">
|
|
349
|
-
<tr>
|
|
350
|
-
<td class="memname">typedef <a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a><const char*,double> <a class="el" href="classSVF_1_1PTAStat.html#a28f304e7095f3843ca4cc017bc1f7b10">SVF::PTAStat::TIMEStatMap</a></td>
|
|
351
|
-
</tr>
|
|
352
|
-
</table>
|
|
353
|
-
</div><div class="memdoc">
|
|
354
|
-
|
|
355
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00123">123</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
356
|
-
|
|
357
|
-
</div>
|
|
358
|
-
</div>
|
|
359
|
-
<h2 class="groupheader">Member Enumeration Documentation</h2>
|
|
360
|
-
<a id="a926cd5ab95f4f42ffe264413a32725cf"></a>
|
|
361
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a926cd5ab95f4f42ffe264413a32725cf">◆ </a></span>ClockType</h2>
|
|
362
|
-
|
|
363
|
-
<div class="memitem">
|
|
364
|
-
<div class="memproto">
|
|
365
|
-
<table class="memname">
|
|
366
|
-
<tr>
|
|
367
|
-
<td class="memname">enum <a class="el" href="classSVF_1_1PTAStat.html#a926cd5ab95f4f42ffe264413a32725cf">SVF::PTAStat::ClockType</a></td>
|
|
368
|
-
</tr>
|
|
369
|
-
</table>
|
|
370
|
-
</div><div class="memdoc">
|
|
371
|
-
<table class="fieldtable">
|
|
372
|
-
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a926cd5ab95f4f42ffe264413a32725cfa6c9d7a9709df10eb67ce27e744e0f61c"></a>Wall </td><td class="fielddoc"></td></tr>
|
|
373
|
-
<tr><td class="fieldname"><a id="a926cd5ab95f4f42ffe264413a32725cfa518df17b11048afda951359227f53d2d"></a>CPU </td><td class="fielddoc"></td></tr>
|
|
374
|
-
</table>
|
|
375
|
-
|
|
376
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00125">125</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
377
|
-
<div class="fragment"><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  <a class="code" href="classSVF_1_1PTAStat.html#a926cd5ab95f4f42ffe264413a32725cfa6c9d7a9709df10eb67ce27e744e0f61c">Wall</a>,</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>  <a class="code" href="classSVF_1_1PTAStat.html#a926cd5ab95f4f42ffe264413a32725cfa518df17b11048afda951359227f53d2d">CPU</a>,</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  };</div><div class="ttc" id="classSVF_1_1PTAStat_html_a926cd5ab95f4f42ffe264413a32725cfa518df17b11048afda951359227f53d2d"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a926cd5ab95f4f42ffe264413a32725cfa518df17b11048afda951359227f53d2d">SVF::PTAStat::CPU</a></div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00128">PTAStat.h:128</a></div></div>
|
|
378
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a926cd5ab95f4f42ffe264413a32725cfa6c9d7a9709df10eb67ce27e744e0f61c"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a926cd5ab95f4f42ffe264413a32725cfa6c9d7a9709df10eb67ce27e744e0f61c">SVF::PTAStat::Wall</a></div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00127">PTAStat.h:127</a></div></div>
|
|
379
|
-
</div><!-- fragment -->
|
|
380
|
-
</div>
|
|
381
|
-
</div>
|
|
382
|
-
<h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
333
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00048">48</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
334
|
+
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
383
335
|
<a id="ac9b65b591200c16c420fbd26710b448f"></a>
|
|
384
336
|
<h2 class="memtitle"><span class="permalink"><a href="#ac9b65b591200c16c420fbd26710b448f">◆ </a></span>PTAStat()</h2>
|
|
385
337
|
|
|
@@ -396,11 +348,11 @@ Private Attributes</h2></td></tr>
|
|
|
396
348
|
</table>
|
|
397
349
|
</div><div class="memdoc">
|
|
398
350
|
|
|
399
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8cpp_source.html#
|
|
400
|
-
<div class="fragment"><div class="line"><a name="
|
|
401
|
-
<div class="ttc" id="
|
|
402
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a59e0fe6fa506f1cf319b5acaf9d28be9"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a59e0fe6fa506f1cf319b5acaf9d28be9">SVF::PTAStat::startTime</a></div><div class="ttdeci">double startTime</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
403
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a608441b95be0861d8c1b0a035281f4d5"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">SVF::PTAStat::pta</a></div><div class="ttdeci">PointerAnalysis * pta</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
351
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8cpp_source.html#l00109">109</a> of file <a class="el" href="PTAStat_8cpp_source.html">PTAStat.cpp</a>.</p>
|
|
352
|
+
<div class="fragment"><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  : <a class="code" href="classSVF_1_1SVFStat.html#ad22433722f7c71df19a891a5b5039d26">SVFStat</a>(), <a class="code" href="classSVF_1_1PTAStat.html#a59e0fe6fa506f1cf319b5acaf9d28be9">startTime</a>(0), <a class="code" href="classSVF_1_1PTAStat.html#a267ba4aac2e7ceb65f008f9486d3d9f7">endTime</a>(0), <a class="code" href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">pta</a>(p)</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span> {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span> }</div><div class="ttc" id="classSVF_1_1SVFStat_html_ad22433722f7c71df19a891a5b5039d26"><div class="ttname"><a href="classSVF_1_1SVFStat.html#ad22433722f7c71df19a891a5b5039d26">SVF::SVFStat::SVFStat</a></div><div class="ttdeci">SVFStat()</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8cpp_source.html#l00035">SVFStat.cpp:35</a></div></div>
|
|
353
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a267ba4aac2e7ceb65f008f9486d3d9f7"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a267ba4aac2e7ceb65f008f9486d3d9f7">SVF::PTAStat::endTime</a></div><div class="ttdeci">double endTime</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00127">PTAStat.h:127</a></div></div>
|
|
354
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a59e0fe6fa506f1cf319b5acaf9d28be9"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a59e0fe6fa506f1cf319b5acaf9d28be9">SVF::PTAStat::startTime</a></div><div class="ttdeci">double startTime</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00126">PTAStat.h:126</a></div></div>
|
|
355
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a608441b95be0861d8c1b0a035281f4d5"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">SVF::PTAStat::pta</a></div><div class="ttdeci">PointerAnalysis * pta</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00138">PTAStat.h:138</a></div></div>
|
|
404
356
|
</div><!-- fragment -->
|
|
405
357
|
</div>
|
|
406
358
|
</div>
|
|
@@ -427,8 +379,8 @@ Private Attributes</h2></td></tr>
|
|
|
427
379
|
</table>
|
|
428
380
|
</div><div class="memdoc">
|
|
429
381
|
|
|
430
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
431
|
-
<div class="fragment"><div class="line"><a name="
|
|
382
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00121">121</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
383
|
+
<div class="fragment"><div class="line"><a name="l00121"></a><span class="lineno"> 121</span> {}</div></div><!-- fragment -->
|
|
432
384
|
</div>
|
|
433
385
|
</div>
|
|
434
386
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
@@ -480,22 +432,22 @@ Private Attributes</h2></td></tr>
|
|
|
480
432
|
</table>
|
|
481
433
|
</div><div class="memdoc">
|
|
482
434
|
|
|
483
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8cpp_source.html#
|
|
484
|
-
<div class="fragment"><div class="line"><a name="
|
|
435
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8cpp_source.html#l00342">342</a> of file <a class="el" href="PTAStat_8cpp_source.html">PTAStat.cpp</a>.</p>
|
|
436
|
+
<div class="fragment"><div class="line"><a name="l00343"></a><span class="lineno"> 343</span> {</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* module = <a class="code" href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">getModule</a>();</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfBB_2Succ = 0;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfBB_3Succ = 0;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  <span class="keywordflow">for</span> (<a class="code" href="classSVF_1_1SVFModule.html#ab86e221a93bec67a2ecb7cb53315f569">SVFModule::llvm_const_iterator</a> funIter = module-><a class="code" href="classSVF_1_1SVFModule.html#a648542aa5c4b487ad5aa12a39d15e951">llvmFunBegin</a>(), funEiter = module-><a class="code" href="classSVF_1_1SVFModule.html#af38d0f831967d6d8391a4c84e58d6519">llvmFunEnd</a>();</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  funIter != funEiter; ++funIter)</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  {</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">Function</a>* func = *funIter;</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  <span class="keywordflow">for</span> (Function::const_iterator bbIt = func->begin(), bbEit = func->end();</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  bbIt != bbEit; ++bbIt)</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>  {</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  <span class="keyword">const</span> <a class="code" href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">BasicBlock</a>& bb = *bbIt;</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfSucc = bb.getTerminator()->getNumSuccessors();</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <span class="keywordflow">if</span> (numOfSucc == 2)</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  numOfBB_2Succ++;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (numOfSucc > 2)</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  numOfBB_3Succ++;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  }</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  }</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span> </div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<span class="stringliteral">"BBWith2Succ"</span>] = numOfBB_2Succ;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<span class="stringliteral">"BBWith3Succ"</span>] = numOfBB_3Succ;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span> }</div><div class="ttc" id="classSVF_1_1SVFModule_html_af38d0f831967d6d8391a4c84e58d6519"><div class="ttname"><a href="classSVF_1_1SVFModule.html#af38d0f831967d6d8391a4c84e58d6519">SVF::SVFModule::llvmFunEnd</a></div><div class="ttdeci">llvm_iterator llvmFunEnd()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00147">SVFModule.h:147</a></div></div>
|
|
485
437
|
<div class="ttc" id="namespaceSVF_html_a23bf614858f168b6ad76e0233cec9965"><div class="ttname"><a href="namespaceSVF.html#a23bf614858f168b6ad76e0233cec9965">SVF::BasicBlock</a></div><div class="ttdeci">llvm::BasicBlock BasicBlock</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00071">BasicTypes.h:71</a></div></div>
|
|
486
438
|
<div class="ttc" id="classSVF_1_1SVFModule_html"><div class="ttname"><a href="classSVF_1_1SVFModule.html">SVF::SVFModule</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00041">SVFModule.h:41</a></div></div>
|
|
487
439
|
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00085">SVFBasicTypes.h:85</a></div></div>
|
|
488
440
|
<div class="ttc" id="classSVF_1_1SVFModule_html_a648542aa5c4b487ad5aa12a39d15e951"><div class="ttname"><a href="classSVF_1_1SVFModule.html#a648542aa5c4b487ad5aa12a39d15e951">SVF::SVFModule::llvmFunBegin</a></div><div class="ttdeci">llvm_iterator llvmFunBegin()</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00139">SVFModule.h:139</a></div></div>
|
|
489
441
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ad8b71cebf46deaf60e2cd4f6d6bb9433"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ad8b71cebf46deaf60e2cd4f6d6bb9433">SVF::PointerAnalysis::getModule</a></div><div class="ttdeci">SVFModule * getModule() const</div><div class="ttdoc">Module. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00213">PointerAnalysis.h:213</a></div></div>
|
|
490
|
-
<div class="ttc" id="
|
|
442
|
+
<div class="ttc" id="classSVF_1_1SVFStat_html_a07b6f8cb424b84b468c4518140fa3a41"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">SVF::SVFStat::generalNumMap</a></div><div class="ttdeci">NUMStatMap generalNumMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00073">SVFStat.h:73</a></div></div>
|
|
491
443
|
<div class="ttc" id="namespaceSVF_html_a5faee14fa1dd41447bc73ac365fe33c1"><div class="ttname"><a href="namespaceSVF.html#a5faee14fa1dd41447bc73ac365fe33c1">SVF::Function</a></div><div class="ttdeci">llvm::Function Function</div><div class="ttdef"><b>Definition:</b> <a href="Util_2BasicTypes_8h_source.html#l00070">BasicTypes.h:70</a></div></div>
|
|
492
444
|
<div class="ttc" id="classSVF_1_1SVFModule_html_ab86e221a93bec67a2ecb7cb53315f569"><div class="ttname"><a href="classSVF_1_1SVFModule.html#ab86e221a93bec67a2ecb7cb53315f569">SVF::SVFModule::llvm_const_iterator</a></div><div class="ttdeci">LLVMFunctionSetType::const_iterator llvm_const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00054">SVFModule.h:54</a></div></div>
|
|
493
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a608441b95be0861d8c1b0a035281f4d5"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">SVF::PTAStat::pta</a></div><div class="ttdeci">PointerAnalysis * pta</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
445
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a608441b95be0861d8c1b0a035281f4d5"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">SVF::PTAStat::pta</a></div><div class="ttdeci">PointerAnalysis * pta</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00138">PTAStat.h:138</a></div></div>
|
|
494
446
|
</div><!-- fragment -->
|
|
495
447
|
</div>
|
|
496
448
|
</div>
|
|
497
|
-
<a id="
|
|
498
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
449
|
+
<a id="af2eb88d1563be9e6290a5fc69bec3bbe"></a>
|
|
450
|
+
<h2 class="memtitle"><span class="permalink"><a href="#af2eb88d1563be9e6290a5fc69bec3bbe">◆ </a></span>callgraphStat()</h2>
|
|
499
451
|
|
|
500
452
|
<div class="memitem">
|
|
501
453
|
<div class="memproto">
|
|
@@ -512,15 +464,18 @@ Private Attributes</h2></td></tr>
|
|
|
512
464
|
</table>
|
|
513
465
|
</td>
|
|
514
466
|
<td class="mlabels-right">
|
|
515
|
-
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
467
|
+
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
|
|
516
468
|
</tr>
|
|
517
469
|
</table>
|
|
518
470
|
</div><div class="memdoc">
|
|
519
471
|
|
|
520
|
-
<p
|
|
521
|
-
<div class="fragment"><div class="line"><a name="l00237"></a><span class="lineno"> 237</span> {</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span> </div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  <a class="code" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a>* graph = <a class="code" href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>();</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <a class="code" href="classSVF_1_1SCCDetection.html">PointerAnalysis::CallGraphSCC</a>* callgraphSCC = <span class="keyword">new</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">PointerAnalysis::CallGraphSCC</a>(graph);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a123b5006a6da7053e5e357140da3c5a3">find</a>();</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span> </div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  <span class="keywordtype">unsigned</span> totalNode = 0;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <span class="keywordtype">unsigned</span> totalCycle = 0;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  <span class="keywordtype">unsigned</span> nodeInCycle = 0;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  <span class="keywordtype">unsigned</span> maxNodeInCycle = 0;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  <span class="keywordtype">unsigned</span> totalEdge = 0;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  <span class="keywordtype">unsigned</span> edgeInCycle = 0;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span> </div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a> sccRepNodeSet;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  <a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">PTACallGraph::iterator</a> it = graph-><a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>();</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  <a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">PTACallGraph::iterator</a> eit = graph-><a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>();</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  <span class="keywordflow">for</span> (; it != eit; ++it)</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  {</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  totalNode++;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  <span class="keywordflow">if</span>(callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a5d699af73b1e7ad4e3a5f6d26b8b6d15">isInCycle</a>(it->first))</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  {</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  sccRepNodeSet.insert(callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(it->first));</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  nodeInCycle++;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>& subNodes = callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a6ab5eff6a576e6d8703c1ea29b7f425d">subNodes</a>(it->first);</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="keywordflow">if</span>(subNodes.<a class="code" href="classSVF_1_1SparseBitVector.html#a9f96e6a886fa69e07cda5dbfaed8b7c9">count</a>() > maxNodeInCycle)</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  maxNodeInCycle = subNodes.<a class="code" href="classSVF_1_1SparseBitVector.html#a9f96e6a886fa69e07cda5dbfaed8b7c9">count</a>();</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  }</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span> </div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  <a class="code" href="classSVF_1_1PTACallGraphNode.html#adf17f5699c9f40ffc8837e813e3af3ec">PTACallGraphNode::const_iterator</a> edgeIt = it->second->InEdgeBegin();</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  <a class="code" href="classSVF_1_1PTACallGraphNode.html#adf17f5699c9f40ffc8837e813e3af3ec">PTACallGraphNode::const_iterator</a> edgeEit = it->second->InEdgeEnd();</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  <span class="keywordflow">for</span> (; edgeIt != edgeEit; ++edgeIt)</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  {</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  <a class="code" href="classSVF_1_1PTACallGraphEdge.html">PTACallGraphEdge</a> *edge = *edgeIt;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  totalEdge+= edge-><a class="code" href="classSVF_1_1PTACallGraphEdge.html#af0e9f86be3cf263b868f80d374641fc9">getDirectCalls</a>().size() + edge-><a class="code" href="classSVF_1_1PTACallGraphEdge.html#a76aa19edf03a4cacfa3e27a21abfcd07">getIndirectCalls</a>().size();</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  <span class="keywordflow">if</span>(callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(edge-><a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>()) == callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(edge-><a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>()))</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>  {</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  edgeInCycle+=edge-><a class="code" href="classSVF_1_1PTACallGraphEdge.html#af0e9f86be3cf263b868f80d374641fc9">getDirectCalls</a>().size() + edge-><a class="code" href="classSVF_1_1PTACallGraphEdge.html#a76aa19edf03a4cacfa3e27a21abfcd07">getIndirectCalls</a>().size();</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  }</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  }</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  }</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  totalCycle = sccRepNodeSet.size();</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"TotalNode"</span>] = totalNode;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"TotalCycle"</span>] = totalCycle;</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"NodeInCycle"</span>] = nodeInCycle;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"MaxNodeInCycle"</span>] = maxNodeInCycle;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"TotalEdge"</span>] = totalEdge;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"CalRetPairInCycle"</span>] = edgeInCycle;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span> </div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  <a class="code" href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">PTAStat::printStat</a>(<span class="stringliteral">"CallGraph Stats"</span>);</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span> </div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  <span class="keyword">delete</span> callgraphSCC;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span> }</div><div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00365">GenericGraph.h:365</a></div></div>
|
|
472
|
+
<p>Reimplemented from <a class="el" href="classSVF_1_1SVFStat.html#a21e6767fbe2c3cdea4aac30199dfd2f0">SVF::SVFStat</a>.</p>
|
|
473
|
+
|
|
474
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8cpp_source.html#l00217">217</a> of file <a class="el" href="PTAStat_8cpp_source.html">PTAStat.cpp</a>.</p>
|
|
475
|
+
<div class="fragment"><div class="line"><a name="l00218"></a><span class="lineno"> 218</span> {</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span> </div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <a class="code" href="classSVF_1_1PTACallGraph.html">PTACallGraph</a>* graph = <a class="code" href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#a7c9b7e5fe37ae31ba84d167945ca57df">getPTACallGraph</a>();</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  <a class="code" href="classSVF_1_1SCCDetection.html">PointerAnalysis::CallGraphSCC</a>* callgraphSCC = <span class="keyword">new</span> <a class="code" href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">PointerAnalysis::CallGraphSCC</a>(graph);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a123b5006a6da7053e5e357140da3c5a3">find</a>();</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <span class="keywordtype">unsigned</span> totalNode = 0;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <span class="keywordtype">unsigned</span> totalCycle = 0;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <span class="keywordtype">unsigned</span> nodeInCycle = 0;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  <span class="keywordtype">unsigned</span> maxNodeInCycle = 0;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  <span class="keywordtype">unsigned</span> totalEdge = 0;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  <span class="keywordtype">unsigned</span> edgeInCycle = 0;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span> </div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <a class="code" href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">NodeSet</a> sccRepNodeSet;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  <a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">PTACallGraph::iterator</a> it = graph-><a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>();</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">PTACallGraph::iterator</a> eit = graph-><a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>();</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  <span class="keywordflow">for</span> (; it != eit; ++it)</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  {</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  totalNode++;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  <span class="keywordflow">if</span>(callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a5d699af73b1e7ad4e3a5f6d26b8b6d15">isInCycle</a>(it->first))</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  {</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  sccRepNodeSet.insert(callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(it->first));</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  nodeInCycle++;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SparseBitVector.html">NodeBS</a>& subNodes = callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a6ab5eff6a576e6d8703c1ea29b7f425d">subNodes</a>(it->first);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  <span class="keywordflow">if</span>(subNodes.<a class="code" href="classSVF_1_1SparseBitVector.html#a9f96e6a886fa69e07cda5dbfaed8b7c9">count</a>() > maxNodeInCycle)</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  maxNodeInCycle = subNodes.<a class="code" href="classSVF_1_1SparseBitVector.html#a9f96e6a886fa69e07cda5dbfaed8b7c9">count</a>();</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  }</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span> </div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  <a class="code" href="classSVF_1_1PTACallGraphNode.html#adf17f5699c9f40ffc8837e813e3af3ec">PTACallGraphNode::const_iterator</a> edgeIt = it->second->InEdgeBegin();</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  <a class="code" href="classSVF_1_1PTACallGraphNode.html#adf17f5699c9f40ffc8837e813e3af3ec">PTACallGraphNode::const_iterator</a> edgeEit = it->second->InEdgeEnd();</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  <span class="keywordflow">for</span> (; edgeIt != edgeEit; ++edgeIt)</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  {</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  <a class="code" href="classSVF_1_1PTACallGraphEdge.html">PTACallGraphEdge</a> *edge = *edgeIt;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  totalEdge+= edge-><a class="code" href="classSVF_1_1PTACallGraphEdge.html#af0e9f86be3cf263b868f80d374641fc9">getDirectCalls</a>().size() + edge-><a class="code" href="classSVF_1_1PTACallGraphEdge.html#a76aa19edf03a4cacfa3e27a21abfcd07">getIndirectCalls</a>().size();</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  <span class="keywordflow">if</span>(callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(edge-><a class="code" href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">getSrcID</a>()) == callgraphSCC-><a class="code" href="classSVF_1_1SCCDetection.html#a3a5fdc9330a657240f77199f5aee602d">repNode</a>(edge-><a class="code" href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">getDstID</a>()))</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  {</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  edgeInCycle+=edge-><a class="code" href="classSVF_1_1PTACallGraphEdge.html#af0e9f86be3cf263b868f80d374641fc9">getDirectCalls</a>().size() + edge-><a class="code" href="classSVF_1_1PTACallGraphEdge.html#a76aa19edf03a4cacfa3e27a21abfcd07">getIndirectCalls</a>().size();</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  }</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  }</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  }</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span> </div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  totalCycle = sccRepNodeSet.size();</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span> </div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"TotalNode"</span>] = totalNode;</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"TotalCycle"</span>] = totalCycle;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"NodeInCycle"</span>] = nodeInCycle;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"MaxNodeInCycle"</span>] = maxNodeInCycle;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"TotalEdge"</span>] = totalEdge;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>[<span class="stringliteral">"CalRetPairInCycle"</span>] = edgeInCycle;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span> </div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  <a class="code" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">PTAStat::printStat</a>(<span class="stringliteral">"CallGraph Stats"</span>);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  <span class="keyword">delete</span> callgraphSCC;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span> }</div><div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00365">GenericGraph.h:365</a></div></div>
|
|
522
476
|
<div class="ttc" id="classSVF_1_1SCCDetection_html_a6ab5eff6a576e6d8703c1ea29b7f425d"><div class="ttname"><a href="classSVF_1_1SCCDetection.html#a6ab5eff6a576e6d8703c1ea29b7f425d">SVF::SCCDetection::subNodes</a></div><div class="ttdeci">const NodeBS & subNodes(NodeID n) const</div><div class="ttdoc">get all subnodes in one scc, if size is empty insert itself into the set </div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00173">SCC.h:173</a></div></div>
|
|
523
477
|
<div class="ttc" id="namespaceSVF_html_a212231734fa43d5c7414137deaac7df3"><div class="ttname"><a href="namespaceSVF.html#a212231734fa43d5c7414137deaac7df3">SVF::NodeSet</a></div><div class="ttdeci">Set< NodeID > NodeSet</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00122">SVFBasicTypes.h:122</a></div></div>
|
|
478
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_aca3e99ad83bddabee1dd565522691c78"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(std::string str="") override</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00273">PTAStat.cpp:273</a></div></div>
|
|
524
479
|
<div class="ttc" id="classSVF_1_1GenericEdge_html_ad9edb45e74ae675d9da82f5acf02d56e"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ad9edb45e74ae675d9da82f5acf02d56e">SVF::GenericEdge::getDstID</a></div><div class="ttdeci">NodeID getDstID() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00077">GenericGraph.h:77</a></div></div>
|
|
525
480
|
<div class="ttc" id="classSVF_1_1GenericEdge_html_ae6792506a0150a9400d635eceab7f9e7"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#ae6792506a0150a9400d635eceab7f9e7">SVF::GenericEdge::getSrcID</a></div><div class="ttdeci">NodeID getSrcID() const</div><div class="ttdoc">get methods of the components </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00073">GenericGraph.h:73</a></div></div>
|
|
526
481
|
<div class="ttc" id="classSVF_1_1SCCDetection_html_a123b5006a6da7053e5e357140da3c5a3"><div class="ttname"><a href="classSVF_1_1SCCDetection.html#a123b5006a6da7053e5e357140da3c5a3">SVF::SCCDetection::find</a></div><div class="ttdeci">void find(void)</div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00308">SCC.h:308</a></div></div>
|
|
@@ -538,14 +493,13 @@ Private Attributes</h2></td></tr>
|
|
|
538
493
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ac4ad73782f42f90ad7ac9c66edb27c69"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ac4ad73782f42f90ad7ac9c66edb27c69">SVF::PointerAnalysis::CallGraphSCC</a></div><div class="ttdeci">SCCDetection< PTACallGraph * > CallGraphSCC</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00107">PointerAnalysis.h:107</a></div></div>
|
|
539
494
|
<div class="ttc" id="classSVF_1_1PTACallGraphEdge_html_a76aa19edf03a4cacfa3e27a21abfcd07"><div class="ttname"><a href="classSVF_1_1PTACallGraphEdge.html#a76aa19edf03a4cacfa3e27a21abfcd07">SVF::PTACallGraphEdge::getIndirectCalls</a></div><div class="ttdeci">CallInstSet & getIndirectCalls()</div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00099">PTACallGraph.h:99</a></div></div>
|
|
540
495
|
<div class="ttc" id="classSVF_1_1SCCDetection_html_a5d699af73b1e7ad4e3a5f6d26b8b6d15"><div class="ttname"><a href="classSVF_1_1SCCDetection.html#a5d699af73b1e7ad4e3a5f6d26b8b6d15">SVF::SCCDetection::isInCycle</a></div><div class="ttdeci">bool isInCycle(NodeID n) const</div><div class="ttdoc">whether the node is in a cycle </div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00149">SCC.h:149</a></div></div>
|
|
541
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a608441b95be0861d8c1b0a035281f4d5"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">SVF::PTAStat::pta</a></div><div class="ttdeci">PointerAnalysis * pta</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
542
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_afdb975520329be0c33cc7bdd51ba7031"><div class="ttname"><a href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">SVF::PTAStat::PTNumStatMap</a></div><div class="ttdeci">NUMStatMap PTNumStatMap</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
543
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_aa5f455bfa79743b8e263431593d29bbf"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(string str="")</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00292">PTAStat.cpp:292</a></div></div>
|
|
496
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a608441b95be0861d8c1b0a035281f4d5"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">SVF::PTAStat::pta</a></div><div class="ttdeci">PointerAnalysis * pta</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00138">PTAStat.h:138</a></div></div>
|
|
497
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_afdb975520329be0c33cc7bdd51ba7031"><div class="ttname"><a href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">SVF::PTAStat::PTNumStatMap</a></div><div class="ttdeci">NUMStatMap PTNumStatMap</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00123">PTAStat.h:123</a></div></div>
|
|
544
498
|
</div><!-- fragment -->
|
|
545
499
|
</div>
|
|
546
500
|
</div>
|
|
547
|
-
<a id="
|
|
548
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
501
|
+
<a id="ad6de9d3f25c20705768000c987af0eb6"></a>
|
|
502
|
+
<h2 class="memtitle"><span class="permalink"><a href="#ad6de9d3f25c20705768000c987af0eb6">◆ </a></span>performStat()</h2>
|
|
549
503
|
|
|
550
504
|
<div class="memitem">
|
|
551
505
|
<div class="memproto">
|
|
@@ -554,7 +508,7 @@ Private Attributes</h2></td></tr>
|
|
|
554
508
|
<td class="mlabels-left">
|
|
555
509
|
<table class="memname">
|
|
556
510
|
<tr>
|
|
557
|
-
<td class="memname">
|
|
511
|
+
<td class="memname">void PTAStat::performStat </td>
|
|
558
512
|
<td>(</td>
|
|
559
513
|
<td class="paramname"></td><td>)</td>
|
|
560
514
|
<td></td>
|
|
@@ -562,93 +516,35 @@ Private Attributes</h2></td></tr>
|
|
|
562
516
|
</table>
|
|
563
517
|
</td>
|
|
564
518
|
<td class="mlabels-right">
|
|
565
|
-
<span class="mlabels"><span class="mlabel">
|
|
519
|
+
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
|
|
566
520
|
</tr>
|
|
567
521
|
</table>
|
|
568
522
|
</div><div class="memdoc">
|
|
569
523
|
|
|
570
|
-
<p
|
|
571
|
-
<div class="fragment"><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  <a class="code" href="classSVF_1_1PTAStat.html#a267ba4aac2e7ceb65f008f9486d3d9f7">endTime</a> = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  }</div><div class="ttc" id="classSVF_1_1PTAStat_html_a267ba4aac2e7ceb65f008f9486d3d9f7"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a267ba4aac2e7ceb65f008f9486d3d9f7">SVF::PTAStat::endTime</a></div><div class="ttdeci">double endTime</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00153">PTAStat.h:153</a></div></div>
|
|
572
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
|
|
573
|
-
</div><!-- fragment -->
|
|
574
|
-
</div>
|
|
575
|
-
</div>
|
|
576
|
-
<a id="a3c4eaa1695ea13405911ae1621f98edc"></a>
|
|
577
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a3c4eaa1695ea13405911ae1621f98edc">◆ </a></span>getClk()</h2>
|
|
524
|
+
<p>Implements <a class="el" href="classSVF_1_1SVFStat.html#a6113f8d009c42519f3a43913a0c02b95">SVF::SVFStat</a>.</p>
|
|
578
525
|
|
|
579
|
-
<
|
|
580
|
-
<div class="memproto">
|
|
581
|
-
<table class="mlabels">
|
|
582
|
-
<tr>
|
|
583
|
-
<td class="mlabels-left">
|
|
584
|
-
<table class="memname">
|
|
585
|
-
<tr>
|
|
586
|
-
<td class="memname">double PTAStat::getClk </td>
|
|
587
|
-
<td>(</td>
|
|
588
|
-
<td class="paramtype">bool </td>
|
|
589
|
-
<td class="paramname"><em>mark</em> = <code><a class="el" href="cJSON_8cpp.html#a65e9886d74aaee76545e83dd09011727">false</a></code></td><td>)</td>
|
|
590
|
-
<td></td>
|
|
591
|
-
</tr>
|
|
592
|
-
</table>
|
|
593
|
-
</td>
|
|
594
|
-
<td class="mlabels-right">
|
|
595
|
-
<span class="mlabels"><span class="mlabel">static</span></span> </td>
|
|
596
|
-
</tr>
|
|
597
|
-
</table>
|
|
598
|
-
</div><div class="memdoc">
|
|
599
|
-
<p>When mark is true, real clock is always returned. When mark is false, it is only returned when <a class="el" href="classSVF_1_1Options.html#a5cfcf1ddc44ff175c4766f88bf204c03">Options::MarkedClocksOnly</a> is not set. Default call for getClk is unmarked, while MarkedClocksOnly is false by default. </p>
|
|
526
|
+
<p>Reimplemented in <a class="el" href="classSVF_1_1VersionedFlowSensitiveStat.html#af202623692135ad746aed1be995c55fb">SVF::VersionedFlowSensitiveStat</a>, <a class="el" href="classSVF_1_1FlowSensitiveStat.html#a059047d05e9873a624e333162a460571">SVF::FlowSensitiveStat</a>, and <a class="el" href="classSVF_1_1AndersenStat.html#a66fee1c0ee5781152a2d489f8857ad43">SVF::AndersenStat</a>.</p>
|
|
600
527
|
|
|
601
528
|
<p class="definition">Definition at line <a class="el" href="PTAStat_8cpp_source.html#l00114">114</a> of file <a class="el" href="PTAStat_8cpp_source.html">PTAStat.cpp</a>.</p>
|
|
602
|
-
<div class="fragment"><div class="line"><a name="l00115"></a><span class="lineno"> 115</span> {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a5cfcf1ddc44ff175c4766f88bf204c03">Options::MarkedClocksOnly</a> && !mark) <span class="keywordflow">return</span> 0.0;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a6a62b34de8ec23899a8024e0450c43df">Options::ClockType</a> == ClockType::Wall)</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  {</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <span class="keyword">struct </span>timespec time;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  clock_gettime(CLOCK_MONOTONIC, &time);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keywordflow">return</span> (<span class="keywordtype">double</span>)(time.tv_nsec + time.tv_sec * 1000000000) / 1000000.0;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  }</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1Options.html#a6a62b34de8ec23899a8024e0450c43df">Options::ClockType</a> == ClockType::CPU)</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <span class="keywordflow">return</span> <a class="code" href="SVFBasicTypes_8h.html#af091e361d7961cb895ff2101eceed953">CLOCK_IN_MS</a>();</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  }</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  assert(<span class="keyword">false</span> && <span class="stringliteral">"PTAStat::getClk: unknown clock type"</span>);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  abort();</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> }</div><div class="ttc" id="SVFBasicTypes_8h_html_af091e361d7961cb895ff2101eceed953"><div class="ttname"><a href="SVFBasicTypes_8h.html#af091e361d7961cb895ff2101eceed953">CLOCK_IN_MS</a></div><div class="ttdeci">#define CLOCK_IN_MS()</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00183">SVFBasicTypes.h:183</a></div></div>
|
|
603
|
-
<div class="ttc" id="classSVF_1_1Options_html_a6a62b34de8ec23899a8024e0450c43df"><div class="ttname"><a href="classSVF_1_1Options.html#a6a62b34de8ec23899a8024e0450c43df">SVF::Options::ClockType</a></div><div class="ttdeci">static const llvm::cl::opt< enum PTAStat::ClockType > ClockType</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00023">Options.h:23</a></div></div>
|
|
604
|
-
<div class="ttc" id="classSVF_1_1Options_html_a5cfcf1ddc44ff175c4766f88bf204c03"><div class="ttname"><a href="classSVF_1_1Options.html#a5cfcf1ddc44ff175c4766f88bf204c03">SVF::Options::MarkedClocksOnly</a></div><div class="ttdeci">static const llvm::cl::opt< bool > MarkedClocksOnly</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00030">Options.h:30</a></div></div>
|
|
605
|
-
</div><!-- fragment -->
|
|
606
|
-
</div>
|
|
607
|
-
</div>
|
|
608
|
-
<a id="acfed70588cf921694db35990ec3c7497"></a>
|
|
609
|
-
<h2 class="memtitle"><span class="permalink"><a href="#acfed70588cf921694db35990ec3c7497">◆ </a></span>performStat()</h2>
|
|
610
|
-
|
|
611
|
-
<div class="memitem">
|
|
612
|
-
<div class="memproto">
|
|
613
|
-
<table class="mlabels">
|
|
614
|
-
<tr>
|
|
615
|
-
<td class="mlabels-left">
|
|
616
|
-
<table class="memname">
|
|
617
|
-
<tr>
|
|
618
|
-
<td class="memname">void PTAStat::performStat </td>
|
|
619
|
-
<td>(</td>
|
|
620
|
-
<td class="paramname"></td><td>)</td>
|
|
621
|
-
<td></td>
|
|
622
|
-
</tr>
|
|
623
|
-
</table>
|
|
624
|
-
</td>
|
|
625
|
-
<td class="mlabels-right">
|
|
626
|
-
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
627
|
-
</tr>
|
|
628
|
-
</table>
|
|
629
|
-
</div><div class="memdoc">
|
|
630
|
-
|
|
631
|
-
<p>Reimplemented in <a class="el" href="classSVF_1_1VersionedFlowSensitiveStat.html#af202623692135ad746aed1be995c55fb">SVF::VersionedFlowSensitiveStat</a>, <a class="el" href="classSVF_1_1SVFGStat.html#a037600bfff11659542f8595d8700dec4">SVF::SVFGStat</a>, <a class="el" href="classSVF_1_1FlowSensitiveStat.html#a059047d05e9873a624e333162a460571">SVF::FlowSensitiveStat</a>, <a class="el" href="classSVF_1_1MemSSAStat.html#a8b4b9466a676d2391c71d38e8be16bc9">SVF::MemSSAStat</a>, <a class="el" href="classSVF_1_1ICFGStat.html#aabe0779dc44ddc4e06300ea912cca39f">SVF::ICFGStat</a>, <a class="el" href="classSVF_1_1AndersenStat.html#a66fee1c0ee5781152a2d489f8857ad43">SVF::AndersenStat</a>, and <a class="el" href="classSVF_1_1DDAStat.html#a6055573ae1844cfc559ff81b3b9c325c">SVF::DDAStat</a>.</p>
|
|
632
|
-
|
|
633
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8cpp_source.html#l00133">133</a> of file <a class="el" href="PTAStat_8cpp_source.html">PTAStat.cpp</a>.</p>
|
|
634
|
-
<div class="fragment"><div class="line"><a name="l00134"></a><span class="lineno"> 134</span> {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  <a class="code" href="classSVF_1_1PTAStat.html#a1772bc87370b5625f71edd4476277064">callgraphStat</a>();</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = <a class="code" href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVFIR::getPAG</a>();</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfFunction = 0;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfGlobal = 0;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfStack = 0;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfHeap = 0;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfHasVarArray = 0;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfHasVarStruct = 0;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfHasConstArray = 0;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfHasConstStruct = 0;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfScalar = 0;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfConstant = 0;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> fiObjNumber = 0;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> fsObjNumber = 0;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set<SymID></a> memObjSet;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVFIR::iterator</a> it = pag-><a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(), eit = pag-><a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>(); it!=eit; ++it)</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  {</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a>* node = it->second;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1ObjVar.html">ObjVar</a>* obj = SVFUtil::dyn_cast<ObjVar>(node))</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  {</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* mem = obj->getMemObj();</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <span class="keywordflow">if</span> (memObjSet.insert(mem-><a class="code" href="classSVF_1_1MemObj.html#a3ab6f65ffbf6442daac4d3f70f2d3cb1">getId</a>()).second == <span class="keyword">false</span>)</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a7b890ca9e93b1c61cc6437b7e6a82a8c">isBlackHoleObj</a>())</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#ae1d14e2bf0be36cdadebf119822f607b">isFunction</a>())</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  numOfFunction++;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a40462512a99eb258d8cd442c38d812b4">isGlobalObj</a>())</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  numOfGlobal++;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#af7316c697eafc71d5fc93108da4e2cee">isStack</a>())</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  numOfStack++;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">isHeap</a>())</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  numOfHeap++;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a616e9f4d6f82a253f94391c47668b9a6">isVarArray</a>())</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  numOfHasVarArray++;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#ad1966c52f95775ac7d65c0ba6632c3cf">isVarStruct</a>())</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  numOfHasVarStruct++;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a7f828731597450f1d43b61413ab0e7bb">isConstantArray</a>())</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  numOfHasConstArray++;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a019a77516c403f1f3cc72917b810a41f">isConstantStruct</a>())</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  numOfHasConstStruct++;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a6dae1b3429c6049f0153ec006d329082">hasPtrObj</a>() == <span class="keyword">false</span>)</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  numOfScalar++;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a1a4ff4aaaf2573240a318e1b79328cd0">isConstDataOrConstGlobal</a>())</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  numOfConstant++;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">if</span> (mem-><a class="code" href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">isFieldInsensitive</a>())</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  fiObjNumber++;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  fsObjNumber++;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">isLocalVarInRecursiveFun</a>(node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>()))</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  {</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <a class="code" href="classSVF_1_1PTAStat.html#a5b4095f427c9c7b9ec0db497ba33baea">localVarInRecursion</a>.<a class="code" href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">set</a>(node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  }</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  }</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  }</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a1a4d418fd9e5413e7ffbbfe57f5e0560">TotalNumOfPointers</a>] = pag-><a class="code" href="classSVF_1_1IRGraph.html#a0212f3fe2f37363e8060f292c8cf7668">getValueNodeNum</a>() + pag-><a class="code" href="classSVF_1_1SVFIR.html#a8a24e0bf9f95fc1519d4013e0e82dec9">getFieldValNodeNum</a>();</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#acd9848f15aa359550e86c7b857df84ed">TotalNumOfObjects</a>] = pag-><a class="code" href="classSVF_1_1IRGraph.html#a82528aff779ccf8f723f57507dd2d991">getObjectNodeNum</a>();</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ac0e0a1c49d33e02f5cc0f21565ce627d">TotalNumOfFieldObjects</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#a3bbaafd80dfcae6ccc82c3d8b9d303ea">getFieldObjNodeNum</a>();</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#af6a6e3ea4c7f8e1c984bea8d5fb9a7c0">MaxStructSize</a>] = <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#abc7e567209010286a68634c700d76cca">getMaxStructSize</a>();</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a3afc0a36232a0388d8aa42c68219cb26">TotalNumOfEdges</a>] = pag-><a class="code" href="classSVF_1_1IRGraph.html#a821df0fcb66e4f0a5b10c295c24b7c2c">getPAGEdgeNum</a>();</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<span class="stringliteral">"TotalPTASVFStmts"</span>] = pag-><a class="code" href="classSVF_1_1IRGraph.html#a51485004eb28aab6620801205d13ef1b">getPTAPAGEdgeNum</a>();</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ad1a7e7aec8f272017be7d0b6acda86a4">NumberOfFieldInsensitiveObj</a>] = fiObjNumber;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ab62eb21c7dc03f68b0509c31451b2e98">NumberOfFieldSensitiveObj</a>] = fsObjNumber;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span> </div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ac5bf59a0a7a760c9fec5f22dedec5eb6">NumOfAddrs</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a0a9a0f650e864e89b7cbb3dc8c8aa197">SVFStmt::Addr</a>).size();</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a4aa7356142f51d942063be5a2910940f">NumOfLoads</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a62ac8480c43fcc657c631ec0003b15d5">SVFStmt::Load</a>).size();</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a656ad9980ff05af396ed6754c50916e7">NumOfStores</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc">SVFStmt::Store</a>).size();</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a97a8b662356fc89cdd2cb9463fa5578b">NumOfCopys</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVFStmt::Copy</a>).size();</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#acc5e4740e11cb6f9794723e5f61ab63b">NumOfGeps</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVFStmt::Gep</a>).size();</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a6cbeca77d0681f7da28979cbd0f661b2">NumOfCalls</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a97ca16eba4c5f92e16388f0cdbcfcc00">SVFStmt::Call</a>).size();</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a0a552611fcd20e1310290bdae404a514">NumOfReturns</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a8d269a45adf13e69468f0357222ab2af">SVFStmt::Ret</a>).size();</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ae9952b7456b5102113d1fee4d9d7801a">NumOfFunctionObjs</a>] = numOfFunction;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a57574c85a5a875a05ef83d3c916cf3e5">NumOfGlobalObjs</a>] = numOfGlobal;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a4aff48eaa2045ee619a8ea793a9234b8">NumOfHeapObjs</a>] = numOfHeap;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ae05503909688a17dc1f282d1d029d24e">NumOfStackObjs</a>] = numOfStack;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span> </div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a95edd35cec92fa4cacc8b59b5eecc827">NumOfObjsHasVarStruct</a>] = numOfHasVarStruct;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a78693e8bf93d712eb76c9d6dc0c45ae6">NumOfObjsHasVarArray</a>] = numOfHasVarArray;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a918051b1d0eb4f49c349352408cc9751">NumOfObjsHasConstStruct</a>] = numOfHasConstStruct;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#adb31b163f0cbb9d9ce207ef5d8c075fa">NumOfObjsHasConstArray</a>] = numOfHasConstArray;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a9014371b8ed95ab8135eed2a7fa945f1">NumOfNonPtrObjs</a>] = numOfScalar;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ae74458d96423e4a7391fe8697d5a9a67">NumOfConstantObjs</a>] = numOfConstant;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a618707c52da086e04f5e7bff31794cf3">NumOfIndirectCallSites</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#a2d2131128ceb3362b5dc89317cfd88a0">getIndirectCallsites</a>().size();</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<span class="stringliteral">"TotalCallSite"</span>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#aa530e33657f68fc2e8eae9435ce430cb">getCallSiteSet</a>().size();</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  <a class="code" href="classSVF_1_1PTAStat.html#afa718535839a939e51afc0f8c1fbdac6">generalNumMap</a>[<span class="stringliteral">"LocalVarInRecur"</span>] = <a class="code" href="classSVF_1_1PTAStat.html#a5b4095f427c9c7b9ec0db497ba33baea">localVarInRecursion</a>.<a class="code" href="classSVF_1_1SparseBitVector.html#a9f96e6a886fa69e07cda5dbfaed8b7c9">count</a>();</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  <span class="comment">// REFACTOR-TODO bitcastInstStat();</span></div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  <a class="code" href="classSVF_1_1PTAStat.html#ada838d9e03f2be4fb3ceffab3983b564">branchStat</a>();</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span> </div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  <a class="code" href="classSVF_1_1PTAStat.html#aa5f455bfa79743b8e263431593d29bbf">printStat</a>(<span class="stringliteral">"General Stats"</span>);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span> </div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span> }</div><div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00365">GenericGraph.h:365</a></div></div>
|
|
529
|
+
<div class="fragment"><div class="line"><a name="l00115"></a><span class="lineno"> 115</span> {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <a class="code" href="classSVF_1_1PTAStat.html#af2eb88d1563be9e6290a5fc69bec3bbe">callgraphStat</a>();</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <a class="code" href="classSVF_1_1SVFIR.html">SVFIR</a>* pag = <a class="code" href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVFIR::getPAG</a>();</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfFunction = 0;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfGlobal = 0;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfStack = 0;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfHeap = 0;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfHasVarArray = 0;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfHasVarStruct = 0;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfHasConstArray = 0;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfHasConstStruct = 0;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfScalar = 0;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> numOfConstant = 0;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> fiObjNumber = 0;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> fsObjNumber = 0;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <a class="code" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set<SymID></a> memObjSet;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordflow">for</span>(<a class="code" href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVFIR::iterator</a> it = pag-><a class="code" href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">begin</a>(), eit = pag-><a class="code" href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">end</a>(); it!=eit; ++it)</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <a class="code" href="classSVF_1_1SVFVar.html">PAGNode</a>* node = it->second;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1ObjVar.html">ObjVar</a>* obj = SVFUtil::dyn_cast<ObjVar>(node))</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  {</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1MemObj.html">MemObj</a>* mem = obj->getMemObj();</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="keywordflow">if</span> (memObjSet.insert(mem-><a class="code" href="classSVF_1_1MemObj.html#a3ab6f65ffbf6442daac4d3f70f2d3cb1">getId</a>()).second == <span class="keyword">false</span>)</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a7b890ca9e93b1c61cc6437b7e6a82a8c">isBlackHoleObj</a>())</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#ae1d14e2bf0be36cdadebf119822f607b">isFunction</a>())</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  numOfFunction++;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a40462512a99eb258d8cd442c38d812b4">isGlobalObj</a>())</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  numOfGlobal++;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#af7316c697eafc71d5fc93108da4e2cee">isStack</a>())</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  numOfStack++;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">isHeap</a>())</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  numOfHeap++;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a616e9f4d6f82a253f94391c47668b9a6">isVarArray</a>())</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  numOfHasVarArray++;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#ad1966c52f95775ac7d65c0ba6632c3cf">isVarStruct</a>())</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  numOfHasVarStruct++;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a7f828731597450f1d43b61413ab0e7bb">isConstantArray</a>())</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  numOfHasConstArray++;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a019a77516c403f1f3cc72917b810a41f">isConstantStruct</a>())</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  numOfHasConstStruct++;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a6dae1b3429c6049f0153ec006d329082">hasPtrObj</a>() == <span class="keyword">false</span>)</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  numOfScalar++;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  <span class="keywordflow">if</span>(mem-><a class="code" href="classSVF_1_1MemObj.html#a1a4ff4aaaf2573240a318e1b79328cd0">isConstDataOrConstGlobal</a>())</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  numOfConstant++;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  <span class="keywordflow">if</span> (mem-><a class="code" href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">isFieldInsensitive</a>())</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  fiObjNumber++;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  fsObjNumber++;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span> </div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">pta</a>-><a class="code" href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">isLocalVarInRecursiveFun</a>(node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>()))</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <a class="code" href="classSVF_1_1PTAStat.html#a5b4095f427c9c7b9ec0db497ba33baea">localVarInRecursion</a>.<a class="code" href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">set</a>(node-><a class="code" href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">getId</a>());</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  }</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  }</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  }</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span> </div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span> </div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a1a4d418fd9e5413e7ffbbfe57f5e0560">TotalNumOfPointers</a>] = pag-><a class="code" href="classSVF_1_1IRGraph.html#a0212f3fe2f37363e8060f292c8cf7668">getValueNodeNum</a>() + pag-><a class="code" href="classSVF_1_1SVFIR.html#a8a24e0bf9f95fc1519d4013e0e82dec9">getFieldValNodeNum</a>();</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#acd9848f15aa359550e86c7b857df84ed">TotalNumOfObjects</a>] = pag-><a class="code" href="classSVF_1_1IRGraph.html#a82528aff779ccf8f723f57507dd2d991">getObjectNodeNum</a>();</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ac0e0a1c49d33e02f5cc0f21565ce627d">TotalNumOfFieldObjects</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#a3bbaafd80dfcae6ccc82c3d8b9d303ea">getFieldObjNodeNum</a>();</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#af6a6e3ea4c7f8e1c984bea8d5fb9a7c0">MaxStructSize</a>] = <a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()-><a class="code" href="classSVF_1_1SymbolTableInfo.html#abc7e567209010286a68634c700d76cca">getMaxStructSize</a>();</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a3afc0a36232a0388d8aa42c68219cb26">TotalNumOfEdges</a>] = pag-><a class="code" href="classSVF_1_1IRGraph.html#a821df0fcb66e4f0a5b10c295c24b7c2c">getPAGEdgeNum</a>();</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<span class="stringliteral">"TotalPTASVFStmts"</span>] = pag-><a class="code" href="classSVF_1_1IRGraph.html#a51485004eb28aab6620801205d13ef1b">getPTAPAGEdgeNum</a>();</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ad1a7e7aec8f272017be7d0b6acda86a4">NumberOfFieldInsensitiveObj</a>] = fiObjNumber;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ab62eb21c7dc03f68b0509c31451b2e98">NumberOfFieldSensitiveObj</a>] = fsObjNumber;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ac5bf59a0a7a760c9fec5f22dedec5eb6">NumOfAddrs</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a0a9a0f650e864e89b7cbb3dc8c8aa197">SVFStmt::Addr</a>).size();</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a4aa7356142f51d942063be5a2910940f">NumOfLoads</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a62ac8480c43fcc657c631ec0003b15d5">SVFStmt::Load</a>).size();</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a656ad9980ff05af396ed6754c50916e7">NumOfStores</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc">SVFStmt::Store</a>).size();</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a97a8b662356fc89cdd2cb9463fa5578b">NumOfCopys</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVFStmt::Copy</a>).size();</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#acc5e4740e11cb6f9794723e5f61ab63b">NumOfGeps</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVFStmt::Gep</a>).size();</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a6cbeca77d0681f7da28979cbd0f661b2">NumOfCalls</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a97ca16eba4c5f92e16388f0cdbcfcc00">SVFStmt::Call</a>).size();</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a0a552611fcd20e1310290bdae404a514">NumOfReturns</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">getSVFStmtSet</a>(<a class="code" href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a8d269a45adf13e69468f0357222ab2af">SVFStmt::Ret</a>).size();</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ae9952b7456b5102113d1fee4d9d7801a">NumOfFunctionObjs</a>] = numOfFunction;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a57574c85a5a875a05ef83d3c916cf3e5">NumOfGlobalObjs</a>] = numOfGlobal;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a4aff48eaa2045ee619a8ea793a9234b8">NumOfHeapObjs</a>] = numOfHeap;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ae05503909688a17dc1f282d1d029d24e">NumOfStackObjs</a>] = numOfStack;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a95edd35cec92fa4cacc8b59b5eecc827">NumOfObjsHasVarStruct</a>] = numOfHasVarStruct;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a78693e8bf93d712eb76c9d6dc0c45ae6">NumOfObjsHasVarArray</a>] = numOfHasVarArray;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a918051b1d0eb4f49c349352408cc9751">NumOfObjsHasConstStruct</a>] = numOfHasConstStruct;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#adb31b163f0cbb9d9ce207ef5d8c075fa">NumOfObjsHasConstArray</a>] = numOfHasConstArray;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a9014371b8ed95ab8135eed2a7fa945f1">NumOfNonPtrObjs</a>] = numOfScalar;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#ae74458d96423e4a7391fe8697d5a9a67">NumOfConstantObjs</a>] = numOfConstant;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span> </div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<a class="code" href="classSVF_1_1PTAStat.html#a618707c52da086e04f5e7bff31794cf3">NumOfIndirectCallSites</a>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#a2d2131128ceb3362b5dc89317cfd88a0">getIndirectCallsites</a>().size();</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<span class="stringliteral">"TotalCallSite"</span>] = pag-><a class="code" href="classSVF_1_1SVFIR.html#aa530e33657f68fc2e8eae9435ce430cb">getCallSiteSet</a>().size();</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>[<span class="stringliteral">"LocalVarInRecur"</span>] = <a class="code" href="classSVF_1_1PTAStat.html#a5b4095f427c9c7b9ec0db497ba33baea">localVarInRecursion</a>.<a class="code" href="classSVF_1_1SparseBitVector.html#a9f96e6a886fa69e07cda5dbfaed8b7c9">count</a>();</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <span class="comment">// REFACTOR-TODO bitcastInstStat();</span></div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <a class="code" href="classSVF_1_1PTAStat.html#ada838d9e03f2be4fb3ceffab3983b564">branchStat</a>();</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span> </div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  <a class="code" href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">printStat</a>(<span class="stringliteral">"General Stats"</span>);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span> </div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span> }</div><div class="ttc" id="classSVF_1_1GenericGraph_html_a0d9744b1b0e7a09a6f7af29188e243b7"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a0d9744b1b0e7a09a6f7af29188e243b7">SVF::GenericGraph::begin</a></div><div class="ttdeci">iterator begin()</div><div class="ttdoc">Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00365">GenericGraph.h:365</a></div></div>
|
|
635
530
|
<div class="ttc" id="classSVF_1_1MemObj_html_a7b890ca9e93b1c61cc6437b7e6a82a8c"><div class="ttname"><a href="classSVF_1_1MemObj.html#a7b890ca9e93b1c61cc6437b7e6a82a8c">SVF::MemObj::isBlackHoleObj</a></div><div class="ttdeci">bool isBlackHoleObj() const</div><div class="ttdoc">Whether it is a black hole object. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00700">SymbolTableInfo.cpp:700</a></div></div>
|
|
636
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_acc5e4740e11cb6f9794723e5f61ab63b"><div class="ttname"><a href="classSVF_1_1PTAStat.html#acc5e4740e11cb6f9794723e5f61ab63b">SVF::PTAStat::NumOfGeps</a></div><div class="ttdeci">static const char * NumOfGeps</div><div class="ttdoc">SVFIR gep edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
531
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_acc5e4740e11cb6f9794723e5f61ab63b"><div class="ttname"><a href="classSVF_1_1PTAStat.html#acc5e4740e11cb6f9794723e5f61ab63b">SVF::PTAStat::NumOfGeps</a></div><div class="ttdeci">static const char * NumOfGeps</div><div class="ttdoc">SVFIR gep edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00069">PTAStat.h:69</a></div></div>
|
|
637
532
|
<div class="ttc" id="classSVF_1_1MemObj_html"><div class="ttname"><a href="classSVF_1_1MemObj.html">SVF::MemObj</a></div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00378">SymbolTableInfo.h:378</a></div></div>
|
|
638
533
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a97ca16eba4c5f92e16388f0cdbcfcc00"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a97ca16eba4c5f92e16388f0cdbcfcc00">SVF::SVFStmt::Call</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
|
|
639
534
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a20d960c19118d1ed319e0dbea94405e8">SVF::SVFStmt::Gep</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
|
|
535
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_aca3e99ad83bddabee1dd565522691c78"><div class="ttname"><a href="classSVF_1_1PTAStat.html#aca3e99ad83bddabee1dd565522691c78">SVF::PTAStat::printStat</a></div><div class="ttdeci">virtual void printStat(std::string str="") override</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00273">PTAStat.cpp:273</a></div></div>
|
|
640
536
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a62ac8480c43fcc657c631ec0003b15d5"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a62ac8480c43fcc657c631ec0003b15d5">SVF::SVFStmt::Load</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
|
|
641
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_ae74458d96423e4a7391fe8697d5a9a67"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ae74458d96423e4a7391fe8697d5a9a67">SVF::PTAStat::NumOfConstantObjs</a></div><div class="ttdeci">static const char * NumOfConstantObjs</div><div class="ttdoc">SVFIR object node which is purely constant. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
642
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_af6a6e3ea4c7f8e1c984bea8d5fb9a7c0"><div class="ttname"><a href="classSVF_1_1PTAStat.html#af6a6e3ea4c7f8e1c984bea8d5fb9a7c0">SVF::PTAStat::MaxStructSize</a></div><div class="ttdeci">static const char * MaxStructSize</div><div class="ttdoc">Max struct size. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
537
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_ae74458d96423e4a7391fe8697d5a9a67"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ae74458d96423e4a7391fe8697d5a9a67">SVF::PTAStat::NumOfConstantObjs</a></div><div class="ttdeci">static const char * NumOfConstantObjs</div><div class="ttdoc">SVFIR object node which is purely constant. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00092">PTAStat.h:92</a></div></div>
|
|
538
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_af6a6e3ea4c7f8e1c984bea8d5fb9a7c0"><div class="ttname"><a href="classSVF_1_1PTAStat.html#af6a6e3ea4c7f8e1c984bea8d5fb9a7c0">SVF::PTAStat::MaxStructSize</a></div><div class="ttdeci">static const char * MaxStructSize</div><div class="ttdoc">Max struct size. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00062">PTAStat.h:62</a></div></div>
|
|
643
539
|
<div class="ttc" id="classSVF_1_1MemObj_html_ae1d14e2bf0be36cdadebf119822f607b"><div class="ttname"><a href="classSVF_1_1MemObj.html#ae1d14e2bf0be36cdadebf119822f607b">SVF::MemObj::isFunction</a></div><div class="ttdeci">bool isFunction() const</div><div class="ttdoc">object attributes methods </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00749">SymbolTableInfo.cpp:749</a></div></div>
|
|
644
540
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a0a9a0f650e864e89b7cbb3dc8c8aa197"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a0a9a0f650e864e89b7cbb3dc8c8aa197">SVF::SVFStmt::Addr</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
|
|
645
541
|
<div class="ttc" id="classSVF_1_1MemObj_html_a40462512a99eb258d8cd442c38d812b4"><div class="ttname"><a href="classSVF_1_1MemObj.html#a40462512a99eb258d8cd442c38d812b4">SVF::MemObj::isGlobalObj</a></div><div class="ttdeci">bool isGlobalObj() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00754">SymbolTableInfo.cpp:754</a></div></div>
|
|
646
542
|
<div class="ttc" id="classSVF_1_1MemObj_html_af7316c697eafc71d5fc93108da4e2cee"><div class="ttname"><a href="classSVF_1_1MemObj.html#af7316c697eafc71d5fc93108da4e2cee">SVF::MemObj::isStack</a></div><div class="ttdeci">bool isStack() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00764">SymbolTableInfo.cpp:764</a></div></div>
|
|
647
543
|
<div class="ttc" id="classSVF_1_1MemObj_html_a6dae1b3429c6049f0153ec006d329082"><div class="ttname"><a href="classSVF_1_1MemObj.html#a6dae1b3429c6049f0153ec006d329082">SVF::MemObj::hasPtrObj</a></div><div class="ttdeci">bool hasPtrObj() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00814">SymbolTableInfo.cpp:814</a></div></div>
|
|
648
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a78693e8bf93d712eb76c9d6dc0c45ae6"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a78693e8bf93d712eb76c9d6dc0c45ae6">SVF::PTAStat::NumOfObjsHasVarArray</a></div><div class="ttdeci">static const char * NumOfObjsHasVarArray</div><div class="ttdoc">SVFIR object node has var array (maybe nested with struct) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
649
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_ac0e0a1c49d33e02f5cc0f21565ce627d"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ac0e0a1c49d33e02f5cc0f21565ce627d">SVF::PTAStat::TotalNumOfFieldObjects</a></div><div class="ttdeci">static const char * TotalNumOfFieldObjects</div><div class="ttdoc">Total SVFIR field object node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
544
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a78693e8bf93d712eb76c9d6dc0c45ae6"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a78693e8bf93d712eb76c9d6dc0c45ae6">SVF::PTAStat::NumOfObjsHasVarArray</a></div><div class="ttdeci">static const char * NumOfObjsHasVarArray</div><div class="ttdoc">SVFIR object node has var array (maybe nested with struct) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00088">PTAStat.h:88</a></div></div>
|
|
545
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_ac0e0a1c49d33e02f5cc0f21565ce627d"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ac0e0a1c49d33e02f5cc0f21565ce627d">SVF::PTAStat::TotalNumOfFieldObjects</a></div><div class="ttdeci">static const char * TotalNumOfFieldObjects</div><div class="ttdoc">Total SVFIR field object node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00061">PTAStat.h:61</a></div></div>
|
|
650
546
|
<div class="ttc" id="classSVF_1_1MemObj_html_a7f828731597450f1d43b61413ab0e7bb"><div class="ttname"><a href="classSVF_1_1MemObj.html#a7f828731597450f1d43b61413ab0e7bb">SVF::MemObj::isConstantArray</a></div><div class="ttdeci">bool isConstantArray() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00799">SymbolTableInfo.cpp:799</a></div></div>
|
|
651
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a6cbeca77d0681f7da28979cbd0f661b2"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a6cbeca77d0681f7da28979cbd0f661b2">SVF::PTAStat::NumOfCalls</a></div><div class="ttdeci">static const char * NumOfCalls</div><div class="ttdoc">SVFIR call edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
547
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a6cbeca77d0681f7da28979cbd0f661b2"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a6cbeca77d0681f7da28979cbd0f661b2">SVF::PTAStat::NumOfCalls</a></div><div class="ttdeci">static const char * NumOfCalls</div><div class="ttdoc">SVFIR call edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00070">PTAStat.h:70</a></div></div>
|
|
652
548
|
<div class="ttc" id="classSVF_1_1SVFVar_html"><div class="ttname"><a href="classSVF_1_1SVFVar.html">SVF::SVFVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00045">SVFVariables.h:45</a></div></div>
|
|
653
549
|
<div class="ttc" id="classSVF_1_1ObjVar_html"><div class="ttname"><a href="classSVF_1_1ObjVar.html">SVF::ObjVar</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00304">SVFVariables.h:304</a></div></div>
|
|
654
550
|
<div class="ttc" id="classSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00106">SVFIR.h:106</a></div></div>
|
|
@@ -657,91 +553,60 @@ Private Attributes</h2></td></tr>
|
|
|
657
553
|
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_abc7e567209010286a68634c700d76cca"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#abc7e567209010286a68634c700d76cca">SVF::SymbolTableInfo::getMaxStructSize</a></div><div class="ttdeci">u32_t getMaxStructSize() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00274">SymbolTableInfo.h:274</a></div></div>
|
|
658
554
|
<div class="ttc" id="classSVF_1_1IRGraph_html_a82528aff779ccf8f723f57507dd2d991"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a82528aff779ccf8f723f57507dd2d991">SVF::IRGraph::getObjectNodeNum</a></div><div class="ttdeci">u32_t getObjectNodeNum() const</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00177">IRGraph.h:177</a></div></div>
|
|
659
555
|
<div class="ttc" id="namespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00085">SVFBasicTypes.h:85</a></div></div>
|
|
660
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a97a8b662356fc89cdd2cb9463fa5578b"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a97a8b662356fc89cdd2cb9463fa5578b">SVF::PTAStat::NumOfCopys</a></div><div class="ttdeci">static const char * NumOfCopys</div><div class="ttdoc">SVFIR copy edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
556
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a97a8b662356fc89cdd2cb9463fa5578b"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a97a8b662356fc89cdd2cb9463fa5578b">SVF::PTAStat::NumOfCopys</a></div><div class="ttdeci">static const char * NumOfCopys</div><div class="ttdoc">SVFIR copy edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00068">PTAStat.h:68</a></div></div>
|
|
661
557
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9ad3469cdfb64f05163b5310b731b221da">SVF::SVFStmt::Copy</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
|
|
662
558
|
<div class="ttc" id="classSVF_1_1SVFIR_html_aa530e33657f68fc2e8eae9435ce430cb"><div class="ttname"><a href="classSVF_1_1SVFIR.html#aa530e33657f68fc2e8eae9435ce430cb">SVF::SVFIR::getCallSiteSet</a></div><div class="ttdeci">const CallSiteSet & getCallSiteSet() const</div><div class="ttdoc">Get all callsites. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00204">SVFIR.h:204</a></div></div>
|
|
663
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a9014371b8ed95ab8135eed2a7fa945f1"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a9014371b8ed95ab8135eed2a7fa945f1">SVF::PTAStat::NumOfNonPtrObjs</a></div><div class="ttdeci">static const char * NumOfNonPtrObjs</div><div class="ttdoc">SVFIR object node which is non pointer type object (do not have pts) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
664
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a57574c85a5a875a05ef83d3c916cf3e5"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a57574c85a5a875a05ef83d3c916cf3e5">SVF::PTAStat::NumOfGlobalObjs</a></div><div class="ttdeci">static const char * NumOfGlobalObjs</div><div class="ttdoc">SVFIR global object node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
559
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a9014371b8ed95ab8135eed2a7fa945f1"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a9014371b8ed95ab8135eed2a7fa945f1">SVF::PTAStat::NumOfNonPtrObjs</a></div><div class="ttdeci">static const char * NumOfNonPtrObjs</div><div class="ttdoc">SVFIR object node which is non pointer type object (do not have pts) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00091">PTAStat.h:91</a></div></div>
|
|
560
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a57574c85a5a875a05ef83d3c916cf3e5"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a57574c85a5a875a05ef83d3c916cf3e5">SVF::PTAStat::NumOfGlobalObjs</a></div><div class="ttdeci">static const char * NumOfGlobalObjs</div><div class="ttdoc">SVFIR global object node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00083">PTAStat.h:83</a></div></div>
|
|
665
561
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9a8d269a45adf13e69468f0357222ab2af"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9a8d269a45adf13e69468f0357222ab2af">SVF::SVFStmt::Ret</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
|
|
666
562
|
<div class="ttc" id="classSVF_1_1SVFIR_html_a3bbaafd80dfcae6ccc82c3d8b9d303ea"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a3bbaafd80dfcae6ccc82c3d8b9d303ea">SVF::SVFIR::getFieldObjNodeNum</a></div><div class="ttdeci">u32_t getFieldObjNodeNum() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00288">SVFIR.h:288</a></div></div>
|
|
667
563
|
<div class="ttc" id="classSVF_1_1GenericGraph_html_a4bef15157423cef48dc7333a803cd27d"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a4bef15157423cef48dc7333a803cd27d">SVF::GenericGraph::end</a></div><div class="ttdeci">iterator end()</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00369">GenericGraph.h:369</a></div></div>
|
|
668
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a0a552611fcd20e1310290bdae404a514"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a0a552611fcd20e1310290bdae404a514">SVF::PTAStat::NumOfReturns</a></div><div class="ttdeci">static const char * NumOfReturns</div><div class="ttdoc">SVFIR return edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
669
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_ae05503909688a17dc1f282d1d029d24e"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ae05503909688a17dc1f282d1d029d24e">SVF::PTAStat::NumOfStackObjs</a></div><div class="ttdeci">static const char * NumOfStackObjs</div><div class="ttdoc">SVFIR stack object node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
564
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a0a552611fcd20e1310290bdae404a514"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a0a552611fcd20e1310290bdae404a514">SVF::PTAStat::NumOfReturns</a></div><div class="ttdeci">static const char * NumOfReturns</div><div class="ttdoc">SVFIR return edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00071">PTAStat.h:71</a></div></div>
|
|
565
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_ae05503909688a17dc1f282d1d029d24e"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ae05503909688a17dc1f282d1d029d24e">SVF::PTAStat::NumOfStackObjs</a></div><div class="ttdeci">static const char * NumOfStackObjs</div><div class="ttdoc">SVFIR stack object node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00085">PTAStat.h:85</a></div></div>
|
|
670
566
|
<div class="ttc" id="classSVF_1_1GenericGraph_html_ac213302cf5c7cdf3b66f7b18649d0fbc"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#ac213302cf5c7cdf3b66f7b18649d0fbc">SVF::GenericGraph< SVFVar, SVFStmt >::iterator</a></div><div class="ttdeci">IDToNodeMapTy::iterator iterator</div><div class="ttdoc">Node Iterators. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00342">GenericGraph.h:342</a></div></div>
|
|
671
|
-
<div class="ttc" id="
|
|
672
|
-
<div class="ttc" id="
|
|
673
|
-
<div class="ttc" id="
|
|
674
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_ae9952b7456b5102113d1fee4d9d7801a"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ae9952b7456b5102113d1fee4d9d7801a">SVF::PTAStat::NumOfFunctionObjs</a></div><div class="ttdeci">static const char * NumOfFunctionObjs</div><div class="ttdoc">Function numbers. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00083">PTAStat.h:83</a></div></div>
|
|
567
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a4aa7356142f51d942063be5a2910940f"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a4aa7356142f51d942063be5a2910940f">SVF::PTAStat::NumOfLoads</a></div><div class="ttdeci">static const char * NumOfLoads</div><div class="ttdoc">SVFIR load edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00066">PTAStat.h:66</a></div></div>
|
|
568
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a618707c52da086e04f5e7bff31794cf3"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a618707c52da086e04f5e7bff31794cf3">SVF::PTAStat::NumOfIndirectCallSites</a></div><div class="ttdeci">static const char * NumOfIndirectCallSites</div><div class="ttdoc">Number of indirect callsites. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00109">PTAStat.h:109</a></div></div>
|
|
569
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_ae9952b7456b5102113d1fee4d9d7801a"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ae9952b7456b5102113d1fee4d9d7801a">SVF::PTAStat::NumOfFunctionObjs</a></div><div class="ttdeci">static const char * NumOfFunctionObjs</div><div class="ttdoc">Function numbers. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00082">PTAStat.h:82</a></div></div>
|
|
675
570
|
<div class="ttc" id="namespaceSVF_html_af739db846e47ba6b2fd15eaad31ab7fb"><div class="ttname"><a href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">SVF::Set</a></div><div class="ttdeci">std::unordered_set< Key, Hash, KeyEqual, Allocator > Set</div><div class="ttdef"><b>Definition:</b> <a href="SVFBasicTypes_8h_source.html#l00105">SVFBasicTypes.h:105</a></div></div>
|
|
571
|
+
<div class="ttc" id="classSVF_1_1SVFStat_html_a07b6f8cb424b84b468c4518140fa3a41"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">SVF::SVFStat::generalNumMap</a></div><div class="ttdeci">NUMStatMap generalNumMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00073">SVFStat.h:73</a></div></div>
|
|
676
572
|
<div class="ttc" id="classSVF_1_1SVFIR_html_a8a24e0bf9f95fc1519d4013e0e82dec9"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a8a24e0bf9f95fc1519d4013e0e82dec9">SVF::SVFIR::getFieldValNodeNum</a></div><div class="ttdeci">u32_t getFieldValNodeNum() const</div><div class="ttdoc">Node and edge statistics. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00284">SVFIR.h:284</a></div></div>
|
|
677
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a918051b1d0eb4f49c349352408cc9751"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a918051b1d0eb4f49c349352408cc9751">SVF::PTAStat::NumOfObjsHasConstStruct</a></div><div class="ttdeci">static const char * NumOfObjsHasConstStruct</div><div class="ttdoc">SVFIR object node has const struct (maybe nested with array) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
678
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a656ad9980ff05af396ed6754c50916e7"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a656ad9980ff05af396ed6754c50916e7">SVF::PTAStat::NumOfStores</a></div><div class="ttdeci">static const char * NumOfStores</div><div class="ttdoc">SVFIR store edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
573
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a918051b1d0eb4f49c349352408cc9751"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a918051b1d0eb4f49c349352408cc9751">SVF::PTAStat::NumOfObjsHasConstStruct</a></div><div class="ttdeci">static const char * NumOfObjsHasConstStruct</div><div class="ttdoc">SVFIR object node has const struct (maybe nested with array) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00089">PTAStat.h:89</a></div></div>
|
|
574
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a656ad9980ff05af396ed6754c50916e7"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a656ad9980ff05af396ed6754c50916e7">SVF::PTAStat::NumOfStores</a></div><div class="ttdeci">static const char * NumOfStores</div><div class="ttdoc">SVFIR store edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00067">PTAStat.h:67</a></div></div>
|
|
679
575
|
<div class="ttc" id="classSVF_1_1MemObj_html_a616e9f4d6f82a253f94391c47668b9a6"><div class="ttname"><a href="classSVF_1_1MemObj.html#a616e9f4d6f82a253f94391c47668b9a6">SVF::MemObj::isVarArray</a></div><div class="ttdeci">bool isVarArray() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00789">SymbolTableInfo.cpp:789</a></div></div>
|
|
680
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_adb31b163f0cbb9d9ce207ef5d8c075fa"><div class="ttname"><a href="classSVF_1_1PTAStat.html#adb31b163f0cbb9d9ce207ef5d8c075fa">SVF::PTAStat::NumOfObjsHasConstArray</a></div><div class="ttdeci">static const char * NumOfObjsHasConstArray</div><div class="ttdoc">SVFIR object node has const array (maybe nested with struct) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
681
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a3afc0a36232a0388d8aa42c68219cb26"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3afc0a36232a0388d8aa42c68219cb26">SVF::PTAStat::TotalNumOfEdges</a></div><div class="ttdeci">static const char * TotalNumOfEdges</div><div class="ttdoc">Total SVFIR edge number. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
682
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_ab62eb21c7dc03f68b0509c31451b2e98"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ab62eb21c7dc03f68b0509c31451b2e98">SVF::PTAStat::NumberOfFieldSensitiveObj</a></div><div class="ttdeci">static const char * NumberOfFieldSensitiveObj</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
683
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a4aff48eaa2045ee619a8ea793a9234b8"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a4aff48eaa2045ee619a8ea793a9234b8">SVF::PTAStat::NumOfHeapObjs</a></div><div class="ttdeci">static const char * NumOfHeapObjs</div><div class="ttdoc">SVFIR heap object node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
576
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_adb31b163f0cbb9d9ce207ef5d8c075fa"><div class="ttname"><a href="classSVF_1_1PTAStat.html#adb31b163f0cbb9d9ce207ef5d8c075fa">SVF::PTAStat::NumOfObjsHasConstArray</a></div><div class="ttdeci">static const char * NumOfObjsHasConstArray</div><div class="ttdoc">SVFIR object node has const array (maybe nested with struct) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00090">PTAStat.h:90</a></div></div>
|
|
577
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a3afc0a36232a0388d8aa42c68219cb26"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3afc0a36232a0388d8aa42c68219cb26">SVF::PTAStat::TotalNumOfEdges</a></div><div class="ttdeci">static const char * TotalNumOfEdges</div><div class="ttdoc">Total SVFIR edge number. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00063">PTAStat.h:63</a></div></div>
|
|
578
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_ab62eb21c7dc03f68b0509c31451b2e98"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ab62eb21c7dc03f68b0509c31451b2e98">SVF::PTAStat::NumberOfFieldSensitiveObj</a></div><div class="ttdeci">static const char * NumberOfFieldSensitiveObj</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00095">PTAStat.h:95</a></div></div>
|
|
579
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a4aff48eaa2045ee619a8ea793a9234b8"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a4aff48eaa2045ee619a8ea793a9234b8">SVF::PTAStat::NumOfHeapObjs</a></div><div class="ttdeci">static const char * NumOfHeapObjs</div><div class="ttdoc">SVFIR heap object node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00084">PTAStat.h:84</a></div></div>
|
|
684
580
|
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00106">SymbolTableInfo.cpp:106</a></div></div>
|
|
685
581
|
<div class="ttc" id="classSVF_1_1IRGraph_html_a821df0fcb66e4f0a5b10c295c24b7c2c"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a821df0fcb66e4f0a5b10c295c24b7c2c">SVF::IRGraph::getPAGEdgeNum</a></div><div class="ttdeci">u32_t getPAGEdgeNum() const</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00194">IRGraph.h:194</a></div></div>
|
|
686
582
|
<div class="ttc" id="classSVF_1_1MemObj_html_ad1966c52f95775ac7d65c0ba6632c3cf"><div class="ttname"><a href="classSVF_1_1MemObj.html#ad1966c52f95775ac7d65c0ba6632c3cf">SVF::MemObj::isVarStruct</a></div><div class="ttdeci">bool isVarStruct() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00784">SymbolTableInfo.cpp:784</a></div></div>
|
|
687
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_ada838d9e03f2be4fb3ceffab3983b564"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ada838d9e03f2be4fb3ceffab3983b564">SVF::PTAStat::branchStat</a></div><div class="ttdeci">void branchStat()</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#
|
|
583
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_ada838d9e03f2be4fb3ceffab3983b564"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ada838d9e03f2be4fb3ceffab3983b564">SVF::PTAStat::branchStat</a></div><div class="ttdeci">void branchStat()</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00342">PTAStat.cpp:342</a></div></div>
|
|
688
584
|
<div class="ttc" id="classSVF_1_1MemObj_html_a898c5bb3956402578266a6fb142e02b1"><div class="ttname"><a href="classSVF_1_1MemObj.html#a898c5bb3956402578266a6fb142e02b1">SVF::MemObj::isHeap</a></div><div class="ttdeci">bool isHeap() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00769">SymbolTableInfo.cpp:769</a></div></div>
|
|
585
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_af2eb88d1563be9e6290a5fc69bec3bbe"><div class="ttname"><a href="classSVF_1_1PTAStat.html#af2eb88d1563be9e6290a5fc69bec3bbe">SVF::PTAStat::callgraphStat</a></div><div class="ttdeci">void callgraphStat() override</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00217">PTAStat.cpp:217</a></div></div>
|
|
689
586
|
<div class="ttc" id="classSVF_1_1MemObj_html_a41d85883d44ad77832b020455951c6fc"><div class="ttname"><a href="classSVF_1_1MemObj.html#a41d85883d44ad77832b020455951c6fc">SVF::MemObj::isFieldInsensitive</a></div><div class="ttdeci">bool isFieldInsensitive() const</div><div class="ttdoc">Return true if its field limit is 0. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00738">SymbolTableInfo.cpp:738</a></div></div>
|
|
690
587
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_a108380f6f0b67654bb7c7676686096c8"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#a108380f6f0b67654bb7c7676686096c8">SVF::PointerAnalysis::isLocalVarInRecursiveFun</a></div><div class="ttdeci">bool isLocalVarInRecursiveFun(NodeID id) const</div><div class="ttdoc">Whether a local variable is in function recursions. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00148">PointerAnalysis.cpp:148</a></div></div>
|
|
691
588
|
<div class="ttc" id="classSVF_1_1SVFStmt_html_a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a0ab8621e75e75f03425c323b3ed62ce9aa0f700b514c431ec5329aec49df56dcc">SVF::SVFStmt::Store</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00056">SVFStatements.h:56</a></div></div>
|
|
692
589
|
<div class="ttc" id="classSVF_1_1MemObj_html_a3ab6f65ffbf6442daac4d3f70f2d3cb1"><div class="ttname"><a href="classSVF_1_1MemObj.html#a3ab6f65ffbf6442daac4d3f70f2d3cb1">SVF::MemObj::getId</a></div><div class="ttdeci">SymID getId() const</div><div class="ttdoc">Get the memory object id. </div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8h_source.html#l00408">SymbolTableInfo.h:408</a></div></div>
|
|
693
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a1772bc87370b5625f71edd4476277064"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a1772bc87370b5625f71edd4476277064">SVF::PTAStat::callgraphStat</a></div><div class="ttdeci">virtual void callgraphStat()</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00236">PTAStat.cpp:236</a></div></div>
|
|
694
590
|
<div class="ttc" id="classSVF_1_1GenericNode_html_ac3e55ef37aefb411ea4c87b1aa3b1895"><div class="ttname"><a href="classSVF_1_1GenericNode.html#ac3e55ef37aefb411ea4c87b1aa3b1895">SVF::GenericNode::getId</a></div><div class="ttdeci">NodeID getId() const</div><div class="ttdoc">Get ID. </div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00169">GenericGraph.h:169</a></div></div>
|
|
695
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a1a4d418fd9e5413e7ffbbfe57f5e0560"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a1a4d418fd9e5413e7ffbbfe57f5e0560">SVF::PTAStat::TotalNumOfPointers</a></div><div class="ttdeci">static const char * TotalNumOfPointers</div><div class="ttdoc">Total SVFIR value node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
591
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a1a4d418fd9e5413e7ffbbfe57f5e0560"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a1a4d418fd9e5413e7ffbbfe57f5e0560">SVF::PTAStat::TotalNumOfPointers</a></div><div class="ttdeci">static const char * TotalNumOfPointers</div><div class="ttdoc">Total SVFIR value node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00059">PTAStat.h:59</a></div></div>
|
|
696
592
|
<div class="ttc" id="classSVF_1_1SparseBitVector_html_a61bd86909a141f9de873d92c0f904832"><div class="ttname"><a href="classSVF_1_1SparseBitVector.html#a61bd86909a141f9de873d92c0f904832">SVF::SparseBitVector::set</a></div><div class="ttdeci">void set(unsigned Idx)</div><div class="ttdef"><b>Definition:</b> <a href="SparseBitVector_8h_source.html#l00745">SparseBitVector.h:745</a></div></div>
|
|
697
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_acd9848f15aa359550e86c7b857df84ed"><div class="ttname"><a href="classSVF_1_1PTAStat.html#acd9848f15aa359550e86c7b857df84ed">SVF::PTAStat::TotalNumOfObjects</a></div><div class="ttdeci">static const char * TotalNumOfObjects</div><div class="ttdoc">Total SVFIR object node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
698
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_ad1a7e7aec8f272017be7d0b6acda86a4"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ad1a7e7aec8f272017be7d0b6acda86a4">SVF::PTAStat::NumberOfFieldInsensitiveObj</a></div><div class="ttdeci">static const char * NumberOfFieldInsensitiveObj</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
699
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a608441b95be0861d8c1b0a035281f4d5"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">SVF::PTAStat::pta</a></div><div class="ttdeci">PointerAnalysis * pta</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
593
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_acd9848f15aa359550e86c7b857df84ed"><div class="ttname"><a href="classSVF_1_1PTAStat.html#acd9848f15aa359550e86c7b857df84ed">SVF::PTAStat::TotalNumOfObjects</a></div><div class="ttdeci">static const char * TotalNumOfObjects</div><div class="ttdoc">Total SVFIR object node. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00060">PTAStat.h:60</a></div></div>
|
|
594
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_ad1a7e7aec8f272017be7d0b6acda86a4"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ad1a7e7aec8f272017be7d0b6acda86a4">SVF::PTAStat::NumberOfFieldInsensitiveObj</a></div><div class="ttdeci">static const char * NumberOfFieldInsensitiveObj</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00094">PTAStat.h:94</a></div></div>
|
|
595
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a608441b95be0861d8c1b0a035281f4d5"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a608441b95be0861d8c1b0a035281f4d5">SVF::PTAStat::pta</a></div><div class="ttdeci">PointerAnalysis * pta</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00138">PTAStat.h:138</a></div></div>
|
|
700
596
|
<div class="ttc" id="classSVF_1_1SVFIR_html_a2d2131128ceb3362b5dc89317cfd88a0"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a2d2131128ceb3362b5dc89317cfd88a0">SVF::SVFIR::getIndirectCallsites</a></div><div class="ttdeci">const CallSiteToFunPtrMap & getIndirectCallsites() const</div><div class="ttdoc">Add/get indirect callsites. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00299">SVFIR.h:299</a></div></div>
|
|
701
597
|
<div class="ttc" id="classSVF_1_1IRGraph_html_a51485004eb28aab6620801205d13ef1b"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a51485004eb28aab6620801205d13ef1b">SVF::IRGraph::getPTAPAGEdgeNum</a></div><div class="ttdeci">u32_t getPTAPAGEdgeNum() const</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00198">IRGraph.h:198</a></div></div>
|
|
702
598
|
<div class="ttc" id="classSVF_1_1SVFIR_html"><div class="ttname"><a href="classSVF_1_1SVFIR.html">SVF::SVFIR</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00043">SVFIR.h:43</a></div></div>
|
|
703
599
|
<div class="ttc" id="classSVF_1_1SVFIR_html_ae2006820c0d00482b85e7ae3adcb5744"><div class="ttname"><a href="classSVF_1_1SVFIR.html#ae2006820c0d00482b85e7ae3adcb5744">SVF::SVFIR::getSVFStmtSet</a></div><div class="ttdeci">SVFStmt::SVFStmtSetTy & getSVFStmtSet(SVFStmt::PEDGEK kind)</div><div class="ttdoc">Get/set methods to get SVFStmts based on their kinds and ICFGNodes. </div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00162">SVFIR.h:162</a></div></div>
|
|
704
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a5b4095f427c9c7b9ec0db497ba33baea"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a5b4095f427c9c7b9ec0db497ba33baea">SVF::PTAStat::localVarInRecursion</a></div><div class="ttdeci">NodeBS localVarInRecursion</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
600
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a5b4095f427c9c7b9ec0db497ba33baea"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a5b4095f427c9c7b9ec0db497ba33baea">SVF::PTAStat::localVarInRecursion</a></div><div class="ttdeci">NodeBS localVarInRecursion</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00124">PTAStat.h:124</a></div></div>
|
|
705
601
|
<div class="ttc" id="classSVF_1_1MemObj_html_a1a4ff4aaaf2573240a318e1b79328cd0"><div class="ttname"><a href="classSVF_1_1MemObj.html#a1a4ff4aaaf2573240a318e1b79328cd0">SVF::MemObj::isConstDataOrConstGlobal</a></div><div class="ttdeci">bool isConstDataOrConstGlobal() const</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00804">SymbolTableInfo.cpp:804</a></div></div>
|
|
706
|
-
<div class="ttc" id="
|
|
707
|
-
<div class="ttc" id="
|
|
708
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a95edd35cec92fa4cacc8b59b5eecc827"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a95edd35cec92fa4cacc8b59b5eecc827">SVF::PTAStat::NumOfObjsHasVarStruct</a></div><div class="ttdeci">static const char * NumOfObjsHasVarStruct</div><div class="ttdoc">SVFIR object node has var struct (maybe nested with array) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00088">PTAStat.h:88</a></div></div>
|
|
602
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_ac5bf59a0a7a760c9fec5f22dedec5eb6"><div class="ttname"><a href="classSVF_1_1PTAStat.html#ac5bf59a0a7a760c9fec5f22dedec5eb6">SVF::PTAStat::NumOfAddrs</a></div><div class="ttdeci">static const char * NumOfAddrs</div><div class="ttdoc">SVFIR addr edge. </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00065">PTAStat.h:65</a></div></div>
|
|
603
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a95edd35cec92fa4cacc8b59b5eecc827"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a95edd35cec92fa4cacc8b59b5eecc827">SVF::PTAStat::NumOfObjsHasVarStruct</a></div><div class="ttdeci">static const char * NumOfObjsHasVarStruct</div><div class="ttdoc">SVFIR object node has var struct (maybe nested with array) </div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00087">PTAStat.h:87</a></div></div>
|
|
709
604
|
<div class="ttc" id="classSVF_1_1IRGraph_html_a0212f3fe2f37363e8060f292c8cf7668"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a0212f3fe2f37363e8060f292c8cf7668">SVF::IRGraph::getValueNodeNum</a></div><div class="ttdeci">u32_t getValueNodeNum() const</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00173">IRGraph.h:173</a></div></div>
|
|
710
605
|
</div><!-- fragment -->
|
|
711
606
|
</div>
|
|
712
607
|
</div>
|
|
713
|
-
<a id="
|
|
714
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
715
|
-
|
|
716
|
-
<div class="memitem">
|
|
717
|
-
<div class="memproto">
|
|
718
|
-
<table class="mlabels">
|
|
719
|
-
<tr>
|
|
720
|
-
<td class="mlabels-left">
|
|
721
|
-
<table class="memname">
|
|
722
|
-
<tr>
|
|
723
|
-
<td class="memname">virtual void SVF::PTAStat::performStatPerQuery </td>
|
|
724
|
-
<td>(</td>
|
|
725
|
-
<td class="paramtype"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> </td>
|
|
726
|
-
<td class="paramname"></td><td>)</td>
|
|
727
|
-
<td></td>
|
|
728
|
-
</tr>
|
|
729
|
-
</table>
|
|
730
|
-
</td>
|
|
731
|
-
<td class="mlabels-right">
|
|
732
|
-
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
|
|
733
|
-
</tr>
|
|
734
|
-
</table>
|
|
735
|
-
</div><div class="memdoc">
|
|
736
|
-
|
|
737
|
-
<p>Reimplemented in <a class="el" href="classSVF_1_1DDAStat.html#a11dd60d124a8d3433312589ede4e7b11">SVF::DDAStat</a>.</p>
|
|
738
|
-
|
|
739
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00159">159</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
740
|
-
<div class="fragment"><div class="line"><a name="l00159"></a><span class="lineno"> 159</span> {}</div></div><!-- fragment -->
|
|
741
|
-
</div>
|
|
742
|
-
</div>
|
|
743
|
-
<a id="aa5f455bfa79743b8e263431593d29bbf"></a>
|
|
744
|
-
<h2 class="memtitle"><span class="permalink"><a href="#aa5f455bfa79743b8e263431593d29bbf">◆ </a></span>printStat()</h2>
|
|
608
|
+
<a id="aca3e99ad83bddabee1dd565522691c78"></a>
|
|
609
|
+
<h2 class="memtitle"><span class="permalink"><a href="#aca3e99ad83bddabee1dd565522691c78">◆ </a></span>printStat()</h2>
|
|
745
610
|
|
|
746
611
|
<div class="memitem">
|
|
747
612
|
<div class="memproto">
|
|
@@ -752,98 +617,31 @@ Private Attributes</h2></td></tr>
|
|
|
752
617
|
<tr>
|
|
753
618
|
<td class="memname">void PTAStat::printStat </td>
|
|
754
619
|
<td>(</td>
|
|
755
|
-
<td class="paramtype"><a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">string</a> </td>
|
|
620
|
+
<td class="paramtype"><a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> </td>
|
|
756
621
|
<td class="paramname"><em>str</em> = <code>""</code></td><td>)</td>
|
|
757
622
|
<td></td>
|
|
758
623
|
</tr>
|
|
759
624
|
</table>
|
|
760
625
|
</td>
|
|
761
626
|
<td class="mlabels-right">
|
|
762
|
-
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
627
|
+
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
|
|
763
628
|
</tr>
|
|
764
629
|
</table>
|
|
765
630
|
</div><div class="memdoc">
|
|
766
631
|
|
|
767
|
-
<p>
|
|
632
|
+
<p>Implements <a class="el" href="classSVF_1_1SVFStat.html#a77c3cfb0c2b85a343ad0fac3682557c3">SVF::SVFStat</a>.</p>
|
|
768
633
|
|
|
769
|
-
<p class="
|
|
770
|
-
|
|
771
|
-
<
|
|
634
|
+
<p>Reimplemented in <a class="el" href="classSVF_1_1ICFGStat.html#af9c004e3532968ae806a3d344ef885ea">SVF::ICFGStat</a>, <a class="el" href="classSVF_1_1SVFGStat.html#a2e0adcfbe233523212e1ffbf5b01ba88">SVF::SVFGStat</a>, <a class="el" href="classSVF_1_1MemSSAStat.html#ad5fbe23c3374e5b3a45ac5fa4900441a">SVF::MemSSAStat</a>, and <a class="el" href="classSVF_1_1DDAStat.html#ae6fd32471e0b9bf51233a36676658b49">SVF::DDAStat</a>.</p>
|
|
635
|
+
|
|
636
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8cpp_source.html#l00273">273</a> of file <a class="el" href="PTAStat_8cpp_source.html">PTAStat.cpp</a>.</p>
|
|
637
|
+
<div class="fragment"><div class="line"><a name="l00274"></a><span class="lineno"> 274</span> {</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span> </div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> <a class="code" href="classSVF_1_1PTAStat.html#a194734855aa1c9e0ba891f1085d50d5d">moduleName</a>(<a class="code" href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SymbolTableInfo::SymbolInfo</a>()->getModule()->getModuleIdentifier());</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  std::vector<std::string> names = <a class="code" href="namespaceSVF_1_1SVFUtil.html#af54e70082388bbd70868250aaa0bc86b">SVFUtil::split</a>(<a class="code" href="classSVF_1_1PTAStat.html#a194734855aa1c9e0ba891f1085d50d5d">moduleName</a>,<span class="charliteral">'/'</span>);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <span class="keywordflow">if</span> (names.size() > 1)</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  {</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  <a class="code" href="classSVF_1_1PTAStat.html#a194734855aa1c9e0ba891f1085d50d5d">moduleName</a> = names[names.size() - 1];</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  }</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() << <span class="stringliteral">"\n*********"</span> << statname << <span class="stringliteral">"***************\n"</span>;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() << <span class="stringliteral">"################ (program : "</span> << <a class="code" href="classSVF_1_1PTAStat.html#a194734855aa1c9e0ba891f1085d50d5d">moduleName</a> << <span class="stringliteral">")###############\n"</span>;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>().flags(std::ios::left);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  <span class="keywordtype">unsigned</span> field_width = 20;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  <span class="keywordflow">for</span>(NUMStatMap::iterator it = <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>.begin(), eit = <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>.end(); it!=eit; ++it)</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>  {</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  <span class="comment">// format out put with width 20 space</span></div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  std::cout << std::setw(field_width) << it->first << it->second << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  }</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() << <span class="stringliteral">"-------------------------------------------------------\n"</span>;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  <span class="keywordflow">for</span>(TIMEStatMap::iterator it = <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>.begin(), eit = <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>.end(); it!=eit; ++it)</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  {</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <span class="comment">// format out put with width 20 space</span></div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() << std::setw(field_width) << it->first << it->second << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  }</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  <span class="keywordflow">for</span>(NUMStatMap::iterator it = <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.begin(), eit = <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.end(); it!=eit; ++it)</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  {</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>  <span class="comment">// format out put with width 20 space</span></div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() << std::setw(field_width) << it->first << it->second << <span class="stringliteral">"\n"</span>;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  }</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span> </div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>() << <span class="stringliteral">"#######################################################"</span> << std::endl;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVFUtil::outs</a>().flush();</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  <a class="code" href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">generalNumMap</a>.clear();</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  <a class="code" href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">PTNumStatMap</a>.clear();</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>  <a class="code" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">timeStatMap</a>.clear();</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span> }</div><div class="ttc" id="classSVF_1_1SVFStat_html_a07b6f8cb424b84b468c4518140fa3a41"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a07b6f8cb424b84b468c4518140fa3a41">SVF::SVFStat::generalNumMap</a></div><div class="ttdeci">NUMStatMap generalNumMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00073">SVFStat.h:73</a></div></div>
|
|
772
638
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_af54e70082388bbd70868250aaa0bc86b"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#af54e70082388bbd70868250aaa0bc86b">SVF::SVFUtil::split</a></div><div class="ttdeci">std::vector< std::string > split(const std::string &s, char seperator)</div><div class="ttdoc">Split into two substrings around the first occurrence of a separator string. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00231">SVFUtil.h:231</a></div></div>
|
|
773
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a194734855aa1c9e0ba891f1085d50d5d"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a194734855aa1c9e0ba891f1085d50d5d">SVF::PTAStat::moduleName</a></div><div class="ttdeci">std::string moduleName</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
639
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_a194734855aa1c9e0ba891f1085d50d5d"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a194734855aa1c9e0ba891f1085d50d5d">SVF::PTAStat::moduleName</a></div><div class="ttdeci">std::string moduleName</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00139">PTAStat.h:139</a></div></div>
|
|
774
640
|
<div class="ttc" id="namespaceSVF_1_1SVFUtil_html_aed0b0b9f035057552a6a82154fd88e61"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#aed0b0b9f035057552a6a82154fd88e61">SVF::SVFUtil::outs</a></div><div class="ttdeci">std::ostream & outs()</div><div class="ttdoc">Overwrite llvm::outs() </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00049">SVFUtil.h:49</a></div></div>
|
|
775
641
|
<div class="ttc" id="classSVF_1_1SymbolTableInfo_html_a267169023fc4f8dd66b145f7231fec11"><div class="ttname"><a href="classSVF_1_1SymbolTableInfo.html#a267169023fc4f8dd66b145f7231fec11">SVF::SymbolTableInfo::SymbolInfo</a></div><div class="ttdeci">static SymbolTableInfo * SymbolInfo()</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis. ...</div><div class="ttdef"><b>Definition:</b> <a href="SymbolTableInfo_8cpp_source.html#l00106">SymbolTableInfo.cpp:106</a></div></div>
|
|
642
|
+
<div class="ttc" id="classSVF_1_1SVFStat_html_a5383691a34426a1a997b5eed387f1831"><div class="ttname"><a href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">SVF::SVFStat::timeStatMap</a></div><div class="ttdeci">TIMEStatMap timeStatMap</div><div class="ttdef"><b>Definition:</b> <a href="SVFStat_8h_source.html#l00074">SVFStat.h:74</a></div></div>
|
|
776
643
|
<div class="ttc" id="cJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
777
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_afdb975520329be0c33cc7bdd51ba7031"><div class="ttname"><a href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">SVF::PTAStat::PTNumStatMap</a></div><div class="ttdeci">NUMStatMap PTNumStatMap</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#
|
|
778
|
-
</div><!-- fragment -->
|
|
779
|
-
</div>
|
|
780
|
-
</div>
|
|
781
|
-
<a id="a7ce0630cfe41448bec002f03a176175d"></a>
|
|
782
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a7ce0630cfe41448bec002f03a176175d">◆ </a></span>printStatPerQuery()</h2>
|
|
783
|
-
|
|
784
|
-
<div class="memitem">
|
|
785
|
-
<div class="memproto">
|
|
786
|
-
<table class="mlabels">
|
|
787
|
-
<tr>
|
|
788
|
-
<td class="mlabels-left">
|
|
789
|
-
<table class="memname">
|
|
790
|
-
<tr>
|
|
791
|
-
<td class="memname">virtual void SVF::PTAStat::printStatPerQuery </td>
|
|
792
|
-
<td>(</td>
|
|
793
|
-
<td class="paramtype"><a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> </td>
|
|
794
|
-
<td class="paramname">, </td>
|
|
795
|
-
</tr>
|
|
796
|
-
<tr>
|
|
797
|
-
<td class="paramkey"></td>
|
|
798
|
-
<td></td>
|
|
799
|
-
<td class="paramtype">const <a class="el" href="classSVF_1_1PointsTo.html">PointsTo</a> & </td>
|
|
800
|
-
<td class="paramname"> </td>
|
|
801
|
-
</tr>
|
|
802
|
-
<tr>
|
|
803
|
-
<td></td>
|
|
804
|
-
<td>)</td>
|
|
805
|
-
<td></td><td></td>
|
|
806
|
-
</tr>
|
|
807
|
-
</table>
|
|
808
|
-
</td>
|
|
809
|
-
<td class="mlabels-right">
|
|
810
|
-
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
|
|
811
|
-
</tr>
|
|
812
|
-
</table>
|
|
813
|
-
</div><div class="memdoc">
|
|
814
|
-
|
|
815
|
-
<p>Reimplemented in <a class="el" href="classSVF_1_1DDAStat.html#ae695696e5cd06eb27635887f0de30eff">SVF::DDAStat</a>.</p>
|
|
816
|
-
|
|
817
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00161">161</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
818
|
-
<div class="fragment"><div class="line"><a name="l00161"></a><span class="lineno"> 161</span> {}</div></div><!-- fragment -->
|
|
819
|
-
</div>
|
|
820
|
-
</div>
|
|
821
|
-
<a id="a5524ff7901659f56e9de343992be8f3b"></a>
|
|
822
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a5524ff7901659f56e9de343992be8f3b">◆ </a></span>startClk()</h2>
|
|
823
|
-
|
|
824
|
-
<div class="memitem">
|
|
825
|
-
<div class="memproto">
|
|
826
|
-
<table class="mlabels">
|
|
827
|
-
<tr>
|
|
828
|
-
<td class="mlabels-left">
|
|
829
|
-
<table class="memname">
|
|
830
|
-
<tr>
|
|
831
|
-
<td class="memname">virtual void SVF::PTAStat::startClk </td>
|
|
832
|
-
<td>(</td>
|
|
833
|
-
<td class="paramname"></td><td>)</td>
|
|
834
|
-
<td></td>
|
|
835
|
-
</tr>
|
|
836
|
-
</table>
|
|
837
|
-
</td>
|
|
838
|
-
<td class="mlabels-right">
|
|
839
|
-
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
|
|
840
|
-
</tr>
|
|
841
|
-
</table>
|
|
842
|
-
</div><div class="memdoc">
|
|
843
|
-
|
|
844
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00134">134</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
845
|
-
<div class="fragment"><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  <a class="code" href="classSVF_1_1PTAStat.html#a59e0fe6fa506f1cf319b5acaf9d28be9">startTime</a> = <a class="code" href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">getClk</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  }</div><div class="ttc" id="classSVF_1_1PTAStat_html_a59e0fe6fa506f1cf319b5acaf9d28be9"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a59e0fe6fa506f1cf319b5acaf9d28be9">SVF::PTAStat::startTime</a></div><div class="ttdeci">double startTime</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00152">PTAStat.h:152</a></div></div>
|
|
846
|
-
<div class="ttc" id="classSVF_1_1PTAStat_html_a3c4eaa1695ea13405911ae1621f98edc"><div class="ttname"><a href="classSVF_1_1PTAStat.html#a3c4eaa1695ea13405911ae1621f98edc">SVF::PTAStat::getClk</a></div><div class="ttdeci">static double getClk(bool mark=false)</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8cpp_source.html#l00114">PTAStat.cpp:114</a></div></div>
|
|
644
|
+
<div class="ttc" id="classSVF_1_1PTAStat_html_afdb975520329be0c33cc7bdd51ba7031"><div class="ttname"><a href="classSVF_1_1PTAStat.html#afdb975520329be0c33cc7bdd51ba7031">SVF::PTAStat::PTNumStatMap</a></div><div class="ttdeci">NUMStatMap PTNumStatMap</div><div class="ttdef"><b>Definition:</b> <a href="PTAStat_8h_source.html#l00123">PTAStat.h:123</a></div></div>
|
|
847
645
|
</div><!-- fragment -->
|
|
848
646
|
</div>
|
|
849
647
|
</div>
|
|
@@ -871,7 +669,7 @@ Private Attributes</h2></td></tr>
|
|
|
871
669
|
<p>Average points-to size of all variables. </p>
|
|
872
670
|
<p>Average Points-to set size. </p>
|
|
873
671
|
|
|
874
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
672
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00103">103</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
875
673
|
|
|
876
674
|
</div>
|
|
877
675
|
</div>
|
|
@@ -898,7 +696,7 @@ Private Attributes</h2></td></tr>
|
|
|
898
696
|
<p>Average points-to size of top-level variables. </p>
|
|
899
697
|
<p>Average Points-to set size of top level pointers. </p>
|
|
900
698
|
|
|
901
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
699
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00104">104</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
902
700
|
|
|
903
701
|
</div>
|
|
904
702
|
</div>
|
|
@@ -914,23 +712,7 @@ Private Attributes</h2></td></tr>
|
|
|
914
712
|
</table>
|
|
915
713
|
</div><div class="memdoc">
|
|
916
714
|
|
|
917
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
918
|
-
|
|
919
|
-
</div>
|
|
920
|
-
</div>
|
|
921
|
-
<a id="afa718535839a939e51afc0f8c1fbdac6"></a>
|
|
922
|
-
<h2 class="memtitle"><span class="permalink"><a href="#afa718535839a939e51afc0f8c1fbdac6">◆ </a></span>generalNumMap</h2>
|
|
923
|
-
|
|
924
|
-
<div class="memitem">
|
|
925
|
-
<div class="memproto">
|
|
926
|
-
<table class="memname">
|
|
927
|
-
<tr>
|
|
928
|
-
<td class="memname"><a class="el" href="classSVF_1_1PTAStat.html#a7e8f9f9c1662822f3f8bd016db84e1e6">NUMStatMap</a> SVF::PTAStat::generalNumMap</td>
|
|
929
|
-
</tr>
|
|
930
|
-
</table>
|
|
931
|
-
</div><div class="memdoc">
|
|
932
|
-
|
|
933
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00147">147</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
715
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00127">127</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
934
716
|
|
|
935
717
|
</div>
|
|
936
718
|
</div>
|
|
@@ -946,7 +728,7 @@ Private Attributes</h2></td></tr>
|
|
|
946
728
|
</table>
|
|
947
729
|
</div><div class="memdoc">
|
|
948
730
|
|
|
949
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
731
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00124">124</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
950
732
|
|
|
951
733
|
</div>
|
|
952
734
|
</div>
|
|
@@ -973,7 +755,7 @@ Private Attributes</h2></td></tr>
|
|
|
973
755
|
<p>max Number of nodes in one scc </p>
|
|
974
756
|
<p>max Number of nodes in one scc cycle </p>
|
|
975
757
|
|
|
976
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
758
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00116">116</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
977
759
|
|
|
978
760
|
</div>
|
|
979
761
|
</div>
|
|
@@ -1000,7 +782,7 @@ Private Attributes</h2></td></tr>
|
|
|
1000
782
|
<p>Max points-to size. </p>
|
|
1001
783
|
<p>Max Points-to set size. </p>
|
|
1002
784
|
|
|
1003
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
785
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00105">105</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1004
786
|
|
|
1005
787
|
</div>
|
|
1006
788
|
</div>
|
|
@@ -1027,7 +809,7 @@ Private Attributes</h2></td></tr>
|
|
|
1027
809
|
<p>Max struct size. </p>
|
|
1028
810
|
<p>Max struct size (bytes) </p>
|
|
1029
811
|
|
|
1030
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
812
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00062">62</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1031
813
|
|
|
1032
814
|
</div>
|
|
1033
815
|
</div>
|
|
@@ -1051,7 +833,7 @@ Private Attributes</h2></td></tr>
|
|
|
1051
833
|
</table>
|
|
1052
834
|
</div><div class="memdoc">
|
|
1053
835
|
|
|
1054
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
836
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00139">139</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1055
837
|
|
|
1056
838
|
</div>
|
|
1057
839
|
</div>
|
|
@@ -1075,7 +857,7 @@ Private Attributes</h2></td></tr>
|
|
|
1075
857
|
</table>
|
|
1076
858
|
</div><div class="memdoc">
|
|
1077
859
|
|
|
1078
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
860
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00094">94</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1079
861
|
|
|
1080
862
|
</div>
|
|
1081
863
|
</div>
|
|
@@ -1099,7 +881,7 @@ Private Attributes</h2></td></tr>
|
|
|
1099
881
|
</table>
|
|
1100
882
|
</div><div class="memdoc">
|
|
1101
883
|
|
|
1102
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
884
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00095">95</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1103
885
|
|
|
1104
886
|
</div>
|
|
1105
887
|
</div>
|
|
@@ -1125,7 +907,7 @@ Private Attributes</h2></td></tr>
|
|
|
1125
907
|
|
|
1126
908
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> addr edge. </p>
|
|
1127
909
|
|
|
1128
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
910
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00065">65</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1129
911
|
|
|
1130
912
|
</div>
|
|
1131
913
|
</div>
|
|
@@ -1151,7 +933,7 @@ Private Attributes</h2></td></tr>
|
|
|
1151
933
|
|
|
1152
934
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> call edge. </p>
|
|
1153
935
|
|
|
1154
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
936
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00070">70</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1155
937
|
|
|
1156
938
|
</div>
|
|
1157
939
|
</div>
|
|
@@ -1178,7 +960,7 @@ Private Attributes</h2></td></tr>
|
|
|
1178
960
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node which is purely constant. </p>
|
|
1179
961
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node which is purely scalar. </p>
|
|
1180
962
|
|
|
1181
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
963
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00092">92</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1182
964
|
|
|
1183
965
|
</div>
|
|
1184
966
|
</div>
|
|
@@ -1204,7 +986,7 @@ Private Attributes</h2></td></tr>
|
|
|
1204
986
|
|
|
1205
987
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> copy edge. </p>
|
|
1206
988
|
|
|
1207
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
989
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00068">68</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1208
990
|
|
|
1209
991
|
</div>
|
|
1210
992
|
</div>
|
|
@@ -1230,7 +1012,7 @@ Private Attributes</h2></td></tr>
|
|
|
1230
1012
|
|
|
1231
1013
|
<p>Number of scc cycles detected. </p>
|
|
1232
1014
|
|
|
1233
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1015
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00113">113</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1234
1016
|
|
|
1235
1017
|
</div>
|
|
1236
1018
|
</div>
|
|
@@ -1254,7 +1036,7 @@ Private Attributes</h2></td></tr>
|
|
|
1254
1036
|
</table>
|
|
1255
1037
|
</div><div class="memdoc">
|
|
1256
1038
|
|
|
1257
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1039
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00080">80</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1258
1040
|
|
|
1259
1041
|
</div>
|
|
1260
1042
|
</div>
|
|
@@ -1281,7 +1063,7 @@ Private Attributes</h2></td></tr>
|
|
|
1281
1063
|
<p>Function numbers. </p>
|
|
1282
1064
|
<p>function numbers </p>
|
|
1283
1065
|
|
|
1284
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1066
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00082">82</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1285
1067
|
|
|
1286
1068
|
</div>
|
|
1287
1069
|
</div>
|
|
@@ -1307,7 +1089,7 @@ Private Attributes</h2></td></tr>
|
|
|
1307
1089
|
|
|
1308
1090
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> gep object node (field obj, dynamically created dummy node) </p>
|
|
1309
1091
|
|
|
1310
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1092
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00101">101</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1311
1093
|
|
|
1312
1094
|
</div>
|
|
1313
1095
|
</div>
|
|
@@ -1333,7 +1115,7 @@ Private Attributes</h2></td></tr>
|
|
|
1333
1115
|
|
|
1334
1116
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> gep value node (field value, dynamically created dummy node) </p>
|
|
1335
1117
|
|
|
1336
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1118
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00098">98</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1337
1119
|
|
|
1338
1120
|
</div>
|
|
1339
1121
|
</div>
|
|
@@ -1359,7 +1141,7 @@ Private Attributes</h2></td></tr>
|
|
|
1359
1141
|
|
|
1360
1142
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> gep edge. </p>
|
|
1361
1143
|
|
|
1362
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1144
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00069">69</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1363
1145
|
|
|
1364
1146
|
</div>
|
|
1365
1147
|
</div>
|
|
@@ -1385,7 +1167,7 @@ Private Attributes</h2></td></tr>
|
|
|
1385
1167
|
|
|
1386
1168
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> global object node. </p>
|
|
1387
1169
|
|
|
1388
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1170
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00083">83</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1389
1171
|
|
|
1390
1172
|
</div>
|
|
1391
1173
|
</div>
|
|
@@ -1411,7 +1193,7 @@ Private Attributes</h2></td></tr>
|
|
|
1411
1193
|
|
|
1412
1194
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> heap object node. </p>
|
|
1413
1195
|
|
|
1414
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1196
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00084">84</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1415
1197
|
|
|
1416
1198
|
</div>
|
|
1417
1199
|
</div>
|
|
@@ -1437,7 +1219,7 @@ Private Attributes</h2></td></tr>
|
|
|
1437
1219
|
|
|
1438
1220
|
<p>Number of indirect callsites. </p>
|
|
1439
1221
|
|
|
1440
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1222
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00109">109</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1441
1223
|
|
|
1442
1224
|
</div>
|
|
1443
1225
|
</div>
|
|
@@ -1463,7 +1245,7 @@ Private Attributes</h2></td></tr>
|
|
|
1463
1245
|
|
|
1464
1246
|
<p>Number of indirect calledge resolved. </p>
|
|
1465
1247
|
|
|
1466
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1248
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00110">110</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1467
1249
|
|
|
1468
1250
|
</div>
|
|
1469
1251
|
</div>
|
|
@@ -1489,7 +1271,7 @@ Private Attributes</h2></td></tr>
|
|
|
1489
1271
|
|
|
1490
1272
|
<p>Number of iterations during resolution. </p>
|
|
1491
1273
|
|
|
1492
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1274
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00107">107</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1493
1275
|
|
|
1494
1276
|
</div>
|
|
1495
1277
|
</div>
|
|
@@ -1515,7 +1297,7 @@ Private Attributes</h2></td></tr>
|
|
|
1515
1297
|
|
|
1516
1298
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> load edge. </p>
|
|
1517
1299
|
|
|
1518
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1300
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00066">66</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1519
1301
|
|
|
1520
1302
|
</div>
|
|
1521
1303
|
</div>
|
|
@@ -1541,7 +1323,7 @@ Private Attributes</h2></td></tr>
|
|
|
1541
1323
|
|
|
1542
1324
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node, each of them maps to a llvm value. </p>
|
|
1543
1325
|
|
|
1544
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1326
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00100">100</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1545
1327
|
|
|
1546
1328
|
</div>
|
|
1547
1329
|
</div>
|
|
@@ -1567,7 +1349,7 @@ Private Attributes</h2></td></tr>
|
|
|
1567
1349
|
|
|
1568
1350
|
<p>Number of nodes in cycles detected. </p>
|
|
1569
1351
|
|
|
1570
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1352
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00115">115</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1571
1353
|
|
|
1572
1354
|
</div>
|
|
1573
1355
|
</div>
|
|
@@ -1593,7 +1375,7 @@ Private Attributes</h2></td></tr>
|
|
|
1593
1375
|
|
|
1594
1376
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node which is non pointer type object (do not have pts) </p>
|
|
1595
1377
|
|
|
1596
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1378
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00091">91</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1597
1379
|
|
|
1598
1380
|
</div>
|
|
1599
1381
|
</div>
|
|
@@ -1619,7 +1401,7 @@ Private Attributes</h2></td></tr>
|
|
|
1619
1401
|
|
|
1620
1402
|
<p>Number of pointers points-to null. </p>
|
|
1621
1403
|
|
|
1622
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1404
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00118">118</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1623
1405
|
|
|
1624
1406
|
</div>
|
|
1625
1407
|
</div>
|
|
@@ -1645,7 +1427,7 @@ Private Attributes</h2></td></tr>
|
|
|
1645
1427
|
|
|
1646
1428
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node has const array (maybe nested with struct) </p>
|
|
1647
1429
|
|
|
1648
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1430
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00090">90</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1649
1431
|
|
|
1650
1432
|
</div>
|
|
1651
1433
|
</div>
|
|
@@ -1671,7 +1453,7 @@ Private Attributes</h2></td></tr>
|
|
|
1671
1453
|
|
|
1672
1454
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node has const struct (maybe nested with array) </p>
|
|
1673
1455
|
|
|
1674
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1456
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00089">89</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1675
1457
|
|
|
1676
1458
|
</div>
|
|
1677
1459
|
</div>
|
|
@@ -1698,7 +1480,7 @@ Private Attributes</h2></td></tr>
|
|
|
1698
1480
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node has var array (maybe nested with struct) </p>
|
|
1699
1481
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node has array (maybe nested with struct) </p>
|
|
1700
1482
|
|
|
1701
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1483
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00088">88</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1702
1484
|
|
|
1703
1485
|
</div>
|
|
1704
1486
|
</div>
|
|
@@ -1725,7 +1507,7 @@ Private Attributes</h2></td></tr>
|
|
|
1725
1507
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node has var struct (maybe nested with array) </p>
|
|
1726
1508
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node has struct (maybe nested with array) </p>
|
|
1727
1509
|
|
|
1728
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1510
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00087">87</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1729
1511
|
|
|
1730
1512
|
</div>
|
|
1731
1513
|
</div>
|
|
@@ -1751,7 +1533,7 @@ Private Attributes</h2></td></tr>
|
|
|
1751
1533
|
|
|
1752
1534
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> value node, each of them maps to a llvm value. </p>
|
|
1753
1535
|
|
|
1754
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1536
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00097">97</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1755
1537
|
|
|
1756
1538
|
</div>
|
|
1757
1539
|
</div>
|
|
@@ -1778,7 +1560,7 @@ Private Attributes</h2></td></tr>
|
|
|
1778
1560
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> processed addr edge. </p>
|
|
1779
1561
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> addr processed edge. </p>
|
|
1780
1562
|
|
|
1781
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1563
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00073">73</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1782
1564
|
|
|
1783
1565
|
</div>
|
|
1784
1566
|
</div>
|
|
@@ -1805,7 +1587,7 @@ Private Attributes</h2></td></tr>
|
|
|
1805
1587
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> processed copy edge. </p>
|
|
1806
1588
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> copy processed edge. </p>
|
|
1807
1589
|
|
|
1808
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1590
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00076">76</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1809
1591
|
|
|
1810
1592
|
</div>
|
|
1811
1593
|
</div>
|
|
@@ -1832,7 +1614,7 @@ Private Attributes</h2></td></tr>
|
|
|
1832
1614
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> processed gep edge. </p>
|
|
1833
1615
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> gep processed edge. </p>
|
|
1834
1616
|
|
|
1835
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1617
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00077">77</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1836
1618
|
|
|
1837
1619
|
</div>
|
|
1838
1620
|
</div>
|
|
@@ -1859,7 +1641,7 @@ Private Attributes</h2></td></tr>
|
|
|
1859
1641
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> processed load edge. </p>
|
|
1860
1642
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> load processed edge. </p>
|
|
1861
1643
|
|
|
1862
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1644
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00074">74</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1863
1645
|
|
|
1864
1646
|
</div>
|
|
1865
1647
|
</div>
|
|
@@ -1886,7 +1668,7 @@ Private Attributes</h2></td></tr>
|
|
|
1886
1668
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> processed store edge. </p>
|
|
1887
1669
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> store processed edge. </p>
|
|
1888
1670
|
|
|
1889
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1671
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00075">75</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1890
1672
|
|
|
1891
1673
|
</div>
|
|
1892
1674
|
</div>
|
|
@@ -1913,7 +1695,7 @@ Private Attributes</h2></td></tr>
|
|
|
1913
1695
|
<p>Number of scc cycles detected. </p>
|
|
1914
1696
|
<p>Number of pwc scc cycles detected. </p>
|
|
1915
1697
|
|
|
1916
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1698
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00114">114</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1917
1699
|
|
|
1918
1700
|
</div>
|
|
1919
1701
|
</div>
|
|
@@ -1939,7 +1721,7 @@ Private Attributes</h2></td></tr>
|
|
|
1939
1721
|
|
|
1940
1722
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> return edge. </p>
|
|
1941
1723
|
|
|
1942
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1724
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00071">71</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1943
1725
|
|
|
1944
1726
|
</div>
|
|
1945
1727
|
</div>
|
|
@@ -1965,7 +1747,7 @@ Private Attributes</h2></td></tr>
|
|
|
1965
1747
|
|
|
1966
1748
|
<p>Number of scc detection performed. </p>
|
|
1967
1749
|
|
|
1968
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1750
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00112">112</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1969
1751
|
|
|
1970
1752
|
</div>
|
|
1971
1753
|
</div>
|
|
@@ -1992,7 +1774,7 @@ Private Attributes</h2></td></tr>
|
|
|
1992
1774
|
<p>num of field representatives </p>
|
|
1993
1775
|
<p>number of field representatives </p>
|
|
1994
1776
|
|
|
1995
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1777
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00079">79</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1996
1778
|
|
|
1997
1779
|
</div>
|
|
1998
1780
|
</div>
|
|
@@ -2018,7 +1800,7 @@ Private Attributes</h2></td></tr>
|
|
|
2018
1800
|
|
|
2019
1801
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> stack object node. </p>
|
|
2020
1802
|
|
|
2021
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1803
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00085">85</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2022
1804
|
|
|
2023
1805
|
</div>
|
|
2024
1806
|
</div>
|
|
@@ -2044,7 +1826,7 @@ Private Attributes</h2></td></tr>
|
|
|
2044
1826
|
|
|
2045
1827
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> store edge. </p>
|
|
2046
1828
|
|
|
2047
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1829
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00067">67</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2048
1830
|
|
|
2049
1831
|
</div>
|
|
2050
1832
|
</div>
|
|
@@ -2071,7 +1853,7 @@ Private Attributes</h2></td></tr>
|
|
|
2071
1853
|
<p>time of processing copys and geps </p>
|
|
2072
1854
|
<p>process copy and gep time </p>
|
|
2073
1855
|
|
|
2074
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1856
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00056">56</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2075
1857
|
|
|
2076
1858
|
</div>
|
|
2077
1859
|
</div>
|
|
@@ -2098,7 +1880,7 @@ Private Attributes</h2></td></tr>
|
|
|
2098
1880
|
<p>time of processing loads and stores </p>
|
|
2099
1881
|
<p>process load and store time </p>
|
|
2100
1882
|
|
|
2101
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1883
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00055">55</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2102
1884
|
|
|
2103
1885
|
</div>
|
|
2104
1886
|
</div>
|
|
@@ -2122,7 +1904,7 @@ Private Attributes</h2></td></tr>
|
|
|
2122
1904
|
</table>
|
|
2123
1905
|
</div><div class="memdoc">
|
|
2124
1906
|
|
|
2125
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1907
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00138">138</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2126
1908
|
|
|
2127
1909
|
</div>
|
|
2128
1910
|
</div>
|
|
@@ -2133,12 +1915,12 @@ Private Attributes</h2></td></tr>
|
|
|
2133
1915
|
<div class="memproto">
|
|
2134
1916
|
<table class="memname">
|
|
2135
1917
|
<tr>
|
|
2136
|
-
<td class="memname"><a class="el" href="
|
|
1918
|
+
<td class="memname"><a class="el" href="classSVF_1_1SVFStat.html#ab810863d70cb2f5b4e312d07eae51227">NUMStatMap</a> SVF::PTAStat::PTNumStatMap</td>
|
|
2137
1919
|
</tr>
|
|
2138
1920
|
</table>
|
|
2139
1921
|
</div><div class="memdoc">
|
|
2140
1922
|
|
|
2141
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1923
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00123">123</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2142
1924
|
|
|
2143
1925
|
</div>
|
|
2144
1926
|
</div>
|
|
@@ -2164,7 +1946,7 @@ Private Attributes</h2></td></tr>
|
|
|
2164
1946
|
|
|
2165
1947
|
<p>Total SCC detection time. </p>
|
|
2166
1948
|
|
|
2167
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1949
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00052">52</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2168
1950
|
|
|
2169
1951
|
</div>
|
|
2170
1952
|
</div>
|
|
@@ -2190,7 +1972,7 @@ Private Attributes</h2></td></tr>
|
|
|
2190
1972
|
|
|
2191
1973
|
<p>Total SCC merge time. </p>
|
|
2192
1974
|
|
|
2193
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
1975
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00053">53</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2194
1976
|
|
|
2195
1977
|
</div>
|
|
2196
1978
|
</div>
|
|
@@ -2206,23 +1988,7 @@ Private Attributes</h2></td></tr>
|
|
|
2206
1988
|
</table>
|
|
2207
1989
|
</div><div class="memdoc">
|
|
2208
1990
|
|
|
2209
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
2210
|
-
|
|
2211
|
-
</div>
|
|
2212
|
-
</div>
|
|
2213
|
-
<a id="a3724756ac0527ba3d199be32e38c6337"></a>
|
|
2214
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a3724756ac0527ba3d199be32e38c6337">◆ </a></span>timeStatMap</h2>
|
|
2215
|
-
|
|
2216
|
-
<div class="memitem">
|
|
2217
|
-
<div class="memproto">
|
|
2218
|
-
<table class="memname">
|
|
2219
|
-
<tr>
|
|
2220
|
-
<td class="memname"><a class="el" href="classSVF_1_1PTAStat.html#a28f304e7095f3843ca4cc017bc1f7b10">TIMEStatMap</a> SVF::PTAStat::timeStatMap</td>
|
|
2221
|
-
</tr>
|
|
2222
|
-
</table>
|
|
2223
|
-
</div><div class="memdoc">
|
|
2224
|
-
|
|
2225
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00149">149</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
1991
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00126">126</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2226
1992
|
|
|
2227
1993
|
</div>
|
|
2228
1994
|
</div>
|
|
@@ -2249,7 +2015,7 @@ Private Attributes</h2></td></tr>
|
|
|
2249
2015
|
<p>Total analysis time. </p>
|
|
2250
2016
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> value nodes ?? </p>
|
|
2251
2017
|
|
|
2252
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
2018
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00051">51</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2253
2019
|
|
|
2254
2020
|
</div>
|
|
2255
2021
|
</div>
|
|
@@ -2275,7 +2041,7 @@ Private Attributes</h2></td></tr>
|
|
|
2275
2041
|
|
|
2276
2042
|
<p>Total <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> edge number. </p>
|
|
2277
2043
|
|
|
2278
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
2044
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00063">63</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2279
2045
|
|
|
2280
2046
|
</div>
|
|
2281
2047
|
</div>
|
|
@@ -2301,7 +2067,7 @@ Private Attributes</h2></td></tr>
|
|
|
2301
2067
|
|
|
2302
2068
|
<p>Total <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> field object node. </p>
|
|
2303
2069
|
|
|
2304
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
2070
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00061">61</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2305
2071
|
|
|
2306
2072
|
</div>
|
|
2307
2073
|
</div>
|
|
@@ -2327,7 +2093,7 @@ Private Attributes</h2></td></tr>
|
|
|
2327
2093
|
|
|
2328
2094
|
<p>Total <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> object node. </p>
|
|
2329
2095
|
|
|
2330
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
2096
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00060">60</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2331
2097
|
|
|
2332
2098
|
</div>
|
|
2333
2099
|
</div>
|
|
@@ -2354,7 +2120,7 @@ Private Attributes</h2></td></tr>
|
|
|
2354
2120
|
<p>Total <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> value node. </p>
|
|
2355
2121
|
<p><a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> value nodes. </p>
|
|
2356
2122
|
|
|
2357
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
2123
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00059">59</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2358
2124
|
|
|
2359
2125
|
</div>
|
|
2360
2126
|
</div>
|
|
@@ -2381,7 +2147,7 @@ Private Attributes</h2></td></tr>
|
|
|
2381
2147
|
<p>time of updating call graph </p>
|
|
2382
2148
|
<p>process copy and gep time ?? </p>
|
|
2383
2149
|
|
|
2384
|
-
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#
|
|
2150
|
+
<p class="definition">Definition at line <a class="el" href="PTAStat_8h_source.html#l00057">57</a> of file <a class="el" href="PTAStat_8h_source.html">PTAStat.h</a>.</p>
|
|
2385
2151
|
|
|
2386
2152
|
</div>
|
|
2387
2153
|
</div>
|