svf-tools 1.0.909 → 1.0.910
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/AbstractInterpretation_8cpp_source.html +13 -13
- package/SVF-doxygen/html/AbstractInterpretation_8h_source.html +2 -2
- package/SVF-doxygen/html/AbstractState_8cpp_source.html +25 -25
- package/SVF-doxygen/html/AbstractState_8h_source.html +390 -391
- package/SVF-doxygen/html/BufOverflowChecker_8cpp_source.html +2 -2
- package/SVF-doxygen/html/RelExeState_8cpp_source.html +5 -5
- package/SVF-doxygen/html/RelExeState_8h_source.html +178 -179
- package/SVF-doxygen/html/RelationSolver_8cpp_source.html +3 -3
- package/SVF-doxygen/html/SVFIR2AbsState_8cpp_source.html +10 -10
- package/SVF-doxygen/html/SVFIR2AbsState_8h_source.html +8 -8
- package/SVF-doxygen/html/ae_8cpp_source.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1AEStat.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1AbstractInterpretation-members.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1AbstractInterpretation.html +18 -18
- package/SVF-doxygen/html/classSVF_1_1AbstractState-members.html +25 -25
- package/SVF-doxygen/html/classSVF_1_1AbstractState.html +340 -342
- package/SVF-doxygen/html/classSVF_1_1BufOverflowChecker-members.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1BufOverflowChecker.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1RelExeState-members.html +19 -19
- package/SVF-doxygen/html/classSVF_1_1RelExeState.html +131 -132
- package/SVF-doxygen/html/classSVF_1_1RelationSolver.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1SVFIR2AbsState.html +22 -22
- package/SVF-doxygen/html/classSymblicAbstractionTest.html +2 -2
- package/SVF-doxygen/html/functions.html +6 -6
- package/SVF-doxygen/html/functions_a.html +9 -3
- package/SVF-doxygen/html/functions_func.html +1 -1
- package/SVF-doxygen/html/functions_func_g.html +2 -2
- package/SVF-doxygen/html/functions_func_p.html +3 -3
- package/SVF-doxygen/html/functions_g.html +2 -2
- package/SVF-doxygen/html/functions_i.html +4 -4
- package/SVF-doxygen/html/functions_l.html +3 -9
- package/SVF-doxygen/html/functions_n.html +3 -3
- package/SVF-doxygen/html/functions_p.html +22 -28
- package/SVF-doxygen/html/functions_r.html +6 -6
- package/SVF-doxygen/html/functions_s.html +12 -12
- package/SVF-doxygen/html/functions_t.html +5 -5
- package/SVF-doxygen/html/functions_type.html +6 -0
- package/SVF-doxygen/html/functions_type_l.html +0 -6
- package/SVF-doxygen/html/functions_v.html +3 -3
- package/SVF-doxygen/html/functions_vars.html +6 -6
- package/SVF-doxygen/html/search/all_0.js +50 -50
- package/SVF-doxygen/html/search/all_1.js +210 -208
- package/SVF-doxygen/html/search/all_10.js +21 -21
- package/SVF-doxygen/html/search/all_11.js +3 -3
- package/SVF-doxygen/html/search/all_12.js +10 -10
- package/SVF-doxygen/html/search/all_13.js +6 -6
- package/SVF-doxygen/html/search/all_15.js +2 -2
- package/SVF-doxygen/html/search/all_2.js +180 -180
- package/SVF-doxygen/html/search/all_3.js +635 -635
- package/SVF-doxygen/html/search/all_4.js +237 -237
- package/SVF-doxygen/html/search/all_5.js +120 -120
- package/SVF-doxygen/html/search/all_6.js +236 -236
- package/SVF-doxygen/html/search/all_7.js +1039 -1039
- package/SVF-doxygen/html/search/all_8.js +224 -224
- package/SVF-doxygen/html/search/all_9.js +627 -627
- package/SVF-doxygen/html/search/all_a.js +46 -46
- package/SVF-doxygen/html/search/all_b.js +24 -24
- package/SVF-doxygen/html/search/all_c.js +96 -98
- package/SVF-doxygen/html/search/all_e.js +2 -2
- package/SVF-doxygen/html/search/all_f.js +1 -1
- package/SVF-doxygen/html/search/functions_1.js +1 -1
- package/SVF-doxygen/html/search/functions_10.js +9 -9
- package/SVF-doxygen/html/search/functions_11.js +1 -1
- package/SVF-doxygen/html/search/functions_12.js +1 -1
- package/SVF-doxygen/html/search/functions_7.js +1 -1
- package/SVF-doxygen/html/search/typedefs_0.js +13 -11
- package/SVF-doxygen/html/search/typedefs_1.js +27 -27
- package/SVF-doxygen/html/search/typedefs_2.js +125 -125
- package/SVF-doxygen/html/search/typedefs_3.js +39 -39
- package/SVF-doxygen/html/search/typedefs_4.js +17 -17
- package/SVF-doxygen/html/search/typedefs_5.js +42 -42
- package/SVF-doxygen/html/search/typedefs_6.js +54 -54
- package/SVF-doxygen/html/search/typedefs_7.js +47 -47
- package/SVF-doxygen/html/search/typedefs_8.js +1 -1
- package/SVF-doxygen/html/search/typedefs_9.js +4 -4
- package/SVF-doxygen/html/search/typedefs_a.js +24 -26
- package/SVF-doxygen/html/search/variables_0.js +50 -50
- package/SVF-doxygen/html/search/variables_13.js +3 -3
- package/SVF-doxygen/html/search/variables_9.js +1 -1
- package/SVF-doxygen/html/search/variables_e.js +1 -1
- package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1RelExeState_01_4.html +6 -6
- package/package.json +1 -1
- package/svf/include/AE/Core/AbstractState.h +23 -24
- package/svf/include/AE/Core/RelExeState.h +10 -11
- package/svf/include/AE/Svfexe/AbstractInterpretation.h +2 -2
- package/svf/lib/AE/Core/AbstractState.cpp +22 -22
- package/svf/lib/AE/Core/RelExeState.cpp +3 -3
- package/svf/lib/AE/Svfexe/AbstractInterpretation.cpp +3 -3
- package/svf/lib/AE/Svfexe/SVFIR2AbsState.cpp +8 -8
|
@@ -240,7 +240,7 @@ $(function() {
|
|
|
240
240
|
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  _postAbstractTrace[node] = _svfir2ExeState->getEs();</div>
|
|
241
241
|
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> }</div>
|
|
242
242
|
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  </div>
|
|
243
|
-
<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#
|
|
243
|
+
<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a3a12a86670eef9cd22b1853c7c6fa208"> 180</a></span> <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a3a12a86670eef9cd22b1853c7c6fa208">AbstractInterpretation::propagateStateIfFeasible</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a> *block)</div>
|
|
244
244
|
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> {</div>
|
|
245
245
|
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a> es;</div>
|
|
246
246
|
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> inEdgeNum = 0;</div>
|
|
@@ -583,7 +583,7 @@ $(function() {
|
|
|
583
583
|
<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> {</div>
|
|
584
584
|
<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>  _stat->getBlockTrace()++;</div>
|
|
585
585
|
<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>  <span class="comment">// Get execution states from in edges</span></div>
|
|
586
|
-
<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>  <span class="keywordflow">if</span> (!
|
|
586
|
+
<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>  <span class="keywordflow">if</span> (!propagateStateIfFeasible(node))</div>
|
|
587
587
|
<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  {</div>
|
|
588
588
|
<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>  <span class="comment">// No ES on the in edges - Infeasible block</span></div>
|
|
589
589
|
<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>  <span class="keywordflow">return</span>;</div>
|
|
@@ -755,7 +755,7 @@ $(function() {
|
|
|
755
755
|
<div class="line"><a name="l00694"></a><span class="lineno"><a class="line" href="classSVF_1_1AbstractInterpretation.html#a71dff5d6a5b291014c0a65d3a6d7c8c1"> 694</a></span> <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a71dff5d6a5b291014c0a65d3a6d7c8c1">AbstractInterpretation::handleCycle</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1WTOCycle.html">ICFGWTOCycle</a> *cycle)</div>
|
|
756
756
|
<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> {</div>
|
|
757
757
|
<div class="line"><a name="l00696"></a><span class="lineno"> 696</span>  <span class="comment">// Get execution states from in edges</span></div>
|
|
758
|
-
<div class="line"><a name="l00697"></a><span class="lineno"> 697</span>  <span class="keywordflow">if</span> (!
|
|
758
|
+
<div class="line"><a name="l00697"></a><span class="lineno"> 697</span>  <span class="keywordflow">if</span> (!propagateStateIfFeasible(cycle-><a class="code" href="classSVF_1_1WTOCycle.html#ace60ecb07603681de5c3020d0d3c5079">head</a>()))</div>
|
|
759
759
|
<div class="line"><a name="l00698"></a><span class="lineno"> 698</span>  {</div>
|
|
760
760
|
<div class="line"><a name="l00699"></a><span class="lineno"> 699</span>  <span class="comment">// No ES on the in edges - Infeasible block</span></div>
|
|
761
761
|
<div class="line"><a name="l00700"></a><span class="lineno"> 700</span>  <span class="keywordflow">return</span>;</div>
|
|
@@ -1829,7 +1829,7 @@ $(function() {
|
|
|
1829
1829
|
<div class="ttc" id="astructSVF_1_1AbstractValue_html_a078ac137e60c5a2585a649f7ec40a8a8"><div class="ttname"><a href="structSVF_1_1AbstractValue.html#a078ac137e60c5a2585a649f7ec40a8a8">SVF::AbstractValue::meet_with</a></div><div class="ttdeci">void meet_with(const AbstractValue &other)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractValue_8h_source.html#l00504">AbstractValue.h:504</a></div></div>
|
|
1830
1830
|
<div class="ttc" id="aclassSVF_1_1FIFOWorkList_html_a8fa72918fce7e9c0b2dc34b683a797c6"><div class="ttname"><a href="classSVF_1_1FIFOWorkList.html#a8fa72918fce7e9c0b2dc34b683a797c6">SVF::FIFOWorkList::pop</a></div><div class="ttdeci">Data pop()</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00200">WorkList.h:200</a></div></div>
|
|
1831
1831
|
<div class="ttc" id="anamespacellvm_html"><div class="ttname"><a href="namespacellvm.html">llvm</a></div><div class="ttdef"><b>Definition:</b> <a href="GEPTypeBridgeIterator_8h_source.html#l00013">GEPTypeBridgeIterator.h:13</a></div></div>
|
|
1832
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_ab4d209d0739f2c45dbc2a7e61318e2e3"><div class="ttname"><a href="classSVF_1_1AbstractState.html#ab4d209d0739f2c45dbc2a7e61318e2e3">SVF::AbstractState::inVarToValTable</a></div><div class="ttdeci">virtual bool inVarToValTable(u32_t id) const</div><div class="ttdoc">whether the variable is in varToVal table</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
1832
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_ab4d209d0739f2c45dbc2a7e61318e2e3"><div class="ttname"><a href="classSVF_1_1AbstractState.html#ab4d209d0739f2c45dbc2a7e61318e2e3">SVF::AbstractState::inVarToValTable</a></div><div class="ttdeci">virtual bool inVarToValTable(u32_t id) const</div><div class="ttdoc">whether the variable is in varToVal table</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00214">AbstractState.h:214</a></div></div>
|
|
1833
1833
|
<div class="ttc" id="aextapi_8c_html_a49f40fd869fd0c90e4497fda08c89561"><div class="ttname"><a href="extapi_8c.html#a49f40fd869fd0c90e4497fda08c89561">isgraph</a></div><div class="ttdeci">int isgraph(int c)</div><div class="ttdef"><b>Definition:</b> <a href="extapi_8c_source.html#l00857">extapi.c:857</a></div></div>
|
|
1834
1834
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a14c758bcbbc7d8197c5fa1851720b663"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a14c758bcbbc7d8197c5fa1851720b663">SVF::AbstractInterpretation::isDirectCall</a></div><div class="ttdeci">virtual bool isDirectCall(const CallICFGNode *callNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00617">AbstractInterpretation.cpp:617</a></div></div>
|
|
1835
1835
|
<div class="ttc" id="aclassSVF_1_1AddrStmt_html"><div class="ttname"><a href="classSVF_1_1AddrStmt.html">SVF::AddrStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00313">SVFStatements.h:313</a></div></div>
|
|
@@ -1853,7 +1853,6 @@ $(function() {
|
|
|
1853
1853
|
<div class="ttc" id="aclassSVF_1_1SelectStmt_html"><div class="ttname"><a href="classSVF_1_1SelectStmt.html">SVF::SelectStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00881">SVFStatements.h:881</a></div></div>
|
|
1854
1854
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2b0a2f7a662909d999634d0ec08cb29c"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2b0a2f7a662909d999634d0ec08cb29c">SVF::AbstractInterpretation::SkipRecursiveFunc</a></div><div class="ttdeci">virtual void SkipRecursiveFunc(const SVFFunction *func)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00915">AbstractInterpretation.cpp:915</a></div></div>
|
|
1855
1855
|
<div class="ttc" id="aclassSVF_1_1IntervalValue_html_a144e17cec654e83654298b379ed4ce9f"><div class="ttname"><a href="classSVF_1_1IntervalValue.html#a144e17cec654e83654298b379ed4ce9f">SVF::IntervalValue::meet_with</a></div><div class="ttdeci">void meet_with(const IntervalValue &other)</div><div class="ttdoc">Return a intersected IntervalValue.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00446">IntervalValue.h:446</a></div></div>
|
|
1856
|
-
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ac7e8c4d8d249d482e7c65af616f10ffb"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ac7e8c4d8d249d482e7c65af616f10ffb">SVF::AbstractInterpretation::propogateAbsStateToCurNode</a></div><div class="ttdeci">bool propogateAbsStateToCurNode(const ICFGNode *block)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00180">AbstractInterpretation.cpp:180</a></div></div>
|
|
1857
1856
|
<div class="ttc" id="aclassSVF_1_1RetPE_html"><div class="ttname"><a href="classSVF_1_1RetPE.html">SVF::RetPE</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00670">SVFStatements.h:670</a></div></div>
|
|
1858
1857
|
<div class="ttc" id="aclassSVF_1_1CmpStmt_html"><div class="ttname"><a href="classSVF_1_1CmpStmt.html">SVF::CmpStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00936">SVFStatements.h:936</a></div></div>
|
|
1859
1858
|
<div class="ttc" id="aextapi_8c_html_abe92a0aebef4717d08c64655ac44c9af"><div class="ttname"><a href="extapi_8c.html#abe92a0aebef4717d08c64655ac44c9af">isalnum</a></div><div class="ttdeci">int isalnum(int character)</div><div class="ttdef"><b>Definition:</b> <a href="extapi_8c_source.html#l00832">extapi.c:832</a></div></div>
|
|
@@ -1867,17 +1866,17 @@ $(function() {
|
|
|
1867
1866
|
<div class="ttc" id="anamespaceSVF_html_a366625858f450a1ea5f985a3c83e0f14"><div class="ttname"><a href="namespaceSVF.html#a366625858f450a1ea5f985a3c83e0f14">SVF::u64_t</a></div><div class="ttdeci">unsigned long long u64_t</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00048">GeneralType.h:48</a></div></div>
|
|
1868
1867
|
<div class="ttc" id="aclassSVF_1_1ICFGNode_html"><div class="ttname"><a href="classSVF_1_1ICFGNode.html">SVF::ICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00054">ICFGNode.h:54</a></div></div>
|
|
1869
1868
|
<div class="ttc" id="aclassSVF_1_1AEStat_html_a798d07cc0a36ce0d9010ab86d1ec216f"><div class="ttname"><a href="classSVF_1_1AEStat.html#a798d07cc0a36ce0d9010ab86d1ec216f">SVF::AEStat::performStat</a></div><div class="ttdeci">void performStat() override</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01006">AbstractInterpretation.cpp:1006</a></div></div>
|
|
1870
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aff46e9d0fb20cedd54323c808d06f7cf"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aff46e9d0fb20cedd54323c808d06f7cf">SVF::AbstractState::inLocToAddrsTable</a></div><div class="ttdeci">bool inLocToAddrsTable(u32_t id) const</div><div class="ttdoc">whether the memory address stores memory addresses</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
1869
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aff46e9d0fb20cedd54323c808d06f7cf"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aff46e9d0fb20cedd54323c808d06f7cf">SVF::AbstractState::inLocToAddrsTable</a></div><div class="ttdeci">bool inLocToAddrsTable(u32_t id) const</div><div class="ttdoc">whether the memory address stores memory addresses</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00227">AbstractState.h:227</a></div></div>
|
|
1871
1870
|
<div class="ttc" id="aclassSVF_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>
|
|
1872
1871
|
<div class="ttc" id="aclassSVF_1_1IntervalValue_html_a43f48c744f7bda0dc689b8f186449371"><div class="ttname"><a href="classSVF_1_1IntervalValue.html#a43f48c744f7bda0dc689b8f186449371">SVF::IntervalValue::minus_infinity</a></div><div class="ttdeci">static NumericLiteral minus_infinity()</div><div class="ttdoc">Get minus infinity -oo.</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00066">IntervalValue.h:66</a></div></div>
|
|
1873
1872
|
<div class="ttc" id="aclassSVF_1_1SVFType_html_a330084f9a3deb6e5acb52a8ee3eb7fe4"><div class="ttname"><a href="classSVF_1_1SVFType.html#a330084f9a3deb6e5acb52a8ee3eb7fe4">SVF::SVFType::isArrayTy</a></div><div class="ttdeci">bool isArrayTy() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00254">SVFType.h:254</a></div></div>
|
|
1874
1873
|
<div class="ttc" id="aclassSVF_1_1SVFStmt_html_a8cd7b6c6fd8b030b1421d95a086359f4"><div class="ttname"><a href="classSVF_1_1SVFStmt.html#a8cd7b6c6fd8b030b1421d95a086359f4">SVF::SVFStmt::SVFStmtSetTy</a></div><div class="ttdeci">GenericNode< SVFVar, SVFStmt >::GEdgeSetTy SVFStmtSetTy</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00217">SVFStatements.h:217</a></div></div>
|
|
1875
1874
|
<div class="ttc" id="aclassSVF_1_1IntervalValue_html_a5d73cc2aa0a6ed49e8301fa7b0cd5045"><div class="ttname"><a href="classSVF_1_1IntervalValue.html#a5d73cc2aa0a6ed49e8301fa7b0cd5045">SVF::IntervalValue::toString</a></div><div class="ttdeci">const std::string toString() const</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00479">IntervalValue.h:479</a></div></div>
|
|
1876
1875
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a80d663262a8d909ef5756391cdd82246"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a80d663262a8d909ef5756391cdd82246">SVF::AbstractInterpretation::handleWTONode</a></div><div class="ttdeci">virtual void handleWTONode(const ICFGNode *node)</div><div class="ttdoc">handle instructions in svf basic blocks</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00520">AbstractInterpretation.cpp:520</a></div></div>
|
|
1877
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aa34516a95191c5ec56ce44a117e8b018"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aa34516a95191c5ec56ce44a117e8b018">SVF::AbstractState::inVarToAddrsTable</a></div><div class="ttdeci">bool inVarToAddrsTable(u32_t id) const</div><div class="ttdoc">whether the variable is in varToAddrs table</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
1876
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aa34516a95191c5ec56ce44a117e8b018"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aa34516a95191c5ec56ce44a117e8b018">SVF::AbstractState::inVarToAddrsTable</a></div><div class="ttdeci">bool inVarToAddrsTable(u32_t id) const</div><div class="ttdoc">whether the variable is in varToAddrs table</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00201">AbstractState.h:201</a></div></div>
|
|
1878
1877
|
<div class="ttc" id="aclassSVF_1_1SVFVar_html_a3b61042079a6c9dc395f38925c6a1271"><div class="ttname"><a href="classSVF_1_1SVFVar.html#a3b61042079a6c9dc395f38925c6a1271">SVF::SVFVar::isPointer</a></div><div class="ttdeci">virtual bool isPointer() const</div><div class="ttdoc">Whether it is a pointer.</div><div class="ttdef"><b>Definition:</b> <a href="SVFVariables_8h_source.html#l00117">SVFVariables.h:117</a></div></div>
|
|
1879
1878
|
<div class="ttc" id="astructSVF_1_1AbstractValue_html_aecd8d41379dd6496772537ad51d1cb02"><div class="ttname"><a href="structSVF_1_1AbstractValue.html#aecd8d41379dd6496772537ad51d1cb02">SVF::AbstractValue::ub</a></div><div class="ttdeci">const NumericLiteral & ub() const</div><div class="ttdef"><b>Definition:</b> <a href="AbstractValue_8h_source.html#l00204">AbstractValue.h:204</a></div></div>
|
|
1880
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a234d0b11624febec605bc028f093240b"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a234d0b11624febec605bc028f093240b">SVF::AbstractState::getAddrs</a></div><div class="ttdeci">AbstractValue & getAddrs(u32_t id)</div><div class="ttdoc">get memory addresses of variable</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
1879
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a234d0b11624febec605bc028f093240b"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a234d0b11624febec605bc028f093240b">SVF::AbstractState::getAddrs</a></div><div class="ttdeci">AbstractValue & getAddrs(u32_t id)</div><div class="ttdoc">get memory addresses of variable</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00187">AbstractState.h:187</a></div></div>
|
|
1881
1880
|
<div class="ttc" id="aclassSVF_1_1CallPE_html"><div class="ttname"><a href="classSVF_1_1CallPE.html">SVF::CallPE</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00610">SVFStatements.h:610</a></div></div>
|
|
1882
1881
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a568e2247536de76694dabfc5a5052b57"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a568e2247536de76694dabfc5a5052b57">SVF::AbstractInterpretation::handleMemset</a></div><div class="ttdeci">virtual void handleMemset(const SVFValue *dst, AbstractValue elem, AbstractValue len)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01622">AbstractInterpretation.cpp:1622</a></div></div>
|
|
1883
1882
|
<div class="ttc" id="acJSON_8h_html_a750b5d744c39a06bfb13e6eb010e35d0"><div class="ttname"><a href="cJSON_8h.html#a750b5d744c39a06bfb13e6eb010e35d0">index</a></div><div class="ttdeci">int index</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00170">cJSON.h:170</a></div></div>
|
|
@@ -1906,7 +1905,7 @@ $(function() {
|
|
|
1906
1905
|
<div class="ttc" id="aclassSVF_1_1Options_html_ad989eab7d521e9933ac8e46e1c29f662"><div class="ttname"><a href="classSVF_1_1Options.html#ad989eab7d521e9933ac8e46e1c29f662">SVF::Options::OutputName</a></div><div class="ttdeci">static const Option< std::string > OutputName</div><div class="ttdoc">bug info output file, Default: output.db</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00269">Options.h:269</a></div></div>
|
|
1907
1906
|
<div class="ttc" id="aextapi_8c_html_adadd6582d46775aab6a51e29d16d9f77"><div class="ttname"><a href="extapi_8c.html#adadd6582d46775aab6a51e29d16d9f77">isupper</a></div><div class="ttdeci">int isupper(int c)</div><div class="ttdef"><b>Definition:</b> <a href="extapi_8c_source.html#l00882">extapi.c:882</a></div></div>
|
|
1908
1907
|
<div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
1909
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a1f935ea8ab16b04699284bf92bbbb23c"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a1f935ea8ab16b04699284bf92bbbb23c">SVF::AbstractState::store</a></div><div class="ttdeci">void store(u32_t addr, const AbstractValue &val)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
1908
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a1f935ea8ab16b04699284bf92bbbb23c"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a1f935ea8ab16b04699284bf92bbbb23c">SVF::AbstractState::store</a></div><div class="ttdeci">void store(u32_t addr, const AbstractValue &val)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00321">AbstractState.h:321</a></div></div>
|
|
1910
1909
|
<div class="ttc" id="aclassSVF_1_1SVFArrayType_html"><div class="ttname"><a href="classSVF_1_1SVFArrayType.html">SVF::SVFArrayType</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00377">SVFType.h:377</a></div></div>
|
|
1911
1910
|
<div class="ttc" id="aclassSVF_1_1Options_html_ab25f7ec430ba1d41597fc409b758b193"><div class="ttname"><a href="classSVF_1_1Options.html#ab25f7ec430ba1d41597fc409b758b193">SVF::Options::WidenDelay</a></div><div class="ttdeci">static const Option< u32_t > WidenDelay</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00265">Options.h:265</a></div></div>
|
|
1912
1911
|
<div class="ttc" id="aclassSVF_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#l00114">SVFIR.h:114</a></div></div>
|
|
@@ -1940,7 +1939,7 @@ $(function() {
|
|
|
1940
1939
|
<div class="ttc" id="aclassSVF_1_1IntervalValue_html"><div class="ttname"><a href="classSVF_1_1IntervalValue.html">SVF::IntervalValue</a></div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00043">IntervalValue.h:43</a></div></div>
|
|
1941
1940
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a6cac9b69d85111a5a26373ec848a3282"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a6cac9b69d85111a5a26373ec848a3282">SVF::AbstractInterpretation::handleExtAPI</a></div><div class="ttdeci">virtual void handleExtAPI(const CallICFGNode *call)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01170">AbstractInterpretation.cpp:1170</a></div></div>
|
|
1942
1941
|
<div class="ttc" id="astructSVF_1_1AbstractValue_html_ac9149740b6c33f33e70cc2aa4f89040e"><div class="ttname"><a href="structSVF_1_1AbstractValue.html#ac9149740b6c33f33e70cc2aa4f89040e">SVF::AbstractValue::getIntNumeral</a></div><div class="ttdeci">s64_t getIntNumeral() const</div><div class="ttdef"><b>Definition:</b> <a href="AbstractValue_8h_source.html#l00252">AbstractValue.h:252</a></div></div>
|
|
1943
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aa057c4c27e613d239161c04daf3a46d0"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aa057c4c27e613d239161c04daf3a46d0">SVF::AbstractState::load</a></div><div class="ttdeci">virtual AbstractValue & load(u32_t addr)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
1942
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aa057c4c27e613d239161c04daf3a46d0"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aa057c4c27e613d239161c04daf3a46d0">SVF::AbstractState::load</a></div><div class="ttdeci">virtual AbstractValue & load(u32_t addr)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00329">AbstractState.h:329</a></div></div>
|
|
1944
1943
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_adf02c5bf1b86f00163b114a78e03120c"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#adf02c5bf1b86f00163b114a78e03120c">SVF::AbstractInterpretation::handleMemcpy</a></div><div class="ttdeci">virtual void handleMemcpy(const SVFValue *dst, const SVFValue *src, AbstractValue len, u32_t start_idx)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01545">AbstractInterpretation.cpp:1545</a></div></div>
|
|
1945
1944
|
<div class="ttc" id="aclassSVF_1_1AssignStmt_html_ad03d28d16754c9049dd4d0ad3b6c1e28"><div class="ttname"><a href="classSVF_1_1AssignStmt.html#ad03d28d16754c9049dd4d0ad3b6c1e28">SVF::AssignStmt::getRHSVar</a></div><div class="ttdeci">SVFVar * getRHSVar() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00290">SVFStatements.h:290</a></div></div>
|
|
1946
1945
|
<div class="ttc" id="aclassSVF_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>
|
|
@@ -1960,6 +1959,7 @@ $(function() {
|
|
|
1960
1959
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ab18fe64117c1692d94ce0e0ee44e940b"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ab18fe64117c1692d94ce0e0ee44e940b">SVF::AbstractInterpretation::initExtFunMap</a></div><div class="ttdeci">virtual void initExtFunMap()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01067">AbstractInterpretation.cpp:1067</a></div></div>
|
|
1961
1960
|
<div class="ttc" id="aclassSVF_1_1WTOCycle_html"><div class="ttname"><a href="classSVF_1_1WTOCycle.html">SVF::WTOCycle</a></div><div class="ttdef"><b>Definition:</b> <a href="WTO_8h_source.html#l00048">WTO.h:48</a></div></div>
|
|
1962
1961
|
<div class="ttc" id="aclassSVF_1_1IntervalValue_html_a4f9d13c0f642fcad6ddb86ea79fac6e3"><div class="ttname"><a href="classSVF_1_1IntervalValue.html#a4f9d13c0f642fcad6ddb86ea79fac6e3">SVF::IntervalValue::getIntNumeral</a></div><div class="ttdeci">s64_t getIntNumeral() const</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00273">IntervalValue.h:273</a></div></div>
|
|
1962
|
+
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a3a12a86670eef9cd22b1853c7c6fa208"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a3a12a86670eef9cd22b1853c7c6fa208">SVF::AbstractInterpretation::propagateStateIfFeasible</a></div><div class="ttdeci">bool propagateStateIfFeasible(const ICFGNode *curNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00180">AbstractInterpretation.cpp:180</a></div></div>
|
|
1963
1963
|
<div class="ttc" id="aextapi_8c_html_aaecd098576b00440124c44580144e8d5"><div class="ttname"><a href="extapi_8c.html#aaecd098576b00440124c44580144e8d5">isblank</a></div><div class="ttdeci">int isblank(int character)</div><div class="ttdef"><b>Definition:</b> <a href="extapi_8c_source.html#l00842">extapi.c:842</a></div></div>
|
|
1964
1964
|
<div class="ttc" id="aclassSVF_1_1SCCDetection_html"><div class="ttname"><a href="classSVF_1_1SCCDetection.html">SVF::SCCDetection</a></div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00054">SCC.h:54</a></div></div>
|
|
1965
1965
|
<div class="ttc" id="aclassSVF_1_1GenericNode_html_afc8b5f86d7795b6a0dfc0687d942d79b"><div class="ttname"><a href="classSVF_1_1GenericNode.html#afc8b5f86d7795b6a0dfc0687d942d79b">SVF::GenericNode::getInEdges</a></div><div class="ttdeci">const GEdgeSetTy & getInEdges() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00197">GenericGraph.h:197</a></div></div>
|
|
@@ -1994,7 +1994,7 @@ $(function() {
|
|
|
1994
1994
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a8a4b07e6c999bea0b0e69dcab0346933"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a8a4b07e6c999bea0b0e69dcab0346933">SVF::AbstractInterpretation::narrowFixpointPass</a></div><div class="ttdeci">bool narrowFixpointPass(const ICFGNode *cycle_head, AbstractState &pre_es)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00782">AbstractInterpretation.cpp:782</a></div></div>
|
|
1995
1995
|
<div class="ttc" id="aclassSVF_1_1AssignStmt_html_a98f731be7be9bc8e7fd09f5c2204c840"><div class="ttname"><a href="classSVF_1_1AssignStmt.html#a98f731be7be9bc8e7fd09f5c2204c840">SVF::AssignStmt::getLHSVarID</a></div><div class="ttdeci">NodeID getLHSVarID() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00302">SVFStatements.h:302</a></div></div>
|
|
1996
1996
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2e2253149e2bf114825a4e838118e012"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2e2253149e2bf114825a4e838118e012">SVF::AbstractInterpretation::handleFunc</a></div><div class="ttdeci">virtual void handleFunc(const SVFFunction *func)</div><div class="ttdoc">handle user defined function, ext function is not included.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00806">AbstractInterpretation.cpp:806</a></div></div>
|
|
1997
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aaabe5850dbf1620c6058f5ac6cb169b6"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aaabe5850dbf1620c6058f5ac6cb169b6">SVF::AbstractState::getInternalID</a></div><div class="ttdeci">static u32_t getInternalID(u32_t idx)</div><div class="ttdoc">Return the internal index if idx is an address otherwise return the value of idx.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
1997
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aaabe5850dbf1620c6058f5ac6cb169b6"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aaabe5850dbf1620c6058f5ac6cb169b6">SVF::AbstractState::getInternalID</a></div><div class="ttdeci">static u32_t getInternalID(u32_t idx)</div><div class="ttdoc">Return the internal index if idx is an address otherwise return the value of idx.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00093">AbstractState.h:93</a></div></div>
|
|
1998
1998
|
<div class="ttc" id="aclassSVF_1_1FILOWorkList_html_a3fd9acb6d09fd142bfd402fdf8cac93b"><div class="ttname"><a href="classSVF_1_1FILOWorkList.html#a3fd9acb6d09fd142bfd402fdf8cac93b">SVF::FILOWorkList::pop</a></div><div class="ttdeci">Data pop()</div><div class="ttdef"><b>Definition:</b> <a href="WorkList_8h_source.html#l00272">WorkList.h:272</a></div></div>
|
|
1999
1999
|
<div class="ttc" id="aclassSVF_1_1FILOWorkList_html"><div class="ttname"><a href="classSVF_1_1FILOWorkList.html">SVF::FILOWorkList</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00042">AbstractInterpretation.h:42</a></div></div>
|
|
2000
2000
|
<div class="ttc" id="aclassSVF_1_1Options_html_aaab923c093730b1670a54f09340b1bd5"><div class="ttname"><a href="classSVF_1_1Options.html#aaab923c093730b1670a54f09340b1bd5">SVF::Options::MaxFieldLimit</a></div><div class="ttdeci">static const Option< u32_t > MaxFieldLimit</div><div class="ttdoc">Maximum number of field derivations for an object.</div><div class="ttdef"><b>Definition:</b> <a href="Options_8h_source.html#l00038">Options.h:38</a></div></div>
|
|
@@ -2019,11 +2019,11 @@ $(function() {
|
|
|
2019
2019
|
<div class="ttc" id="anamespaceSVF_html_a8234d4b959abc9123993bcff4eee34c1"><div class="ttname"><a href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">SVF::Map</a></div><div class="ttdeci">std::unordered_map< Key, Value, Hash, KeyEqual, Allocator > Map</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00101">GeneralType.h:101</a></div></div>
|
|
2020
2020
|
<div class="ttc" id="astructSVF_1_1AbstractValue_html"><div class="ttname"><a href="structSVF_1_1AbstractValue.html">SVF::AbstractValue</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractValue_8h_source.html#l00029">AbstractValue.h:29</a></div></div>
|
|
2021
2021
|
<div class="ttc" id="aclassSVF_1_1CallICFGNode_html_ae23a7540609879ac0379fc53b4e7eead"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#ae23a7540609879ac0379fc53b4e7eead">SVF::CallICFGNode::getRetICFGNode</a></div><div class="ttdeci">const RetICFGNode * getRetICFGNode() const</div><div class="ttdoc">Return callsite.</div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00415">ICFGNode.h:415</a></div></div>
|
|
2022
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a7c802c006225a50b1d83b5f78d0891fa"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a7c802c006225a50b1d83b5f78d0891fa">SVF::AbstractState::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
2022
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a7c802c006225a50b1d83b5f78d0891fa"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a7c802c006225a50b1d83b5f78d0891fa">SVF::AbstractState::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00347">AbstractState.h:347</a></div></div>
|
|
2023
2023
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ac941d1eb9b1216c8334d0685a471b774"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ac941d1eb9b1216c8334d0685a471b774">SVF::AbstractInterpretation::handleStrcpy</a></div><div class="ttdeci">virtual void handleStrcpy(const CallICFGNode *call)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01274">AbstractInterpretation.cpp:1274</a></div></div>
|
|
2024
2024
|
<div class="ttc" id="aclassSVF_1_1CallSite_html_a9e7c94ee7f689466111487e03b2cebcc"><div class="ttname"><a href="classSVF_1_1CallSite.html#a9e7c94ee7f689466111487e03b2cebcc">SVF::CallSite::getArgument</a></div><div class="ttdeci">const SVFValue * getArgument(u32_t ArgNo) const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l01132">SVFValue.h:1132</a></div></div>
|
|
2025
2025
|
<div class="ttc" id="aclassSVF_1_1AEStat_html_ae24590233a864e18a6b0948bef89201a"><div class="ttname"><a href="classSVF_1_1AEStat.html#ae24590233a864e18a6b0948bef89201a">SVF::AEStat::reportBug</a></div><div class="ttdeci">void reportBug()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01043">AbstractInterpretation.cpp:1043</a></div></div>
|
|
2026
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aa2ac2ba25a9859232717ee22192feb35"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aa2ac2ba25a9859232717ee22192feb35">SVF::AbstractState::inLocToValTable</a></div><div class="ttdeci">virtual bool inLocToValTable(u32_t id) const</div><div class="ttdoc">whether the memory address stores abstract value</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
2026
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aa2ac2ba25a9859232717ee22192feb35"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aa2ac2ba25a9859232717ee22192feb35">SVF::AbstractState::inLocToValTable</a></div><div class="ttdeci">virtual bool inLocToValTable(u32_t id) const</div><div class="ttdoc">whether the memory address stores abstract value</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00240">AbstractState.h:240</a></div></div>
|
|
2027
2027
|
<div class="ttc" id="aclassSVF_1_1GenericNode_html_a2d9cd758d6f8c5189d9b90b74f43e009"><div class="ttname"><a href="classSVF_1_1GenericNode.html#a2d9cd758d6f8c5189d9b90b74f43e009">SVF::GenericNode::getOutEdges</a></div><div class="ttdeci">const GEdgeSetTy & getOutEdges() const</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00193">GenericGraph.h:193</a></div></div>
|
|
2028
2028
|
<div class="ttc" id="acJSON_8h_html_ad43c3812e6d13e0518d9f8b8f463ffcf"><div class="ttname"><a href="cJSON_8h.html#ad43c3812e6d13e0518d9f8b8f463ffcf">count</a></div><div class="ttdeci">int count</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00216">cJSON.h:216</a></div></div>
|
|
2029
2029
|
<div class="ttc" id="anamespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00046">GeneralType.h:46</a></div></div>
|
|
@@ -204,7 +204,7 @@ $(function() {
|
|
|
204
204
|
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  </div>
|
|
205
205
|
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <span class="keywordtype">void</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a738d1768c632f86d04599ec1aa53952a">markRecursiveFuns</a>();</div>
|
|
206
206
|
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  </div>
|
|
207
|
-
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#
|
|
207
|
+
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a3a12a86670eef9cd22b1853c7c6fa208">propagateStateIfFeasible</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1ICFGNode.html">ICFGNode</a>* curNode);</div>
|
|
208
208
|
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  </div>
|
|
209
209
|
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keywordtype">bool</span> <a class="code" href="classSVF_1_1AbstractInterpretation.html#a12cba4105a721ff73a7b13b70ee9c5b2">hasBranchES</a>(<span class="keyword">const</span> <a class="code" href="classSVF_1_1IntraCFGEdge.html">IntraCFGEdge</a>* intraEdge, <a class="code" href="classSVF_1_1AbstractState.html">AbstractState</a>& es);</div>
|
|
210
210
|
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  </div>
|
|
@@ -324,7 +324,6 @@ $(function() {
|
|
|
324
324
|
<div class="ttc" id="aclassSVF_1_1AEStat_html_a03a5abacf309902ce2bb9a9733ff195f"><div class="ttname"><a href="classSVF_1_1AEStat.html#a03a5abacf309902ce2bb9a9733ff195f">SVF::AEStat::count</a></div><div class="ttdeci">s32_t count</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00074">AbstractInterpretation.h:74</a></div></div>
|
|
325
325
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a2b0a2f7a662909d999634d0ec08cb29c"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a2b0a2f7a662909d999634d0ec08cb29c">SVF::AbstractInterpretation::SkipRecursiveFunc</a></div><div class="ttdeci">virtual void SkipRecursiveFunc(const SVFFunction *func)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00915">AbstractInterpretation.cpp:915</a></div></div>
|
|
326
326
|
<div class="ttc" id="aclassSVF_1_1SVFBugReport_html"><div class="ttname"><a href="classSVF_1_1SVFBugReport.html">SVF::SVFBugReport</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFBugReport_8h_source.html#l00288">SVFBugReport.h:288</a></div></div>
|
|
327
|
-
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ac7e8c4d8d249d482e7c65af616f10ffb"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ac7e8c4d8d249d482e7c65af616f10ffb">SVF::AbstractInterpretation::propogateAbsStateToCurNode</a></div><div class="ttdeci">bool propogateAbsStateToCurNode(const ICFGNode *block)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00180">AbstractInterpretation.cpp:180</a></div></div>
|
|
328
327
|
<div class="ttc" id="aclassSVF_1_1CmpStmt_html"><div class="ttname"><a href="classSVF_1_1CmpStmt.html">SVF::CmpStmt</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFStatements_8h_source.html#l00936">SVFStatements.h:936</a></div></div>
|
|
329
328
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a5d3b15c3cdb9c8e91b942924bf8aee21"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a5d3b15c3cdb9c8e91b942924bf8aee21">SVF::AbstractInterpretation::_kind</a></div><div class="ttdeci">AEKind _kind</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00350">AbstractInterpretation.h:350</a></div></div>
|
|
330
329
|
<div class="ttc" id="aclassSVF_1_1AEStat_html_a2387fafd4d8f7775cb4ebf7b41b07bf8"><div class="ttname"><a href="classSVF_1_1AEStat.html#a2387fafd4d8f7775cb4ebf7b41b07bf8">SVF::AEStat::bugStr</a></div><div class="ttdeci">std::string bugStr</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00077">AbstractInterpretation.h:77</a></div></div>
|
|
@@ -389,6 +388,7 @@ $(function() {
|
|
|
389
388
|
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_ab18fe64117c1692d94ce0e0ee44e940b"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#ab18fe64117c1692d94ce0e0ee44e940b">SVF::AbstractInterpretation::initExtFunMap</a></div><div class="ttdeci">virtual void initExtFunMap()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l01067">AbstractInterpretation.cpp:1067</a></div></div>
|
|
390
389
|
<div class="ttc" id="aclassSVF_1_1WTOCycle_html"><div class="ttname"><a href="classSVF_1_1WTOCycle.html">SVF::WTOCycle</a></div><div class="ttdef"><b>Definition:</b> <a href="WTO_8h_source.html#l00048">WTO.h:48</a></div></div>
|
|
391
390
|
<div class="ttc" id="aclassSVF_1_1AEStat_html_afaa47798ebfde513c709b46cac05294c"><div class="ttname"><a href="classSVF_1_1AEStat.html#afaa47798ebfde513c709b46cac05294c">SVF::AEStat::getICFGNodeTrace</a></div><div class="ttdeci">u32_t & getICFGNodeTrace()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8h_source.html#l00096">AbstractInterpretation.h:96</a></div></div>
|
|
391
|
+
<div class="ttc" id="aclassSVF_1_1AbstractInterpretation_html_a3a12a86670eef9cd22b1853c7c6fa208"><div class="ttname"><a href="classSVF_1_1AbstractInterpretation.html#a3a12a86670eef9cd22b1853c7c6fa208">SVF::AbstractInterpretation::propagateStateIfFeasible</a></div><div class="ttdeci">bool propagateStateIfFeasible(const ICFGNode *curNode)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractInterpretation_8cpp_source.html#l00180">AbstractInterpretation.cpp:180</a></div></div>
|
|
392
392
|
<div class="ttc" id="aclassSVF_1_1PTACallGraph_html"><div class="ttname"><a href="classSVF_1_1PTACallGraph.html">SVF::PTACallGraph</a></div><div class="ttdef"><b>Definition:</b> <a href="PTACallGraph_8h_source.html#l00218">PTACallGraph.h:218</a></div></div>
|
|
393
393
|
<div class="ttc" id="aclassSVF_1_1SCCDetection_html"><div class="ttname"><a href="classSVF_1_1SCCDetection.html">SVF::SCCDetection</a></div><div class="ttdef"><b>Definition:</b> <a href="SCC_8h_source.html#l00054">SCC.h:54</a></div></div>
|
|
394
394
|
<div class="ttc" id="aSVFIR2AbsState_8h_html"><div class="ttname"><a href="SVFIR2AbsState_8h.html">SVFIR2AbsState.h</a></div></div>
|
|
@@ -137,12 +137,12 @@ $(function() {
|
|
|
137
137
|
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="keywordflow">if</span> (it->second.isInterval() && other.<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.at(key).isInterval())</div>
|
|
138
138
|
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  it->second.getInterval().widen_with(other.<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.at(key).getInterval());</div>
|
|
139
139
|
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  }</div>
|
|
140
|
-
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
140
|
+
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end(); ++it)</div>
|
|
141
141
|
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  {</div>
|
|
142
142
|
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
143
|
-
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
144
|
-
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keywordflow">if</span> (it->second.isInterval() && other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
145
|
-
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  it->second.getInterval().widen_with(other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
143
|
+
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.find(key) != other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end())</div>
|
|
144
|
+
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keywordflow">if</span> (it->second.isInterval() && other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.at(key).isInterval())</div>
|
|
145
|
+
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  it->second.getInterval().widen_with(other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.at(key).getInterval());</div>
|
|
146
146
|
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  }</div>
|
|
147
147
|
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keywordflow">return</span> es;</div>
|
|
148
148
|
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> }</div>
|
|
@@ -157,12 +157,12 @@ $(function() {
|
|
|
157
157
|
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  <span class="keywordflow">if</span> (it->second.isInterval() && other.<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.at(key).isInterval())</div>
|
|
158
158
|
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  it->second.getInterval().narrow_with(other.<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.at(key).getInterval());</div>
|
|
159
159
|
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  }</div>
|
|
160
|
-
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
160
|
+
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = es.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.begin(); it != es.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end(); ++it)</div>
|
|
161
161
|
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  {</div>
|
|
162
162
|
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
163
|
-
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
164
|
-
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordflow">if</span> (it->second.isInterval() && other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
165
|
-
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  it->second.getInterval().narrow_with(other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
163
|
+
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.find(key) != other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end())</div>
|
|
164
|
+
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordflow">if</span> (it->second.isInterval() && other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.at(key).isInterval())</div>
|
|
165
|
+
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  it->second.getInterval().narrow_with(other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.at(key).getInterval());</div>
|
|
166
166
|
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  }</div>
|
|
167
167
|
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="keywordflow">return</span> es;</div>
|
|
168
168
|
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  </div>
|
|
@@ -177,12 +177,12 @@ $(function() {
|
|
|
177
177
|
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <span class="keywordflow">if</span> (it->second.isInterval() && other.<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.at(key).isInterval())</div>
|
|
178
178
|
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  it->second.getInterval().widen_with(other.<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.at(key).getInterval());</div>
|
|
179
179
|
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  }</div>
|
|
180
|
-
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it =
|
|
180
|
+
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = _addrToAbsVal.begin(); it != _addrToAbsVal.end(); ++it)</div>
|
|
181
181
|
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  {</div>
|
|
182
182
|
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
183
|
-
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
183
|
+
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keywordflow">if</span> (other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.find(key) != other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end())</div>
|
|
184
184
|
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <span class="keywordflow">if</span> (it->second.isInterval() && other.<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.at(key).isInterval())</div>
|
|
185
|
-
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  it->second.getInterval().widen_with(other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
185
|
+
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  it->second.getInterval().widen_with(other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.at(key).getInterval());</div>
|
|
186
186
|
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  }</div>
|
|
187
187
|
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> }</div>
|
|
188
188
|
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  </div>
|
|
@@ -212,11 +212,11 @@ $(function() {
|
|
|
212
212
|
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  _varToAbsVal.emplace(key, it->second);</div>
|
|
213
213
|
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  }</div>
|
|
214
214
|
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  }</div>
|
|
215
|
-
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
215
|
+
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.begin(); it != other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end(); ++it)</div>
|
|
216
216
|
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  {</div>
|
|
217
217
|
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
218
|
-
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keyword">auto</span> oit =
|
|
219
|
-
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <span class="keywordflow">if</span> (oit !=
|
|
218
|
+
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keyword">auto</span> oit = _addrToAbsVal.find(key);</div>
|
|
219
|
+
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <span class="keywordflow">if</span> (oit != _addrToAbsVal.end())</div>
|
|
220
220
|
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  {</div>
|
|
221
221
|
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="keywordflow">if</span> (oit->second.isInterval() && it->second.isInterval())</div>
|
|
222
222
|
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  {</div>
|
|
@@ -233,7 +233,7 @@ $(function() {
|
|
|
233
233
|
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  }</div>
|
|
234
234
|
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <span class="keywordflow">else</span></div>
|
|
235
235
|
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  {</div>
|
|
236
|
-
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> 
|
|
236
|
+
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  _addrToAbsVal.emplace(key, it->second);</div>
|
|
237
237
|
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  }</div>
|
|
238
238
|
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  }</div>
|
|
239
239
|
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> }</div>
|
|
@@ -248,11 +248,11 @@ $(function() {
|
|
|
248
248
|
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <span class="keywordflow">if</span> (it->second.isInterval() && oit->second.isInterval())</div>
|
|
249
249
|
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  it->second.getInterval().narrow_with(oit->second.getInterval());</div>
|
|
250
250
|
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  }</div>
|
|
251
|
-
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it =
|
|
251
|
+
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = _addrToAbsVal.begin(); it != _addrToAbsVal.end(); ++it)</div>
|
|
252
252
|
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  {</div>
|
|
253
253
|
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
254
|
-
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keyword">auto</span> oit = other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
255
|
-
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <span class="keywordflow">if</span> (oit != other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
254
|
+
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keyword">auto</span> oit = other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.find(key);</div>
|
|
255
|
+
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <span class="keywordflow">if</span> (oit != other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end())</div>
|
|
256
256
|
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="keywordflow">if</span> (it->second.isInterval() && oit->second.isInterval())</div>
|
|
257
257
|
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  it->second.getInterval().narrow_with(oit->second.getInterval());</div>
|
|
258
258
|
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  }</div>
|
|
@@ -280,11 +280,11 @@ $(function() {
|
|
|
280
280
|
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  }</div>
|
|
281
281
|
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  }</div>
|
|
282
282
|
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  }</div>
|
|
283
|
-
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1AbstractState.html#
|
|
283
|
+
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.begin(); it != other.<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end(); ++it)</div>
|
|
284
284
|
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  {</div>
|
|
285
285
|
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
286
|
-
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  <span class="keyword">auto</span> oit =
|
|
287
|
-
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="keywordflow">if</span> (oit !=
|
|
286
|
+
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  <span class="keyword">auto</span> oit = _addrToAbsVal.find(key);</div>
|
|
287
|
+
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="keywordflow">if</span> (oit != _addrToAbsVal.end())</div>
|
|
288
288
|
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  {</div>
|
|
289
289
|
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <span class="keywordflow">if</span> (oit->second.isInterval() && it->second.isInterval())</div>
|
|
290
290
|
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  {</div>
|
|
@@ -306,7 +306,7 @@ $(function() {
|
|
|
306
306
|
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="keyword"></span>{</div>
|
|
307
307
|
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  oss << <span class="stringliteral">"-----------Var and Value-----------\n"</span>;</div>
|
|
308
308
|
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  printTable(_varToAbsVal, oss);</div>
|
|
309
|
-
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  printTable(
|
|
309
|
+
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  printTable(_addrToAbsVal, oss);</div>
|
|
310
310
|
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  oss << <span class="stringliteral">"-----------------------------------------\n"</span>;</div>
|
|
311
311
|
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> }</div>
|
|
312
312
|
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  </div>
|
|
@@ -340,7 +340,7 @@ $(function() {
|
|
|
340
340
|
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a65131e4b96d21984c6907ac4fb32e973"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a65131e4b96d21984c6907ac4fb32e973">SVF::AbstractState::equals</a></div><div class="ttdeci">bool equals(const AbstractState &other) const</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8cpp_source.html#l00036">AbstractState.cpp:36</a></div></div>
|
|
341
341
|
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a7e2ff1c509351658687ed87ca7ae544e"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a7e2ff1c509351658687ed87ca7ae544e">SVF::AbstractState::narrowWith</a></div><div class="ttdeci">void narrowWith(const AbstractState &other)</div><div class="ttdoc">domain narrow with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8cpp_source.html#l00173">AbstractState.cpp:173</a></div></div>
|
|
342
342
|
<div class="ttc" id="astructSVF_1_1Hash_html"><div class="ttname"><a href="structSVF_1_1Hash.html">SVF::Hash</a></div><div class="ttdoc">provide extra hash function for std::pair handling</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00066">GeneralType.h:66</a></div></div>
|
|
343
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a6a49c75fb6b35159dcf1763b4484d335"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">SVF::AbstractState::_varToAbsVal</a></div><div class="ttdeci">VarToAbsValMap _varToAbsVal</div><div class="ttdoc">Map a variable (symbol) to its abstract value.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
343
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a6a49c75fb6b35159dcf1763b4484d335"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">SVF::AbstractState::_varToAbsVal</a></div><div class="ttdeci">VarToAbsValMap _varToAbsVal</div><div class="ttdoc">Map a variable (symbol) to its abstract value.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00167">AbstractState.h:167</a></div></div>
|
|
344
344
|
<div class="ttc" id="aSVFUtil_8h_html"><div class="ttname"><a href="SVFUtil_8h.html">SVFUtil.h</a></div></div>
|
|
345
345
|
<div class="ttc" id="aclassSVF_1_1AddressValue_html_a25db03df057262182a42cc394f0c7e1d"><div class="ttname"><a href="classSVF_1_1AddressValue.html#a25db03df057262182a42cc394f0c7e1d">SVF::AddressValue::toString</a></div><div class="ttdeci">const std::string toString() const</div><div class="ttdef"><b>Definition:</b> <a href="AddressValue_8h_source.html#l00191">AddressValue.h:191</a></div></div>
|
|
346
346
|
<div class="ttc" id="aclassSVF_1_1AbstractState_html_ab8e7d112c380f0c3fe66b487af90c03e"><div class="ttname"><a href="classSVF_1_1AbstractState.html#ab8e7d112c380f0c3fe66b487af90c03e">SVF::AbstractState::VarToAbsValMap</a></div><div class="ttdeci">Map< u32_t, AbstractValue > VarToAbsValMap</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00059">AbstractState.h:59</a></div></div>
|
|
@@ -350,15 +350,15 @@ $(function() {
|
|
|
350
350
|
<div class="ttc" id="aclassSVF_1_1IntervalValue_html"><div class="ttname"><a href="classSVF_1_1IntervalValue.html">SVF::IntervalValue</a></div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00043">IntervalValue.h:43</a></div></div>
|
|
351
351
|
<div class="ttc" id="aclassSVF_1_1AbstractState_html"><div class="ttname"><a href="classSVF_1_1AbstractState.html">SVF::AbstractState</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00054">AbstractState.h:54</a></div></div>
|
|
352
352
|
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a00c811d7ef05476b7699c66a10eb4944"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a00c811d7ef05476b7699c66a10eb4944">SVF::AbstractState::printExprValues</a></div><div class="ttdeci">void printExprValues(std::ostream &oss) const</div><div class="ttdoc">Print values of all expressions.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8cpp_source.html#l00239">AbstractState.cpp:239</a></div></div>
|
|
353
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a4e4525823fd31c718216c698ed6e0a06"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a4e4525823fd31c718216c698ed6e0a06">SVF::AbstractState::getVarToVal</a></div><div class="ttdeci">const VarToAbsValMap & getVarToVal() const</div><div class="ttdoc">get var2val map</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
353
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a4e4525823fd31c718216c698ed6e0a06"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a4e4525823fd31c718216c698ed6e0a06">SVF::AbstractState::getVarToVal</a></div><div class="ttdeci">const VarToAbsValMap & getVarToVal() const</div><div class="ttdoc">get var2val map</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00253">AbstractState.h:253</a></div></div>
|
|
354
354
|
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a8d2a6e895d17181324cdeb9e2cf8f1de"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a8d2a6e895d17181324cdeb9e2cf8f1de">SVF::AbstractState::widenWith</a></div><div class="ttdeci">void widenWith(const AbstractState &other)</div><div class="ttdoc">domain widen with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8cpp_source.html#l00101">AbstractState.cpp:101</a></div></div>
|
|
355
355
|
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a413cb1d009e2a080960bb2432e193d0c"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a413cb1d009e2a080960bb2432e193d0c">SVF::AbstractState::joinWith</a></div><div class="ttdeci">void joinWith(const AbstractState &other)</div><div class="ttdoc">domain join with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8cpp_source.html#l00120">AbstractState.cpp:120</a></div></div>
|
|
356
356
|
<div class="ttc" id="acJSON_8h_html_ac76cea59d438ba893d2f82aabb367d14"><div class="ttname"><a href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a></div><div class="ttdeci">cJSON * item</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00222">cJSON.h:222</a></div></div>
|
|
357
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aade30bb08f86b3f74e7aa9cdc60c92a3"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aade30bb08f86b3f74e7aa9cdc60c92a3">SVF::AbstractState::_locToAbsVal</a></div><div class="ttdeci">LocToAbsValMap _locToAbsVal</div><div class="ttdoc">Map a memory address to its stored abstract value.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00170">AbstractState.h:170</a></div></div>
|
|
358
357
|
<div class="ttc" id="aclassSVF_1_1AbstractState_html_adec6191b9f1e51ed70a7620dd06153a9"><div class="ttname"><a href="classSVF_1_1AbstractState.html#adec6191b9f1e51ed70a7620dd06153a9">SVF::AbstractState::meetWith</a></div><div class="ttdeci">void meetWith(const AbstractState &other)</div><div class="ttdoc">domain meet with other, important! other widen this.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8cpp_source.html#l00194">AbstractState.cpp:194</a></div></div>
|
|
359
358
|
<div class="ttc" id="astructSVF_1_1AbstractValue_html"><div class="ttname"><a href="structSVF_1_1AbstractValue.html">SVF::AbstractValue</a></div><div class="ttdef"><b>Definition:</b> <a href="AbstractValue_8h_source.html#l00029">AbstractValue.h:29</a></div></div>
|
|
360
359
|
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a61a9a3873426ad522d0b4c16eb2ac67b"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a61a9a3873426ad522d0b4c16eb2ac67b">SVF::AbstractState::printTable</a></div><div class="ttdeci">void printTable(const VarToAbsValMap &table, std::ostream &oss) const</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8cpp_source.html#l00247">AbstractState.cpp:247</a></div></div>
|
|
361
360
|
<div class="ttc" id="anamespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00046">GeneralType.h:46</a></div></div>
|
|
361
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a816695606ef796ce97c42ac4053de47e"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">SVF::AbstractState::_addrToAbsVal</a></div><div class="ttdeci">AddrToAbsValMap _addrToAbsVal</div><div class="ttdoc">Map a memory address to its stored abstract value.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00169">AbstractState.h:169</a></div></div>
|
|
362
362
|
<!-- start footer part -->
|
|
363
363
|
<hr class="footer"/><address class="footer"><small>
|
|
364
364
|
Generated by  <a href="http://www.doxygen.org/index.html">
|