svf-tools 1.0.577 → 1.0.578
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/CFLAlias_8cpp.html +0 -1
- package/SVF-doxygen/html/html/CFLAlias_8cpp_source.html +18 -25
- package/SVF-doxygen/html/html/CFLAlias_8h.html +1 -8
- package/SVF-doxygen/html/html/CFLAlias_8h_source.html +23 -49
- package/SVF-doxygen/html/html/CFLBase_8h.html +103 -0
- package/SVF-doxygen/html/html/CFLBase_8h_source.html +124 -0
- package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CFLGraph_8h_source.html +5 -4
- package/SVF-doxygen/html/html/CFLStat_8cpp_source.html +24 -19
- package/SVF-doxygen/html/html/CFLStat_8h.html +1 -0
- package/SVF-doxygen/html/html/CFLStat_8h_source.html +22 -21
- package/SVF-doxygen/html/html/CFLVF_8cpp.html +0 -2
- package/SVF-doxygen/html/html/CFLVF_8cpp_source.html +5 -8
- package/SVF-doxygen/html/html/CFLVF_8h.html +3 -8
- package/SVF-doxygen/html/html/CFLVF_8h_source.html +12 -26
- package/SVF-doxygen/html/html/CHG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/CHG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ConsGNode_8h_source.html +5 -5
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ConsG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DCHG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/DataFlowUtil_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/GEPTypeBridgeIterator_8h_source.html +1 -1
- package/SVF-doxygen/html/html/GenericGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/GraphPrinter_8h_source.html +1 -1
- package/SVF-doxygen/html/html/ICFG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ICFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/IRGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/IRGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/PTACallGraph_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/PTACallGraph_8h_source.html +1 -1
- package/SVF-doxygen/html/html/SVFG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/SVFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/TCT_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/TCT_8h_source.html +1 -1
- package/SVF-doxygen/html/html/VFG_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/VFG_8h_source.html +1 -1
- package/SVF-doxygen/html/html/annotated.html +271 -270
- package/SVF-doxygen/html/html/cfl_8cpp.html +6 -9
- package/SVF-doxygen/html/html/cfl_8cpp_source.html +6 -8
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.html +9 -8
- package/SVF-doxygen/html/html/classSVF_1_1BVDataPTAImpl.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias-members.html +75 -71
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +239 -679
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLBase-members.html +275 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLBase.html +1341 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLBase.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraph-members.html +21 -20
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +33 -3
- package/SVF-doxygen/html/html/classSVF_1_1CFLStat-members.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLStat.html +58 -58
- package/SVF-doxygen/html/html/classSVF_1_1CFLVF-members.html +91 -72
- package/SVF-doxygen/html/html/classSVF_1_1CFLVF.html +243 -274
- package/SVF-doxygen/html/html/classSVF_1_1CFLVF.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode-members.html +26 -26
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintNode.html +43 -43
- package/SVF-doxygen/html/html/classSVF_1_1GenericNode.html +21 -20
- package/SVF-doxygen/html/html/classSVF_1_1GenericNode.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.html +12 -11
- package/SVF-doxygen/html/html/classSVF_1_1PointerAnalysis.png +0 -0
- package/SVF-doxygen/html/html/classes.html +96 -95
- package/SVF-doxygen/html/html/dda_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/dir_ae8aa099e368efaa962140c6624142bc.html +2 -0
- package/SVF-doxygen/html/html/files.html +8 -7
- package/SVF-doxygen/html/html/functions_0x7e.html +2 -5
- package/SVF-doxygen/html/html/functions_a.html +10 -9
- package/SVF-doxygen/html/html/functions_c.html +28 -28
- package/SVF-doxygen/html/html/functions_f.html +17 -16
- package/SVF-doxygen/html/html/functions_func.html +6 -5
- package/SVF-doxygen/html/html/functions_func_0x7e.html +2 -5
- package/SVF-doxygen/html/html/functions_func_c.html +29 -21
- package/SVF-doxygen/html/html/functions_func_f.html +4 -1
- package/SVF-doxygen/html/html/functions_func_g.html +14 -11
- package/SVF-doxygen/html/html/functions_func_i.html +10 -7
- package/SVF-doxygen/html/html/functions_func_p.html +1 -1
- package/SVF-doxygen/html/html/functions_func_s.html +2 -2
- package/SVF-doxygen/html/html/functions_g.html +18 -17
- package/SVF-doxygen/html/html/functions_i.html +10 -7
- package/SVF-doxygen/html/html/functions_l.html +6 -6
- package/SVF-doxygen/html/html/functions_m.html +2 -2
- package/SVF-doxygen/html/html/functions_n.html +14 -11
- package/SVF-doxygen/html/html/functions_o.html +15 -15
- package/SVF-doxygen/html/html/functions_p.html +19 -15
- package/SVF-doxygen/html/html/functions_r.html +3 -7
- package/SVF-doxygen/html/html/functions_s.html +16 -16
- package/SVF-doxygen/html/html/functions_t.html +9 -6
- package/SVF-doxygen/html/html/functions_type_c.html +0 -1
- package/SVF-doxygen/html/html/functions_v.html +6 -6
- package/SVF-doxygen/html/html/functions_vars_a.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_c.html +0 -1
- package/SVF-doxygen/html/html/functions_vars_g.html +2 -4
- package/SVF-doxygen/html/html/functions_vars_m.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_n.html +11 -8
- package/SVF-doxygen/html/html/functions_vars_p.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_s.html +2 -4
- package/SVF-doxygen/html/html/functions_vars_t.html +9 -6
- package/SVF-doxygen/html/html/hierarchy.html +58 -57
- package/SVF-doxygen/html/html/mta_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/namespaceSVF.html +2 -0
- package/SVF-doxygen/html/html/saber_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/search/all_1.js +2 -2
- package/SVF-doxygen/html/html/search/all_10.js +11 -11
- package/SVF-doxygen/html/html/search/all_11.js +2 -2
- package/SVF-doxygen/html/html/search/all_12.js +11 -11
- package/SVF-doxygen/html/html/search/all_13.js +9 -8
- package/SVF-doxygen/html/html/search/all_15.js +4 -4
- package/SVF-doxygen/html/html/search/all_16.js +1 -1
- package/SVF-doxygen/html/html/search/all_19.js +1 -2
- package/SVF-doxygen/html/html/search/all_3.js +5 -2
- package/SVF-doxygen/html/html/search/all_6.js +2 -2
- package/SVF-doxygen/html/html/search/all_7.js +4 -3
- package/SVF-doxygen/html/html/search/all_9.js +2 -2
- package/SVF-doxygen/html/html/search/all_c.js +4 -4
- package/SVF-doxygen/html/html/search/all_d.js +3 -3
- package/SVF-doxygen/html/html/search/all_e.js +11 -10
- package/SVF-doxygen/html/html/search/all_f.js +2 -2
- package/SVF-doxygen/html/html/search/classes_2.js +1 -0
- package/SVF-doxygen/html/html/search/files_2.js +1 -0
- package/SVF-doxygen/html/html/search/functions_0.js +1 -1
- package/SVF-doxygen/html/html/search/functions_11.js +1 -1
- package/SVF-doxygen/html/html/search/functions_17.js +1 -2
- package/SVF-doxygen/html/html/search/functions_2.js +3 -1
- package/SVF-doxygen/html/html/search/functions_5.js +1 -1
- package/SVF-doxygen/html/html/search/functions_6.js +2 -1
- package/SVF-doxygen/html/html/search/functions_8.js +1 -1
- package/SVF-doxygen/html/html/search/functions_f.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_2.js +1 -1
- package/SVF-doxygen/html/html/search/variables_1.js +1 -1
- package/SVF-doxygen/html/html/search/variables_10.js +1 -1
- package/SVF-doxygen/html/html/search/variables_12.js +2 -2
- package/SVF-doxygen/html/html/search/variables_13.js +9 -8
- package/SVF-doxygen/html/html/search/variables_3.js +1 -1
- package/SVF-doxygen/html/html/search/variables_7.js +2 -2
- package/SVF-doxygen/html/html/search/variables_9.js +1 -1
- package/SVF-doxygen/html/html/search/variables_c.js +1 -1
- package/SVF-doxygen/html/html/search/variables_d.js +1 -1
- package/SVF-doxygen/html/html/search/variables_e.js +9 -8
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01Inverse_3_01SVF_1_1CFLNode_01_5_01_4_01_4.html +1 -1
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CFLGraph_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/html/structllvm_1_1GraphTraits_3_01SVF_1_1CFLNode_01_5_01_4.html +1 -1
- package/SVF-doxygen/html/html/svf-ex_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/wpa_8cpp_source.html +1 -1
- package/include/CFL/CFLAlias.h +10 -47
- package/include/CFL/CFLBase.h +111 -0
- package/include/CFL/CFLStat.h +4 -2
- package/include/CFL/CFLVF.h +13 -23
- package/include/Graphs/CFLGraph.h +5 -0
- package/lib/CFL/CFLAlias.cpp +60 -52
- package/lib/CFL/CFLStat.cpp +11 -19
- package/lib/CFL/CFLVF.cpp +40 -35
- package/package.json +1 -1
- package/tools/CFL/cfl.cpp +12 -25
|
@@ -224,7 +224,7 @@ $(function() {
|
|
|
224
224
|
</li>
|
|
225
225
|
<li>numOfFieldExpand
|
|
226
226
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a9f453ec1b4236b8194ae590981217259">SVF::AndersenBase</a>
|
|
227
|
-
, <a class="el" href="
|
|
227
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#ac0b0681d957fe18b3e87ff9e8a6f577c">SVF::CFLBase</a>
|
|
228
228
|
</li>
|
|
229
229
|
<li>numOfFlattenElements
|
|
230
230
|
: <a class="el" href="classSVF_1_1StInfo.html#a7aa5b5018b4dec4913eb6aecf25568a4">SVF::StInfo</a>
|
|
@@ -319,12 +319,12 @@ $(function() {
|
|
|
319
319
|
</li>
|
|
320
320
|
<li>numOfProcessedAddr
|
|
321
321
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a4acad18a6eb585ba9e3d2276dd591067">SVF::AndersenBase</a>
|
|
322
|
-
, <a class="el" href="
|
|
322
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#ab5ace49d46bd156660166ec9262ae328">SVF::CFLBase</a>
|
|
323
323
|
, <a class="el" href="classSVF_1_1FlowSensitive.html#ae4253bc632ffffe2498263c90f456ca7">SVF::FlowSensitive</a>
|
|
324
324
|
</li>
|
|
325
325
|
<li>numOfProcessedCopy
|
|
326
326
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a04acd871bd1b98cd9e83e395334ac130">SVF::AndersenBase</a>
|
|
327
|
-
, <a class="el" href="
|
|
327
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#ac45983aa9c30e11cf4dc92c732d671d2">SVF::CFLBase</a>
|
|
328
328
|
, <a class="el" href="classSVF_1_1FlowSensitive.html#a19e017f3ed6429fa30687018e64dae54">SVF::FlowSensitive</a>
|
|
329
329
|
</li>
|
|
330
330
|
<li>numOfProcessedFormalRet
|
|
@@ -332,12 +332,12 @@ $(function() {
|
|
|
332
332
|
</li>
|
|
333
333
|
<li>numOfProcessedGep
|
|
334
334
|
: <a class="el" href="classSVF_1_1AndersenBase.html#aa1246b392aeae1fd10c8a9ebedcc2dd9">SVF::AndersenBase</a>
|
|
335
|
-
, <a class="el" href="
|
|
335
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#ac8c31fde200a039f880e93a0808ad273">SVF::CFLBase</a>
|
|
336
336
|
, <a class="el" href="classSVF_1_1FlowSensitive.html#a88a111b6bc347d6562db7af8bd8f2f0e">SVF::FlowSensitive</a>
|
|
337
337
|
</li>
|
|
338
338
|
<li>numOfProcessedLoad
|
|
339
339
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a69aae96fc1c99bf108075e5061f50f9e">SVF::AndersenBase</a>
|
|
340
|
-
, <a class="el" href="
|
|
340
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#ac374dff70ef434b3ba4f75257f632f97">SVF::CFLBase</a>
|
|
341
341
|
, <a class="el" href="classSVF_1_1FlowSensitive.html#a0e1a0bdbf4f81a3600ac26ac011ac268">SVF::FlowSensitive</a>
|
|
342
342
|
</li>
|
|
343
343
|
<li>numOfProcessedMSSANode
|
|
@@ -348,7 +348,7 @@ $(function() {
|
|
|
348
348
|
</li>
|
|
349
349
|
<li>numOfProcessedStore
|
|
350
350
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a2b763519509ce21cf40893c01f8357b6">SVF::AndersenBase</a>
|
|
351
|
-
, <a class="el" href="
|
|
351
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#a44aaad485d8911703c2f83c99b41bcf9">SVF::CFLBase</a>
|
|
352
352
|
, <a class="el" href="classSVF_1_1FlowSensitive.html#a669e8f1dd8572b7dcff373c9787a923d">SVF::FlowSensitive</a>
|
|
353
353
|
</li>
|
|
354
354
|
<li>numOfRemovedPTS
|
|
@@ -374,11 +374,11 @@ $(function() {
|
|
|
374
374
|
</li>
|
|
375
375
|
<li>numOfSCCDetection
|
|
376
376
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a0d7298cbf83568f24fd2bd1926a32968">SVF::AndersenBase</a>
|
|
377
|
-
, <a class="el" href="
|
|
377
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#a2ab180a3cb942b674f8b2a12e4756a23">SVF::CFLBase</a>
|
|
378
378
|
</li>
|
|
379
379
|
<li>numOfSfrs
|
|
380
380
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a25b00d9ca71cbdd27530fc5d0dc84ee5">SVF::AndersenBase</a>
|
|
381
|
-
, <a class="el" href="
|
|
381
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#a8d03c680be0bae1bb5f9490b7a72c2a2">SVF::CFLBase</a>
|
|
382
382
|
</li>
|
|
383
383
|
<li>numOfStore
|
|
384
384
|
: <a class="el" href="classSVF_1_1SVFGStat.html#a4d15f2de3f226c26cb2af57176444ec9">SVF::SVFGStat</a>
|
|
@@ -389,6 +389,9 @@ $(function() {
|
|
|
389
389
|
<li>NumOfStoreHasChi
|
|
390
390
|
: <a class="el" href="classSVF_1_1MemSSAStat.html#a3bc14307bd0f986cbd8ba5970f1abf0f">SVF::MemSSAStat</a>
|
|
391
391
|
</li>
|
|
392
|
+
<li>numOfSumEdges
|
|
393
|
+
: <a class="el" href="classSVF_1_1CFLBase.html#aad77c4e9fb9a3fdceb222fbdec192c51">SVF::CFLBase</a>
|
|
394
|
+
</li>
|
|
392
395
|
<li>numOfTotalQueries
|
|
393
396
|
: <a class="el" href="classSVF_1_1LockAnalysis.html#ad648ad9cda4070f9aec1addef0067627">SVF::LockAnalysis</a>
|
|
394
397
|
, <a class="el" href="classSVF_1_1MHP.html#a26ae18993915d76b704232cded9811c2">SVF::MHP</a>
|
|
@@ -263,7 +263,7 @@ $(function() {
|
|
|
263
263
|
</li>
|
|
264
264
|
<li>pta
|
|
265
265
|
: <a class="el" href="classSVF_1_1AndersenStat.html#a8af8dd60987c4c99ea3727d9db87c187">SVF::AndersenStat</a>
|
|
266
|
-
, <a class="el" href="classSVF_1_1CFLStat.html#
|
|
266
|
+
, <a class="el" href="classSVF_1_1CFLStat.html#a6fc506f947be6c9309cc8914c6a8c3e0">SVF::CFLStat</a>
|
|
267
267
|
, <a class="el" href="classSVF_1_1MemSSA.html#a468e1481926df6865678b7232bb79bf3">SVF::MemSSA</a>
|
|
268
268
|
, <a class="el" href="classSVF_1_1MRGenerator.html#afb7ce3a24edda14895999eb15231daff">SVF::MRGenerator</a>
|
|
269
269
|
, <a class="el" href="classSVF_1_1PCG.html#adb917fc3adc3b0c3aedd57e9c77eae05">SVF::PCG</a>
|
|
@@ -142,8 +142,7 @@ $(function() {
|
|
|
142
142
|
: <a class="el" href="classSVF_1_1DDAClient.html#aa8a67c60ec0395c9cfae178dcff638a8">SVF::DDAClient</a>
|
|
143
143
|
</li>
|
|
144
144
|
<li>solver
|
|
145
|
-
: <a class="el" href="
|
|
146
|
-
, <a class="el" href="classSVF_1_1CFLVF.html#ab7ff36646da4c568d160ca2563b9b087">SVF::CFLVF</a>
|
|
145
|
+
: <a class="el" href="classSVF_1_1CFLBase.html#a34c3a3eec2d7d34ef78b5031d8844b17">SVF::CFLBase</a>
|
|
147
146
|
, <a class="el" href="classSVF_1_1Z3Expr.html#a2f0cf6549d9bc6fc1d4be46976ad0f0e">SVF::Z3Expr</a>
|
|
148
147
|
</li>
|
|
149
148
|
<li>solveTime
|
|
@@ -282,8 +281,7 @@ $(function() {
|
|
|
282
281
|
: <a class="el" href="classSVF_1_1Options.html#a982b4cd71ccafd07d94f10a0a2e953c2">SVF::Options</a>
|
|
283
282
|
</li>
|
|
284
283
|
<li>svfir
|
|
285
|
-
: <a class="el" href="
|
|
286
|
-
, <a class="el" href="classSVF_1_1CFLVF.html#a32b774f456dc6ca596cfe2fcd77efbc9">SVF::CFLVF</a>
|
|
284
|
+
: <a class="el" href="classSVF_1_1CFLBase.html#a9e6cbab31612da4a1f8f660d1fabc4c0">SVF::CFLBase</a>
|
|
287
285
|
</li>
|
|
288
286
|
<li>SVFMain
|
|
289
287
|
: <a class="el" href="classSVF_1_1Options.html#a868fa5069b01b7a7dfbc5fb99cb76385">SVF::Options</a>
|
|
@@ -143,7 +143,7 @@ $(function() {
|
|
|
143
143
|
</li>
|
|
144
144
|
<li>timeOfCollapse
|
|
145
145
|
: <a class="el" href="classSVF_1_1AndersenBase.html#ad40b196c2c699bd115529b806d20de25">SVF::AndersenBase</a>
|
|
146
|
-
, <a class="el" href="
|
|
146
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#abd012b8950dcf14c2fb1aa92f1f1ac35">SVF::CFLBase</a>
|
|
147
147
|
</li>
|
|
148
148
|
<li>timeOfCreateMUCHI
|
|
149
149
|
: <a class="el" href="classSVF_1_1MemSSA.html#a4d2418b7df74f23d8fd328f66e29f198">SVF::MemSSA</a>
|
|
@@ -165,19 +165,22 @@ $(function() {
|
|
|
165
165
|
</li>
|
|
166
166
|
<li>timeOfProcessCopyGep
|
|
167
167
|
: <a class="el" href="classSVF_1_1AndersenBase.html#aae14de6fbca9280d8d0290326aa493f0">SVF::AndersenBase</a>
|
|
168
|
-
, <a class="el" href="
|
|
168
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#ac2e55fd9d1cd48a672b478250e8cbdc2">SVF::CFLBase</a>
|
|
169
169
|
</li>
|
|
170
170
|
<li>timeOfProcessLoadStore
|
|
171
171
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a9fe738f1e11c80006d540f246a80bfdf">SVF::AndersenBase</a>
|
|
172
|
-
, <a class="el" href="
|
|
172
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#a75ca2908c28ed5e6f6751ebcd912b8fe">SVF::CFLBase</a>
|
|
173
173
|
</li>
|
|
174
174
|
<li>timeOfSCCDetection
|
|
175
175
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a6b7d0e57f741c446d0bf178939960143">SVF::AndersenBase</a>
|
|
176
|
-
, <a class="el" href="
|
|
176
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#a4222eea6bc0e54beef7f27b34a1a7380">SVF::CFLBase</a>
|
|
177
177
|
</li>
|
|
178
178
|
<li>timeOfSCCMerges
|
|
179
179
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a02c5a50b214d36921e1404784e76704d">SVF::AndersenBase</a>
|
|
180
|
-
, <a class="el" href="
|
|
180
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#a56b046d985d945e763c08ee65272fa02">SVF::CFLBase</a>
|
|
181
|
+
</li>
|
|
182
|
+
<li>timeOfSolving
|
|
183
|
+
: <a class="el" href="classSVF_1_1CFLBase.html#aadadb80fdc1d2a3258463043bcde6e36">SVF::CFLBase</a>
|
|
181
184
|
</li>
|
|
182
185
|
<li>timeOfSSARenaming
|
|
183
186
|
: <a class="el" href="classSVF_1_1MemSSA.html#a97ccd5e0b9ab6144415e26bdf95cbabd">SVF::MemSSA</a>
|
|
@@ -187,7 +190,7 @@ $(function() {
|
|
|
187
190
|
</li>
|
|
188
191
|
<li>timeOfUpdateCallGraph
|
|
189
192
|
: <a class="el" href="classSVF_1_1AndersenBase.html#a2afb49f513c9534fd051117b59dc056b">SVF::AndersenBase</a>
|
|
190
|
-
, <a class="el" href="
|
|
193
|
+
, <a class="el" href="classSVF_1_1CFLBase.html#a38bfcb64f8570e541cd1bd0ac2a7fd3e">SVF::CFLBase</a>
|
|
191
194
|
</li>
|
|
192
195
|
<li>timeStatMap
|
|
193
196
|
: <a class="el" href="classSVF_1_1SVFStat.html#a5383691a34426a1a997b5eed387f1831">SVF::SVFStat</a>
|
|
@@ -225,59 +225,59 @@ $(function() {
|
|
|
225
225
|
<tr id="row_69_0_0_" class="even" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1SVFIR.html" target="_self">SVF::SVFIR</a></td><td class="desc"></td></tr>
|
|
226
226
|
<tr id="row_70_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_70_" class="arrow" onclick="toggleFolder('70_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1GenericNode.html" target="_self">SVF::GenericNode< NodeTy, EdgeTy ></a></td><td class="desc"></td></tr>
|
|
227
227
|
<tr id="row_70_0_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1CHNode.html" target="_self">SVF::CHNode</a></td><td class="desc"></td></tr>
|
|
228
|
-
<tr id="row_70_1_" style="display:none;"><td class="entry"><span style="width:
|
|
229
|
-
<tr id="
|
|
230
|
-
<tr id="
|
|
231
|
-
<tr id="
|
|
232
|
-
<tr id="
|
|
233
|
-
<tr id="
|
|
234
|
-
<tr id="
|
|
235
|
-
<tr id="
|
|
236
|
-
<tr id="
|
|
237
|
-
<tr id="row_70_3_" style="display:none;"><td class="entry"><span style="width:
|
|
238
|
-
<tr id="
|
|
239
|
-
<tr id="
|
|
240
|
-
<tr id="
|
|
241
|
-
<tr id="
|
|
242
|
-
<tr id="
|
|
243
|
-
<tr id="
|
|
244
|
-
<tr id="
|
|
245
|
-
<tr id="
|
|
246
|
-
<tr id="
|
|
247
|
-
<tr id="
|
|
248
|
-
<tr id="row_70_5_" style="display:none;"><td class="entry"><span style="width:
|
|
249
|
-
<tr id="
|
|
250
|
-
<tr id="
|
|
251
|
-
<tr id="
|
|
252
|
-
<tr id="
|
|
253
|
-
<tr id="
|
|
254
|
-
<tr id="
|
|
255
|
-
<tr id="
|
|
256
|
-
<tr id="
|
|
257
|
-
<tr id="
|
|
258
|
-
<tr id="
|
|
259
|
-
<tr id="
|
|
260
|
-
<tr id="
|
|
261
|
-
<tr id="
|
|
262
|
-
<tr id="
|
|
263
|
-
<tr id="
|
|
264
|
-
<tr id="
|
|
265
|
-
<tr id="
|
|
266
|
-
<tr id="
|
|
267
|
-
<tr id="
|
|
268
|
-
<tr id="
|
|
269
|
-
<tr id="
|
|
270
|
-
<tr id="
|
|
271
|
-
<tr id="
|
|
272
|
-
<tr id="
|
|
273
|
-
<tr id="
|
|
274
|
-
<tr id="
|
|
275
|
-
<tr id="
|
|
276
|
-
<tr id="
|
|
228
|
+
<tr id="row_70_1_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1ConstraintNode.html" target="_self">SVF::ConstraintNode</a></td><td class="desc"></td></tr>
|
|
229
|
+
<tr id="row_70_2_" style="display:none;"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_70_2_" class="arrow" onclick="toggleFolder('70_2_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1ICFGNode.html" target="_self">SVF::ICFGNode</a></td><td class="desc"></td></tr>
|
|
230
|
+
<tr id="row_70_2_0_" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1GlobalICFGNode.html" target="_self">SVF::GlobalICFGNode</a></td><td class="desc"></td></tr>
|
|
231
|
+
<tr id="row_70_2_1_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span id="arr_70_2_1_" class="arrow" onclick="toggleFolder('70_2_1_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1InterICFGNode.html" target="_self">SVF::InterICFGNode</a></td><td class="desc"></td></tr>
|
|
232
|
+
<tr id="row_70_2_1_0_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1CallICFGNode.html" target="_self">SVF::CallICFGNode</a></td><td class="desc"></td></tr>
|
|
233
|
+
<tr id="row_70_2_1_1_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1FunEntryICFGNode.html" target="_self">SVF::FunEntryICFGNode</a></td><td class="desc"></td></tr>
|
|
234
|
+
<tr id="row_70_2_1_2_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1FunExitICFGNode.html" target="_self">SVF::FunExitICFGNode</a></td><td class="desc"></td></tr>
|
|
235
|
+
<tr id="row_70_2_1_3_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1RetICFGNode.html" target="_self">SVF::RetICFGNode</a></td><td class="desc"></td></tr>
|
|
236
|
+
<tr id="row_70_2_2_" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1IntraICFGNode.html" target="_self">SVF::IntraICFGNode</a></td><td class="desc"></td></tr>
|
|
237
|
+
<tr id="row_70_3_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1PTACallGraphNode.html" target="_self">SVF::PTACallGraphNode</a></td><td class="desc"></td></tr>
|
|
238
|
+
<tr id="row_70_4_" style="display:none;"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_70_4_" class="arrow" onclick="toggleFolder('70_4_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1SVFVar.html" target="_self">SVF::SVFVar</a></td><td class="desc"></td></tr>
|
|
239
|
+
<tr id="row_70_4_0_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span id="arr_70_4_0_" class="arrow" onclick="toggleFolder('70_4_0_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1ObjVar.html" target="_self">SVF::ObjVar</a></td><td class="desc"></td></tr>
|
|
240
|
+
<tr id="row_70_4_0_0_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1DummyObjVar.html" target="_self">SVF::DummyObjVar</a></td><td class="desc"></td></tr>
|
|
241
|
+
<tr id="row_70_4_0_1_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1FIObjVar.html" target="_self">SVF::FIObjVar</a></td><td class="desc"></td></tr>
|
|
242
|
+
<tr id="row_70_4_0_2_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1GepObjVar.html" target="_self">SVF::GepObjVar</a></td><td class="desc"></td></tr>
|
|
243
|
+
<tr id="row_70_4_1_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span id="arr_70_4_1_" class="arrow" onclick="toggleFolder('70_4_1_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1ValVar.html" target="_self">SVF::ValVar</a></td><td class="desc"></td></tr>
|
|
244
|
+
<tr id="row_70_4_1_0_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1DummyValVar.html" target="_self">SVF::DummyValVar</a></td><td class="desc"></td></tr>
|
|
245
|
+
<tr id="row_70_4_1_1_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1GepValVar.html" target="_self">SVF::GepValVar</a></td><td class="desc"></td></tr>
|
|
246
|
+
<tr id="row_70_4_1_2_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1RetPN.html" target="_self">SVF::RetPN</a></td><td class="desc"></td></tr>
|
|
247
|
+
<tr id="row_70_4_1_3_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1VarArgPN.html" target="_self">SVF::VarArgPN</a></td><td class="desc"></td></tr>
|
|
248
|
+
<tr id="row_70_5_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1TCTNode.html" target="_self">SVF::TCTNode</a></td><td class="desc"></td></tr>
|
|
249
|
+
<tr id="row_70_6_" style="display:none;"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_70_6_" class="arrow" onclick="toggleFolder('70_6_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1VFGNode.html" target="_self">SVF::VFGNode</a></td><td class="desc"></td></tr>
|
|
250
|
+
<tr id="row_70_6_0_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span id="arr_70_6_0_" class="arrow" onclick="toggleFolder('70_6_0_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1ArgumentVFGNode.html" target="_self">SVF::ArgumentVFGNode</a></td><td class="desc"></td></tr>
|
|
251
|
+
<tr id="row_70_6_0_0_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1ActualParmVFGNode.html" target="_self">SVF::ActualParmVFGNode</a></td><td class="desc"></td></tr>
|
|
252
|
+
<tr id="row_70_6_0_1_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1ActualRetVFGNode.html" target="_self">SVF::ActualRetVFGNode</a></td><td class="desc"></td></tr>
|
|
253
|
+
<tr id="row_70_6_0_2_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1FormalParmVFGNode.html" target="_self">SVF::FormalParmVFGNode</a></td><td class="desc"></td></tr>
|
|
254
|
+
<tr id="row_70_6_0_3_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1FormalRetVFGNode.html" target="_self">SVF::FormalRetVFGNode</a></td><td class="desc"></td></tr>
|
|
255
|
+
<tr id="row_70_6_1_" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1BinaryOPVFGNode.html" target="_self">SVF::BinaryOPVFGNode</a></td><td class="desc"></td></tr>
|
|
256
|
+
<tr id="row_70_6_2_" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1BranchVFGNode.html" target="_self">SVF::BranchVFGNode</a></td><td class="desc"></td></tr>
|
|
257
|
+
<tr id="row_70_6_3_" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1CmpVFGNode.html" target="_self">SVF::CmpVFGNode</a></td><td class="desc"></td></tr>
|
|
258
|
+
<tr id="row_70_6_4_" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1DummyVersionPropSVFGNode.html" target="_self">SVF::DummyVersionPropSVFGNode</a></td><td class="desc"></td></tr>
|
|
259
|
+
<tr id="row_70_6_5_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span id="arr_70_6_5_" class="arrow" onclick="toggleFolder('70_6_5_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1MRSVFGNode.html" target="_self">SVF::MRSVFGNode</a></td><td class="desc"></td></tr>
|
|
260
|
+
<tr id="row_70_6_5_0_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1ActualINSVFGNode.html" target="_self">SVF::ActualINSVFGNode</a></td><td class="desc"></td></tr>
|
|
261
|
+
<tr id="row_70_6_5_1_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1ActualOUTSVFGNode.html" target="_self">SVF::ActualOUTSVFGNode</a></td><td class="desc"></td></tr>
|
|
262
|
+
<tr id="row_70_6_5_2_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1FormalINSVFGNode.html" target="_self">SVF::FormalINSVFGNode</a></td><td class="desc"></td></tr>
|
|
263
|
+
<tr id="row_70_6_5_3_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1FormalOUTSVFGNode.html" target="_self">SVF::FormalOUTSVFGNode</a></td><td class="desc"></td></tr>
|
|
264
|
+
<tr id="row_70_6_5_4_" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span id="arr_70_6_5_4_" class="arrow" onclick="toggleFolder('70_6_5_4_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1MSSAPHISVFGNode.html" target="_self">SVF::MSSAPHISVFGNode</a></td><td class="desc"></td></tr>
|
|
265
|
+
<tr id="row_70_6_5_4_0_" style="display:none;"><td class="entry"><span style="width:80px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1InterMSSAPHISVFGNode.html" target="_self">SVF::InterMSSAPHISVFGNode</a></td><td class="desc"></td></tr>
|
|
266
|
+
<tr id="row_70_6_5_4_1_" style="display:none;"><td class="entry"><span style="width:80px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1IntraMSSAPHISVFGNode.html" target="_self">SVF::IntraMSSAPHISVFGNode</a></td><td class="desc"></td></tr>
|
|
267
|
+
<tr id="row_70_6_6_" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1NullPtrVFGNode.html" target="_self">SVF::NullPtrVFGNode</a></td><td class="desc"></td></tr>
|
|
268
|
+
<tr id="row_70_6_7_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span id="arr_70_6_7_" class="arrow" onclick="toggleFolder('70_6_7_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1PHIVFGNode.html" target="_self">SVF::PHIVFGNode</a></td><td class="desc"></td></tr>
|
|
269
|
+
<tr id="row_70_6_7_0_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1InterPHIVFGNode.html" target="_self">SVF::InterPHIVFGNode</a></td><td class="desc"></td></tr>
|
|
270
|
+
<tr id="row_70_6_7_1_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1IntraPHIVFGNode.html" target="_self">SVF::IntraPHIVFGNode</a></td><td class="desc"></td></tr>
|
|
271
|
+
<tr id="row_70_6_8_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span id="arr_70_6_8_" class="arrow" onclick="toggleFolder('70_6_8_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1StmtVFGNode.html" target="_self">SVF::StmtVFGNode</a></td><td class="desc"></td></tr>
|
|
272
|
+
<tr id="row_70_6_8_0_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1AddrVFGNode.html" target="_self">SVF::AddrVFGNode</a></td><td class="desc"></td></tr>
|
|
273
|
+
<tr id="row_70_6_8_1_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1CopyVFGNode.html" target="_self">SVF::CopyVFGNode</a></td><td class="desc"></td></tr>
|
|
274
|
+
<tr id="row_70_6_8_2_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1GepVFGNode.html" target="_self">SVF::GepVFGNode</a></td><td class="desc"></td></tr>
|
|
275
|
+
<tr id="row_70_6_8_3_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1LoadVFGNode.html" target="_self">SVF::LoadVFGNode</a></td><td class="desc"></td></tr>
|
|
276
|
+
<tr id="row_70_6_8_4_" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1StoreVFGNode.html" target="_self">SVF::StoreVFGNode</a></td><td class="desc"></td></tr>
|
|
277
|
+
<tr id="row_70_6_9_" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1UnaryOPVFGNode.html" target="_self">SVF::UnaryOPVFGNode</a></td><td class="desc"></td></tr>
|
|
277
278
|
<tr id="row_71_"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_71_" class="arrow" onclick="toggleFolder('71_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1GenericNode.html" target="_self">SVF::GenericNode< CFLNode, CFLEdge ></a></td><td class="desc"></td></tr>
|
|
278
279
|
<tr id="row_71_0_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1CFLNode.html" target="_self">SVF::CFLNode</a></td><td class="desc"></td></tr>
|
|
279
|
-
<tr id="row_72_" class="even"><td class="entry"><span style="width:
|
|
280
|
-
<tr id="row_72_0_" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1ConstraintNode.html" target="_self">SVF::ConstraintNode</a></td><td class="desc"></td></tr>
|
|
280
|
+
<tr id="row_72_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1GenericNode.html" target="_self">SVF::GenericNode< ConstraintNode, ConstraintEdge ></a></td><td class="desc"></td></tr>
|
|
281
281
|
<tr id="row_73_"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_73_" class="arrow" onclick="toggleFolder('73_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1GenericNode.html" target="_self">SVF::GenericNode< DCHNode, DCHEdge ></a></td><td class="desc"></td></tr>
|
|
282
282
|
<tr id="row_73_0_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1DCHNode.html" target="_self">SVF::DCHNode</a></td><td class="desc"></td></tr>
|
|
283
283
|
<tr id="row_74_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1SCCDetection_1_1GNodeSCCInfo.html" target="_self">SVF::SCCDetection< GraphType >::GNodeSCCInfo</a></td><td class="desc"></td></tr>
|
|
@@ -422,12 +422,13 @@ $(function() {
|
|
|
422
422
|
<tr id="row_155_1_0_0_1_" class="even" style="display:none;"><td class="entry"><span style="width:80px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1AndersenWaveDiff.html" target="_self">SVF::AndersenWaveDiff</a></td><td class="desc"></td></tr>
|
|
423
423
|
<tr id="row_155_1_0_1_" class="even" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1Steensgaard.html" target="_self">SVF::Steensgaard</a></td><td class="desc"></td></tr>
|
|
424
424
|
<tr id="row_155_1_0_2_" class="even" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1TypeAnalysis.html" target="_self">SVF::TypeAnalysis</a></td><td class="desc"></td></tr>
|
|
425
|
-
<tr id="row_155_1_1_" class="even" style="display:none;"><td class="entry"><span style="width:
|
|
426
|
-
<tr id="
|
|
427
|
-
<tr id="
|
|
428
|
-
<tr id="
|
|
429
|
-
<tr id="
|
|
430
|
-
<tr id="
|
|
425
|
+
<tr id="row_155_1_1_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span id="arr_155_1_1_" class="arrow" onclick="toggleFolder('155_1_1_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1CFLBase.html" target="_self">SVF::CFLBase</a></td><td class="desc"></td></tr>
|
|
426
|
+
<tr id="row_155_1_1_0_" class="even" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1CFLAlias.html" target="_self">SVF::CFLAlias</a></td><td class="desc"></td></tr>
|
|
427
|
+
<tr id="row_155_1_1_1_" class="even" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1CFLVF.html" target="_self">SVF::CFLVF</a></td><td class="desc"></td></tr>
|
|
428
|
+
<tr id="row_155_1_2_" class="even" style="display:none;"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1FlowDDA.html" target="_self">SVF::FlowDDA</a></td><td class="desc"></td></tr>
|
|
429
|
+
<tr id="row_155_1_3_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span id="arr_155_1_3_" class="arrow" onclick="toggleFolder('155_1_3_')">►</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1FlowSensitive.html" target="_self">SVF::FlowSensitive</a></td><td class="desc"></td></tr>
|
|
430
|
+
<tr id="row_155_1_3_0_" class="even" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1FSMPTA.html" target="_self">SVF::FSMPTA</a></td><td class="desc"></td></tr>
|
|
431
|
+
<tr id="row_155_1_3_1_" class="even" style="display:none;"><td class="entry"><span style="width:64px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1VersionedFlowSensitive.html" target="_self">SVF::VersionedFlowSensitive</a></td><td class="desc"></td></tr>
|
|
431
432
|
<tr id="row_155_2_" class="even" style="display:none;"><td class="entry"><span style="width:32px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1CondPTAImpl.html" target="_self">SVF::CondPTAImpl< Cond ></a></td><td class="desc"></td></tr>
|
|
432
433
|
<tr id="row_156_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1PointsTo.html" target="_self">SVF::PointsTo</a></td><td class="desc"></td></tr>
|
|
433
434
|
<tr id="row_157_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSVF_1_1PointsTo_1_1PointsToIterator.html" target="_self">SVF::PointsTo::PointsToIterator</a></td><td class="desc"></td></tr>
|
|
@@ -66,7 +66,7 @@ $(function() {
|
|
|
66
66
|
<div class="title">mta.cpp</div> </div>
|
|
67
67
|
</div><!--header-->
|
|
68
68
|
<div class="contents">
|
|
69
|
-
<a href="mta_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="preprocessor">#include "<a class="code" href="LLVMUtil_8h.html">SVF-FE/LLVMUtil.h</a>"</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="preprocessor">#include "<a class="code" href="MTA_8h.html">MTA/MTA.h</a>"</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="preprocessor">#include "<a class="code" href="Options_8h.html">Util/Options.h</a>"</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> </div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="keyword">using namespace </span><a class="code" href="namespacellvm.html">llvm</a>;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="keyword">using namespace </span><a class="code" href="namespacestd.html">std</a>;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="keyword">using namespace </span><a class="code" href="namespaceSVF.html">SVF</a>;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> </div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="keyword">static</span> llvm::cl::opt<std::string> <a class="code" href="mta_8cpp.html#a139199e1f33675df72b018c31e0be35c">InputFilename</a>(llvm::cl::Positional,</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>  llvm::cl::desc(<span class="stringliteral">"<input bitcode>"</span>), llvm::cl::init(<span class="stringliteral">"-"</span>));</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> </div><div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="mta_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627"> 12</a></span> <span class="keywordtype">int</span> <a class="code" href="mta_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> ** argv)</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> {</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> </div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>  <span class="keywordtype">int</span> arg_num = 0;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>  <span class="keywordtype">char</span> **arg_value = <span class="keyword">new</span> <span class="keywordtype">char</span>*[argc];</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>  std::vector<std::string> moduleNameVec;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>  <a class="code" href="namespaceSVF_1_1LLVMUtil.html#accdd44093d6d145dc92edeaaff3f5732">LLVMUtil::processArguments</a>(argc, argv, arg_num, arg_value, moduleNameVec);</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>  cl::ParseCommandLineOptions(arg_num, arg_value,</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>  <span class="stringliteral">"MTA Analysis\n"</span>);</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  <span class="keywordflow">if</span> (Options::WriteAnder == <span class="stringliteral">"ir_annotator"</span>)</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>  {</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>  LLVMModuleSet::getLLVMModuleSet()->preProcessBCs(moduleNameVec);</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  }</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* svfModule = LLVMModuleSet::getLLVMModuleSet()->buildSVFModule(moduleNameVec);</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  svfModule-><a class="code" href="classSVF_1_1SVFModule.html#aa03ab5272652290f30870c6e2d053d98">buildSymbolTableInfo</a>();</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> </div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  <a class="code" href="classSVF_1_1MTA.html">MTA</a> *mta = <span class="keyword">new</span> <a class="code" href="classSVF_1_1MTA.html">MTA</a>();</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  mta-><a class="code" href="classSVF_1_1MTA.html#a9c4b9eb2c04de305a30114019c3b1dae">runOnModule</a>(svfModule);</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> }</div><div class="ttc" id="namespacellvm_html"><div class="ttname"><a href="namespacellvm.html">llvm</a></div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#
|
|
69
|
+
<a href="mta_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="preprocessor">#include "<a class="code" href="LLVMUtil_8h.html">SVF-FE/LLVMUtil.h</a>"</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="preprocessor">#include "<a class="code" href="MTA_8h.html">MTA/MTA.h</a>"</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="preprocessor">#include "<a class="code" href="Options_8h.html">Util/Options.h</a>"</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> </div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="keyword">using namespace </span><a class="code" href="namespacellvm.html">llvm</a>;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="keyword">using namespace </span><a class="code" href="namespacestd.html">std</a>;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="keyword">using namespace </span><a class="code" href="namespaceSVF.html">SVF</a>;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> </div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="keyword">static</span> llvm::cl::opt<std::string> <a class="code" href="mta_8cpp.html#a139199e1f33675df72b018c31e0be35c">InputFilename</a>(llvm::cl::Positional,</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>  llvm::cl::desc(<span class="stringliteral">"<input bitcode>"</span>), llvm::cl::init(<span class="stringliteral">"-"</span>));</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> </div><div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="mta_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627"> 12</a></span> <span class="keywordtype">int</span> <a class="code" href="mta_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> ** argv)</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> {</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> </div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>  <span class="keywordtype">int</span> arg_num = 0;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>  <span class="keywordtype">char</span> **arg_value = <span class="keyword">new</span> <span class="keywordtype">char</span>*[argc];</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>  std::vector<std::string> moduleNameVec;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>  <a class="code" href="namespaceSVF_1_1LLVMUtil.html#accdd44093d6d145dc92edeaaff3f5732">LLVMUtil::processArguments</a>(argc, argv, arg_num, arg_value, moduleNameVec);</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>  cl::ParseCommandLineOptions(arg_num, arg_value,</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>  <span class="stringliteral">"MTA Analysis\n"</span>);</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>  <span class="keywordflow">if</span> (Options::WriteAnder == <span class="stringliteral">"ir_annotator"</span>)</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>  {</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>  LLVMModuleSet::getLLVMModuleSet()->preProcessBCs(moduleNameVec);</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  }</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* svfModule = LLVMModuleSet::getLLVMModuleSet()->buildSVFModule(moduleNameVec);</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  svfModule-><a class="code" href="classSVF_1_1SVFModule.html#aa03ab5272652290f30870c6e2d053d98">buildSymbolTableInfo</a>();</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> </div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  <a class="code" href="classSVF_1_1MTA.html">MTA</a> *mta = <span class="keyword">new</span> <a class="code" href="classSVF_1_1MTA.html">MTA</a>();</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  mta-><a class="code" href="classSVF_1_1MTA.html#a9c4b9eb2c04de305a30114019c3b1dae">runOnModule</a>(svfModule);</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> }</div><div class="ttc" id="namespacellvm_html"><div class="ttname"><a href="namespacellvm.html">llvm</a></div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#l00123">CFLGraph.h:123</a></div></div>
|
|
70
70
|
<div class="ttc" id="mta_8cpp_html_a3c04138a5bfe5d72780bb7e82a18e627"><div class="ttname"><a href="mta_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div><div class="ttdeci">int main(int argc, char **argv)</div><div class="ttdef"><b>Definition:</b> <a href="mta_8cpp_source.html#l00012">mta.cpp:12</a></div></div>
|
|
71
71
|
<div class="ttc" id="namespacestd_html"><div class="ttname"><a href="namespacestd.html">std</a></div></div>
|
|
72
72
|
<div class="ttc" id="classSVF_1_1SVFModule_html"><div class="ttname"><a href="classSVF_1_1SVFModule.html">SVF::SVFModule</a></div><div class="ttdef"><b>Definition:</b> <a href="SVFModule_8h_source.html#l00041">SVFModule.h:41</a></div></div>
|
|
@@ -155,6 +155,8 @@ Classes</h2></td></tr>
|
|
|
155
155
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
156
156
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLAlias.html">CFLAlias</a></td></tr>
|
|
157
157
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
158
|
+
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLBase.html">CFLBase</a></td></tr>
|
|
159
|
+
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
158
160
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLEdge.html">CFLEdge</a></td></tr>
|
|
159
161
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
160
162
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLFIFOWorkList.html">CFLFIFOWorkList</a></td></tr>
|
|
@@ -68,7 +68,7 @@ $(function() {
|
|
|
68
68
|
<div class="contents">
|
|
69
69
|
<a href="saber_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">//===- saber.cpp -- Source-sink bug checker------------------------------------//</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">//</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// SVF: Static Value-Flow Analysis</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">//</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// Copyright (C) <2013-2017> <Yulei Sui></span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">//</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> </div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">// This program is free software: you can redistribute it and/or modify</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">// it under the terms of the GNU General Public License as published by</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">// the Free Software Foundation, either version 3 of the License, or</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">// (at your option) any later version.</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> </div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">// but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment">// GNU General Public License for more details.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> </div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment">// You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">// along with this program. If not, see <http://www.gnu.org/licenses/>.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment">//</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">//===-----------------------------------------------------------------------===//</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">/*</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment"> // Saber: Software Bug Check.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="comment"> //</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="comment"> // Author: Yulei Sui,</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment"> */</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="LLVMUtil_8h.html">SVF-FE/LLVMUtil.h</a>"</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="LeakChecker_8h.html">SABER/LeakChecker.h</a>"</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="FileChecker_8h.html">SABER/FileChecker.h</a>"</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "<a class="code" href="DoubleFreeChecker_8h.html">SABER/DoubleFreeChecker.h</a>"</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "<a class="code" href="Options_8h.html">Util/Options.h</a>"</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include "<a class="code" href="Z3Expr_8h.html">Util/Z3Expr.h</a>"</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keyword">using namespace </span><a class="code" href="namespacellvm.html">llvm</a>;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">using namespace </span><a class="code" href="namespaceSVF.html">SVF</a>;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keyword">static</span> llvm::cl::opt<std::string> <a class="code" href="saber_8cpp.html#a2d332c504284f0bc181289ee67479845">InputFilename</a>(cl::Positional,</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  llvm::cl::desc(<span class="stringliteral">"<input bitcode>"</span>), llvm::cl::init(<span class="stringliteral">"-"</span>));</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keyword">static</span> llvm::cl::opt<bool> <a class="code" href="saber_8cpp.html#a3bebf1fb890054c49ae16f9706fa38d2">LEAKCHECKER</a>(<span class="stringliteral">"leak"</span>, llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  llvm::cl::desc(<span class="stringliteral">"Memory Leak Detection"</span>));</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keyword">static</span> llvm::cl::opt<bool> <a class="code" href="saber_8cpp.html#ae054770c30aa9b9ef72d5bc84084b472">FILECHECKER</a>(<span class="stringliteral">"fileck"</span>, llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  llvm::cl::desc(<span class="stringliteral">"File Open/Close Detection"</span>));</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">static</span> llvm::cl::opt<bool> <a class="code" href="saber_8cpp.html#ae783b2330e99490ef5d366605d1098cf">DFREECHECKER</a>(<span class="stringliteral">"dfree"</span>, llvm::cl::init(<span class="keyword">false</span>),</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  llvm::cl::desc(<span class="stringliteral">"Double Free Detection"</span>));</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="saber_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627"> 52</a></span> <span class="keywordtype">int</span> <a class="code" href="saber_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> ** argv)</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> {</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keywordtype">int</span> arg_num = 0;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="keywordtype">char</span> **arg_value = <span class="keyword">new</span> <span class="keywordtype">char</span>*[argc];</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  std::vector<std::string> moduleNameVec;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <a class="code" href="namespaceSVF_1_1LLVMUtil.html#accdd44093d6d145dc92edeaaff3f5732">LLVMUtil::processArguments</a>(argc, argv, arg_num, arg_value, moduleNameVec);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  cl::ParseCommandLineOptions(arg_num, arg_value,</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="stringliteral">"Source-Sink Bug Detector\n"</span>);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="keywordflow">if</span> (Options::WriteAnder == <span class="stringliteral">"ir_annotator"</span>)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  {</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  LLVMModuleSet::getLLVMModuleSet()->preProcessBCs(moduleNameVec);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  }</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <a class="code" href="classSVF_1_1SVFModule.html">SVFModule</a>* svfModule = LLVMModuleSet::getLLVMModuleSet()->buildSVFModule(moduleNameVec);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  svfModule-><a class="code" href="classSVF_1_1SVFModule.html#aa03ab5272652290f30870c6e2d053d98">buildSymbolTableInfo</a>();</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <a class="code" href="classSVF_1_1LeakChecker.html">LeakChecker</a> *saber;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">if</span>(<a class="code" href="saber_8cpp.html#a3bebf1fb890054c49ae16f9706fa38d2">LEAKCHECKER</a>)</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  saber = <span class="keyword">new</span> <a class="code" href="classSVF_1_1LeakChecker.html">LeakChecker</a>();</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="saber_8cpp.html#ae054770c30aa9b9ef72d5bc84084b472">FILECHECKER</a>)</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  saber = <span class="keyword">new</span> <a class="code" href="classSVF_1_1FileChecker.html">FileChecker</a>();</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="saber_8cpp.html#ae783b2330e99490ef5d366605d1098cf">DFREECHECKER</a>)</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  saber = <span class="keyword">new</span> <a class="code" href="classSVF_1_1DoubleFreeChecker.html">DoubleFreeChecker</a>();</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="keywordflow">else</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  saber = <span class="keyword">new</span> <a class="code" href="classSVF_1_1LeakChecker.html">LeakChecker</a>(); <span class="comment">// if no checker is specified, we use leak checker as the default one.</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  saber-><a class="code" href="classSVF_1_1LeakChecker.html#ab3bb79d88d73c8b881d714921e7b5e12">runOnModule</a>(svfModule);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span> </div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span> }</div><div class="ttc" id="classSVF_1_1LeakChecker_html"><div class="ttname"><a href="classSVF_1_1LeakChecker.html">SVF::LeakChecker</a></div><div class="ttdef"><b>Definition:</b> <a href="LeakChecker_8h_source.html#l00042">LeakChecker.h:42</a></div></div>
|
|
70
70
|
<div class="ttc" id="classSVF_1_1DoubleFreeChecker_html"><div class="ttname"><a href="classSVF_1_1DoubleFreeChecker.html">SVF::DoubleFreeChecker</a></div><div class="ttdef"><b>Definition:</b> <a href="DoubleFreeChecker_8h_source.html#l00042">DoubleFreeChecker.h:42</a></div></div>
|
|
71
|
-
<div class="ttc" id="namespacellvm_html"><div class="ttname"><a href="namespacellvm.html">llvm</a></div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#
|
|
71
|
+
<div class="ttc" id="namespacellvm_html"><div class="ttname"><a href="namespacellvm.html">llvm</a></div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8h_source.html#l00123">CFLGraph.h:123</a></div></div>
|
|
72
72
|
<div class="ttc" id="saber_8cpp_html_a2d332c504284f0bc181289ee67479845"><div class="ttname"><a href="saber_8cpp.html#a2d332c504284f0bc181289ee67479845">InputFilename</a></div><div class="ttdeci">static llvm::cl::opt< std::string > InputFilename(cl::Positional, llvm::cl::desc("<input bitcode>"), llvm::cl::init("-"))</div></div>
|
|
73
73
|
<div class="ttc" id="FileChecker_8h_html"><div class="ttname"><a href="FileChecker_8h.html">FileChecker.h</a></div></div>
|
|
74
74
|
<div class="ttc" id="saber_8cpp_html_a3c04138a5bfe5d72780bb7e82a18e627"><div class="ttname"><a href="saber_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div><div class="ttdeci">int main(int argc, char **argv)</div><div class="ttdef"><b>Definition:</b> <a href="saber_8cpp_source.html#l00052">saber.cpp:52</a></div></div>
|