svf-tools 1.0.614 → 1.0.615
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/LLVMModule_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/SVFValue_8h_source.html +3 -3
- package/SVF-doxygen/html/html/TypeAnalysis_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CallSite-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CallSite.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1LLVMModuleSet.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1SVFLoopAndDomInfo-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1SVFLoopAndDomInfo.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1TypeAnalysis.html +2 -2
- package/SVF-doxygen/html/html/functions_func_i.html +1 -1
- package/SVF-doxygen/html/html/functions_func_s.html +1 -1
- package/SVF-doxygen/html/html/functions_i.html +1 -1
- package/SVF-doxygen/html/html/functions_s.html +1 -1
- package/SVF-doxygen/html/html/search/all_12.js +1 -1
- package/SVF-doxygen/html/html/search/all_9.js +1 -1
- package/SVF-doxygen/html/html/search/functions_11.js +1 -1
- package/SVF-doxygen/html/html/search/functions_8.js +1 -1
- package/include/SVFIR/SVFValue.h +2 -2
- package/package.json +1 -1
|
@@ -791,14 +791,14 @@ Additional Inherited Members</h2></td></tr>
|
|
|
791
791
|
<p>Resolve callgraph based on CHA. </p>
|
|
792
792
|
|
|
793
793
|
<p class="definition">Definition at line <a class="el" href="TypeAnalysis_8cpp_source.html#l00076">76</a> of file <a class="el" href="TypeAnalysis_8cpp_source.html">TypeAnalysis.cpp</a>.</p>
|
|
794
|
-
<div class="fragment"><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="keywordflow">for</span>(CallSiteToFunPtrMap::const_iterator iter = callsites.begin(), eiter = callsites.end(); iter!=eiter; ++iter)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cbn = iter->first;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <a class="code" href="classSVF_1_1CallSite.html">CallSite</a> cs = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a9815a5b31ac7dc21239d08e5b9f61106">SVFUtil::getSVFCallSite</a>(cbn-><a class="code" href="classSVF_1_1CallICFGNode.html#a90fd0b8e44fba1a7eb76d15bce085d66">getCallSite</a>());</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keywordflow">if</span> (cs.<a class="code" href="classSVF_1_1CallSite.html#
|
|
794
|
+
<div class="fragment"><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="keywordflow">for</span>(CallSiteToFunPtrMap::const_iterator iter = callsites.begin(), eiter = callsites.end(); iter!=eiter; ++iter)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1CallICFGNode.html">CallICFGNode</a>* cbn = iter->first;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <a class="code" href="classSVF_1_1CallSite.html">CallSite</a> cs = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a9815a5b31ac7dc21239d08e5b9f61106">SVFUtil::getSVFCallSite</a>(cbn-><a class="code" href="classSVF_1_1CallICFGNode.html#a90fd0b8e44fba1a7eb76d15bce085d66">getCallSite</a>());</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keywordflow">if</span> (cs.<a class="code" href="classSVF_1_1CallSite.html#a427a38e580db4bf04c9d716762243c89">isVirtualCall</a>())</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SVFValue.html">SVFValue</a>* vtbl = cs.<a class="code" href="classSVF_1_1CallSite.html#a9b04a0f24be915a6e124106060225a3d">getVtablePtr</a>();</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  (void)vtbl; <span class="comment">// Suppress warning of unused variable under release build</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  assert(<a class="code" href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">pag</a>-><a class="code" href="classSVF_1_1IRGraph.html#a401ec65771a3d2dcc8eb60574aadd354">hasValueNode</a>(vtbl));</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <a class="code" href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">VFunSet</a> vfns;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#ade41f3562704d56c7490dcfc941b3437">getVFnsFromCHA</a>(cbn, vfns);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <a class="code" href="classSVF_1_1PointerAnalysis.html#a6a5dec067fa2a1babc83f36daa8afcc3">connectVCallToVFns</a>(cbn, vfns, newEdges);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  }</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  }</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span> }</div><div class="ttc" id="namespaceSVF_1_1SVFUtil_html_a9815a5b31ac7dc21239d08e5b9f61106"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a9815a5b31ac7dc21239d08e5b9f61106">SVF::SVFUtil::getSVFCallSite</a></div><div class="ttdeci">CallSite getSVFCallSite(const SVFInstruction *inst)</div><div class="ttdoc">Return LLVM callsite given an instruction. </div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00194">SVFUtil.h:194</a></div></div>
|
|
795
795
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_ade41f3562704d56c7490dcfc941b3437"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#ade41f3562704d56c7490dcfc941b3437">SVF::PointerAnalysis::getVFnsFromCHA</a></div><div class="ttdeci">void getVFnsFromCHA(const CallICFGNode *cs, VFunSet &vfns)</div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8cpp_source.html#l00445">PointerAnalysis.cpp:445</a></div></div>
|
|
796
796
|
<div class="ttc" id="classSVF_1_1IRGraph_html_a401ec65771a3d2dcc8eb60574aadd354"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a401ec65771a3d2dcc8eb60574aadd354">SVF::IRGraph::hasValueNode</a></div><div class="ttdeci">bool hasValueNode(const SVFValue *V)</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00132">IRGraph.h:132</a></div></div>
|
|
797
797
|
<div class="ttc" id="classSVF_1_1CallICFGNode_html_a90fd0b8e44fba1a7eb76d15bce085d66"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html#a90fd0b8e44fba1a7eb76d15bce085d66">SVF::CallICFGNode::getCallSite</a></div><div class="ttdeci">const SVFInstruction * getCallSite() const</div><div class="ttdoc">Return callsite. </div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00380">ICFGNode.h:380</a></div></div>
|
|
798
798
|
<div class="ttc" id="classSVF_1_1SVFValue_html"><div class="ttname"><a href="classSVF_1_1SVFValue.html">SVF::SVFValue</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l00147">SVFValue.h:147</a></div></div>
|
|
799
799
|
<div class="ttc" id="classSVF_1_1CallSite_html_a9b04a0f24be915a6e124106060225a3d"><div class="ttname"><a href="classSVF_1_1CallSite.html#a9b04a0f24be915a6e124106060225a3d">SVF::CallSite::getVtablePtr</a></div><div class="ttdeci">const SVFValue * getVtablePtr() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l01071">SVFValue.h:1071</a></div></div>
|
|
800
800
|
<div class="ttc" id="namespaceSVF_html_ad2b487757f1e1a1d81073120fc1d49c7"><div class="ttname"><a href="namespaceSVF.html#ad2b487757f1e1a1d81073120fc1d49c7">SVF::VFunSet</a></div><div class="ttdeci">Set< const SVFFunction * > VFunSet</div><div class="ttdef"><b>Definition:</b> <a href="CHG_8h_source.html#l00047">CHG.h:47</a></div></div>
|
|
801
|
-
<div class="ttc" id="
|
|
801
|
+
<div class="ttc" id="classSVF_1_1CallSite_html_a427a38e580db4bf04c9d716762243c89"><div class="ttname"><a href="classSVF_1_1CallSite.html#a427a38e580db4bf04c9d716762243c89">SVF::CallSite::isVirtualCall</a></div><div class="ttdeci">bool isVirtualCall() const</div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l01067">SVFValue.h:1067</a></div></div>
|
|
802
802
|
<div class="ttc" id="classSVF_1_1CallICFGNode_html"><div class="ttname"><a href="classSVF_1_1CallICFGNode.html">SVF::CallICFGNode</a></div><div class="ttdef"><b>Definition:</b> <a href="ICFGNode_8h_source.html#l00363">ICFGNode.h:363</a></div></div>
|
|
803
803
|
<div class="ttc" id="classSVF_1_1CallSite_html"><div class="ttname"><a href="classSVF_1_1CallSite.html">SVF::CallSite</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFValue_8h_source.html#l01014">SVFValue.h:1014</a></div></div>
|
|
804
804
|
<div class="ttc" id="classSVF_1_1PointerAnalysis_html_adc7f5c71efb9cd1bec4f5ca9127654c3"><div class="ttname"><a href="classSVF_1_1PointerAnalysis.html#adc7f5c71efb9cd1bec4f5ca9127654c3">SVF::PointerAnalysis::pag</a></div><div class="ttdeci">static SVFIR * pag</div><div class="ttdoc">SVFIR. </div><div class="ttdef"><b>Definition:</b> <a href="PointerAnalysis_8h_source.html#l00142">PointerAnalysis.h:142</a></div></div>
|
|
@@ -1158,7 +1158,7 @@ $(function() {
|
|
|
1158
1158
|
, <a class="el" href="classSVF_1_1ObjTypeInfo.html#a40d6703875b370aed2c6dc41c0594af5">SVF::ObjTypeInfo</a>
|
|
1159
1159
|
</li>
|
|
1160
1160
|
<li>isVirtualCall()
|
|
1161
|
-
: <a class="el" href="classSVF_1_1CallSite.html#
|
|
1161
|
+
: <a class="el" href="classSVF_1_1CallSite.html#a427a38e580db4bf04c9d716762243c89">SVF::CallSite</a>
|
|
1162
1162
|
</li>
|
|
1163
1163
|
<li>isVirtualMemAddress()
|
|
1164
1164
|
: <a class="el" href="classSVF_1_1AddressValue.html#ab76f47f97262d40dbbee12f466f746e8">SVF::AddressValue</a>
|
|
@@ -395,7 +395,7 @@ $(function() {
|
|
|
395
395
|
: <a class="el" href="classSVF_1_1GrammarBase.html#a2eb6ab294093710ca1dc119836adff5a">SVF::GrammarBase</a>
|
|
396
396
|
</li>
|
|
397
397
|
<li>setReachableBBs()
|
|
398
|
-
: <a class="el" href="classSVF_1_1SVFLoopAndDomInfo.html#
|
|
398
|
+
: <a class="el" href="classSVF_1_1SVFLoopAndDomInfo.html#acc409e328f641a2c9512beeb727f58c7">SVF::SVFLoopAndDomInfo</a>
|
|
399
399
|
</li>
|
|
400
400
|
<li>setReachGlobal()
|
|
401
401
|
: <a class="el" href="classSVF_1_1ProgSlice.html#a397632ce0c523c4a54c5dc578606d14d">SVF::ProgSlice</a>
|
|
@@ -1502,7 +1502,7 @@ $(function() {
|
|
|
1502
1502
|
, <a class="el" href="classSVF_1_1ObjTypeInfo.html#a40d6703875b370aed2c6dc41c0594af5">SVF::ObjTypeInfo</a>
|
|
1503
1503
|
</li>
|
|
1504
1504
|
<li>isVirtualCall()
|
|
1505
|
-
: <a class="el" href="classSVF_1_1CallSite.html#
|
|
1505
|
+
: <a class="el" href="classSVF_1_1CallSite.html#a427a38e580db4bf04c9d716762243c89">SVF::CallSite</a>
|
|
1506
1506
|
</li>
|
|
1507
1507
|
<li>isVirtualMemAddress()
|
|
1508
1508
|
: <a class="el" href="classSVF_1_1AddressValue.html#ab76f47f97262d40dbbee12f466f746e8">SVF::AddressValue</a>
|
|
@@ -460,7 +460,7 @@ $(function() {
|
|
|
460
460
|
: <a class="el" href="classSVF_1_1GrammarBase.html#a2eb6ab294093710ca1dc119836adff5a">SVF::GrammarBase</a>
|
|
461
461
|
</li>
|
|
462
462
|
<li>setReachableBBs()
|
|
463
|
-
: <a class="el" href="classSVF_1_1SVFLoopAndDomInfo.html#
|
|
463
|
+
: <a class="el" href="classSVF_1_1SVFLoopAndDomInfo.html#acc409e328f641a2c9512beeb727f58c7">SVF::SVFLoopAndDomInfo</a>
|
|
464
464
|
</li>
|
|
465
465
|
<li>setReachGlobal()
|
|
466
466
|
: <a class="el" href="classSVF_1_1ProgSlice.html#a397632ce0c523c4a54c5dc578606d14d">SVF::ProgSlice</a>
|
|
@@ -140,7 +140,7 @@ var searchData=
|
|
|
140
140
|
['setpwcnode',['setPWCNode',['../classSVF_1_1ConstraintGraph.html#a03f9fe8ae7094c39937f47f422276724',1,'SVF::ConstraintGraph::setPWCNode()'],['../classSVF_1_1ConstraintNode.html#ad8701df90d93c5dfed26cff8f0b2fbb3',1,'SVF::ConstraintNode::setPWCNode()']]],
|
|
141
141
|
['setquery',['setQuery',['../classSVF_1_1DDAClient.html#a3d0f732e284f3237287b375582c0aa88',1,'SVF::DDAClient']]],
|
|
142
142
|
['setrawproductions',['setRawProductions',['../classSVF_1_1GrammarBase.html#a2eb6ab294093710ca1dc119836adff5a',1,'SVF::GrammarBase']]],
|
|
143
|
-
['setreachablebbs',['setReachableBBs',['../classSVF_1_1SVFLoopAndDomInfo.html#
|
|
143
|
+
['setreachablebbs',['setReachableBBs',['../classSVF_1_1SVFLoopAndDomInfo.html#acc409e328f641a2c9512beeb727f58c7',1,'SVF::SVFLoopAndDomInfo']]],
|
|
144
144
|
['setreachglobal',['setReachGlobal',['../classSVF_1_1ProgSlice.html#a397632ce0c523c4a54c5dc578606d14d',1,'SVF::ProgSlice']]],
|
|
145
145
|
['setreles',['setRelEs',['../classSVF_1_1SVFIR2ItvExeState.html#af0b6abd2310a9bf0311760b290114341',1,'SVF::SVFIR2ItvExeState']]],
|
|
146
146
|
['setrep',['setRep',['../classSVF_1_1ConstraintGraph.html#abea65bf6dd43aa312082f8d4c7c3e3cb',1,'SVF::ConstraintGraph']]],
|
|
@@ -516,7 +516,7 @@ var searchData=
|
|
|
516
516
|
['isvararray',['isVarArray',['../classSVF_1_1MemObj.html#a616e9f4d6f82a253f94391c47668b9a6',1,'SVF::MemObj::isVarArray()'],['../classSVF_1_1ObjTypeInfo.html#aca1e900f9b0a774684af77666cf033e3',1,'SVF::ObjTypeInfo::isVarArray()']]],
|
|
517
517
|
['isvariantfieldgep',['isVariantFieldGep',['../classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788',1,'SVF::GepStmt']]],
|
|
518
518
|
['isvarstruct',['isVarStruct',['../classSVF_1_1MemObj.html#ad1966c52f95775ac7d65c0ba6632c3cf',1,'SVF::MemObj::isVarStruct()'],['../classSVF_1_1ObjTypeInfo.html#a40d6703875b370aed2c6dc41c0594af5',1,'SVF::ObjTypeInfo::isVarStruct()']]],
|
|
519
|
-
['isvirtualcall',['isVirtualCall',['../classSVF_1_1CallSite.html#
|
|
519
|
+
['isvirtualcall',['isVirtualCall',['../classSVF_1_1CallSite.html#a427a38e580db4bf04c9d716762243c89',1,'SVF::CallSite']]],
|
|
520
520
|
['isvirtualcallsite',['isVirtualCallSite',['../namespaceSVF_1_1cppUtil.html#aab1dce633f9a03796c208b6fba2bd2b4',1,'SVF::cppUtil']]],
|
|
521
521
|
['isvirtualmemaddress',['isVirtualMemAddress',['../classSVF_1_1AddressValue.html#ab76f47f97262d40dbbee12f466f746e8',1,'SVF::AddressValue::isVirtualMemAddress()'],['../classSVF_1_1ExeState.html#abfaad70395d9f4416f297887c84f7df4',1,'SVF::ExeState::isVirtualMemAddress()'],['../classSVF_1_1RelExeState.html#adc3ed92ba80bb95326cbbe675a278879',1,'SVF::RelExeState::isVirtualMemAddress()'],['../classSVF_1_1SVFIR2ItvExeState.html#ae48cc31474d2c1cbc581b8f7ed433a14',1,'SVF::SVFIR2ItvExeState::isVirtualMemAddress()']]],
|
|
522
522
|
['isvisited',['isVisited',['../classSVF_1_1CSC.html#a2913a7a83deae0b91f1f42dc45c4f3b2',1,'SVF::CSC']]],
|
|
@@ -101,7 +101,7 @@ var searchData=
|
|
|
101
101
|
['setpwcnode',['setPWCNode',['../classSVF_1_1ConstraintGraph.html#a03f9fe8ae7094c39937f47f422276724',1,'SVF::ConstraintGraph::setPWCNode()'],['../classSVF_1_1ConstraintNode.html#ad8701df90d93c5dfed26cff8f0b2fbb3',1,'SVF::ConstraintNode::setPWCNode()']]],
|
|
102
102
|
['setquery',['setQuery',['../classSVF_1_1DDAClient.html#a3d0f732e284f3237287b375582c0aa88',1,'SVF::DDAClient']]],
|
|
103
103
|
['setrawproductions',['setRawProductions',['../classSVF_1_1GrammarBase.html#a2eb6ab294093710ca1dc119836adff5a',1,'SVF::GrammarBase']]],
|
|
104
|
-
['setreachablebbs',['setReachableBBs',['../classSVF_1_1SVFLoopAndDomInfo.html#
|
|
104
|
+
['setreachablebbs',['setReachableBBs',['../classSVF_1_1SVFLoopAndDomInfo.html#acc409e328f641a2c9512beeb727f58c7',1,'SVF::SVFLoopAndDomInfo']]],
|
|
105
105
|
['setreachglobal',['setReachGlobal',['../classSVF_1_1ProgSlice.html#a397632ce0c523c4a54c5dc578606d14d',1,'SVF::ProgSlice']]],
|
|
106
106
|
['setreles',['setRelEs',['../classSVF_1_1SVFIR2ItvExeState.html#af0b6abd2310a9bf0311760b290114341',1,'SVF::SVFIR2ItvExeState']]],
|
|
107
107
|
['setrep',['setRep',['../classSVF_1_1ConstraintGraph.html#abea65bf6dd43aa312082f8d4c7c3e3cb',1,'SVF::ConstraintGraph']]],
|
|
@@ -382,7 +382,7 @@ var searchData=
|
|
|
382
382
|
['isvararray',['isVarArray',['../classSVF_1_1MemObj.html#a616e9f4d6f82a253f94391c47668b9a6',1,'SVF::MemObj::isVarArray()'],['../classSVF_1_1ObjTypeInfo.html#aca1e900f9b0a774684af77666cf033e3',1,'SVF::ObjTypeInfo::isVarArray()']]],
|
|
383
383
|
['isvariantfieldgep',['isVariantFieldGep',['../classSVF_1_1GepStmt.html#a0ddf180a0f7ba64fc8655687910e3788',1,'SVF::GepStmt']]],
|
|
384
384
|
['isvarstruct',['isVarStruct',['../classSVF_1_1MemObj.html#ad1966c52f95775ac7d65c0ba6632c3cf',1,'SVF::MemObj::isVarStruct()'],['../classSVF_1_1ObjTypeInfo.html#a40d6703875b370aed2c6dc41c0594af5',1,'SVF::ObjTypeInfo::isVarStruct()']]],
|
|
385
|
-
['isvirtualcall',['isVirtualCall',['../classSVF_1_1CallSite.html#
|
|
385
|
+
['isvirtualcall',['isVirtualCall',['../classSVF_1_1CallSite.html#a427a38e580db4bf04c9d716762243c89',1,'SVF::CallSite']]],
|
|
386
386
|
['isvirtualcallsite',['isVirtualCallSite',['../namespaceSVF_1_1cppUtil.html#aab1dce633f9a03796c208b6fba2bd2b4',1,'SVF::cppUtil']]],
|
|
387
387
|
['isvirtualmemaddress',['isVirtualMemAddress',['../classSVF_1_1AddressValue.html#ab76f47f97262d40dbbee12f466f746e8',1,'SVF::AddressValue::isVirtualMemAddress()'],['../classSVF_1_1ExeState.html#abfaad70395d9f4416f297887c84f7df4',1,'SVF::ExeState::isVirtualMemAddress()'],['../classSVF_1_1RelExeState.html#adc3ed92ba80bb95326cbbe675a278879',1,'SVF::RelExeState::isVirtualMemAddress()'],['../classSVF_1_1SVFIR2ItvExeState.html#ae48cc31474d2c1cbc581b8f7ed433a14',1,'SVF::SVFIR2ItvExeState::isVirtualMemAddress()']]],
|
|
388
388
|
['isvisited',['isVisited',['../classSVF_1_1CSC.html#a2913a7a83deae0b91f1f42dc45c4f3b2',1,'SVF::CSC']]],
|
package/include/SVFIR/SVFValue.h
CHANGED
|
@@ -130,7 +130,7 @@ public:
|
|
|
130
130
|
return reachableBBs;
|
|
131
131
|
}
|
|
132
132
|
|
|
133
|
-
inline
|
|
133
|
+
inline void setReachableBBs(BBList& bbs)
|
|
134
134
|
{
|
|
135
135
|
reachableBBs = bbs;
|
|
136
136
|
}
|
|
@@ -1064,7 +1064,7 @@ public:
|
|
|
1064
1064
|
{
|
|
1065
1065
|
return CB->isVarArg();
|
|
1066
1066
|
}
|
|
1067
|
-
|
|
1067
|
+
bool isVirtualCall() const
|
|
1068
1068
|
{
|
|
1069
1069
|
return SVFUtil::isa<SVFVirtualCallInst>(CB);
|
|
1070
1070
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "svf-tools",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.615",
|
|
4
4
|
"description": "* <b>[TypeClone](https://github.com/SVF-tools/SVF/wiki/TypeClone) published in our [ECOOP paper](https://yuleisui.github.io/publications/ecoop20.pdf) is now available in SVF </b> * <b>SVF now uses a single script for its build. Just type [`source ./build.sh`](https://github.com/SVF-tools/SVF/blob/master/build.sh) in your terminal, that's it!</b> * <b>SVF now supports LLVM-10.0.0! </b> * <b>We thank [bsauce](https://github.com/bsauce) for writing a user manual of SVF ([link1](https://www.jianshu.com/p/068a08ec749c) and [link2](https://www.jianshu.com/p/777c30d4240e)) in Chinese </b> * <b>SVF now supports LLVM-9.0.0 (Thank [Byoungyoung Lee](https://github.com/SVF-tools/SVF/issues/142) for his help!). </b> * <b>SVF now supports a set of [field-sensitive pointer analyses](https://yuleisui.github.io/publications/sas2019a.pdf). </b> * <b>[Use SVF as an external lib](https://github.com/SVF-tools/SVF/wiki/Using-SVF-as-a-lib-in-your-own-tool) for your own project (Contributed by [Hongxu Chen](https://github.com/HongxuChen)). </b> * <b>SVF now supports LLVM-7.0.0. </b> * <b>SVF now supports Docker. [Try SVF in Docker](https://github.com/SVF-tools/SVF/wiki/Try-SVF-in-Docker)! </b> * <b>SVF now supports [LLVM-6.0.0](https://github.com/svf-tools/SVF/pull/38) (Contributed by [Jack Anthony](https://github.com/jackanth)). </b> * <b>SVF now supports [LLVM-4.0.0](https://github.com/svf-tools/SVF/pull/23) (Contributed by Jared Carlson. Thank [Jared](https://github.com/jcarlson23) and [Will](https://github.com/dtzWill) for their in-depth [discussions](https://github.com/svf-tools/SVF/pull/18) about updating SVF!) </b> * <b>SVF now supports analysis for C++ programs.</b> <br />",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|