svf-tools 1.0.908 → 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 +1549 -1576
- package/SVF-doxygen/html/AbstractInterpretation_8h_source.html +68 -75
- 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 +15 -15
- 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 +12 -17
- package/SVF-doxygen/html/ae_8cpp_source.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1AEStat.html +115 -115
- package/SVF-doxygen/html/classSVF_1_1AbstractInterpretation-members.html +7 -9
- package/SVF-doxygen/html/classSVF_1_1AbstractInterpretation.html +1435 -1521
- 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 +7 -9
- package/SVF-doxygen/html/classSVF_1_1BufOverflowChecker.html +20 -10
- 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-members.html +22 -24
- package/SVF-doxygen/html/classSVF_1_1SVFIR2AbsState.html +23 -91
- package/SVF-doxygen/html/classSymblicAbstractionTest.html +2 -2
- package/SVF-doxygen/html/functions.html +6 -9
- package/SVF-doxygen/html/functions_a.html +9 -3
- package/SVF-doxygen/html/functions_f.html +3 -3
- package/SVF-doxygen/html/functions_func.html +1 -1
- package/SVF-doxygen/html/functions_func_g.html +9 -9
- package/SVF-doxygen/html/functions_func_i.html +7 -13
- package/SVF-doxygen/html/functions_func_p.html +3 -3
- package/SVF-doxygen/html/functions_g.html +10 -10
- package/SVF-doxygen/html/functions_i.html +12 -18
- package/SVF-doxygen/html/functions_l.html +3 -9
- package/SVF-doxygen/html/functions_o.html +17 -17
- package/SVF-doxygen/html/functions_p.html +18 -22
- package/SVF-doxygen/html/functions_r.html +1 -1
- package/SVF-doxygen/html/functions_s.html +12 -14
- package/SVF-doxygen/html/functions_t.html +2 -2
- 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 -9
- package/SVF-doxygen/html/functions_w.html +1 -1
- package/SVF-doxygen/html/search/all_0.js +167 -168
- package/SVF-doxygen/html/search/all_1.js +504 -502
- package/SVF-doxygen/html/search/all_10.js +326 -326
- package/SVF-doxygen/html/search/all_11.js +227 -227
- package/SVF-doxygen/html/search/all_12.js +562 -562
- package/SVF-doxygen/html/search/all_13.js +186 -186
- package/SVF-doxygen/html/search/all_14.js +74 -74
- package/SVF-doxygen/html/search/all_15.js +175 -175
- package/SVF-doxygen/html/search/all_16.js +77 -77
- package/SVF-doxygen/html/search/all_17.js +1 -1
- package/SVF-doxygen/html/search/all_18.js +1 -1
- package/SVF-doxygen/html/search/all_19.js +27 -27
- package/SVF-doxygen/html/search/all_1a.js +174 -174
- 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 +623 -625
- 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 +111 -113
- package/SVF-doxygen/html/search/all_d.js +204 -204
- package/SVF-doxygen/html/search/all_e.js +207 -207
- package/SVF-doxygen/html/search/all_f.js +122 -122
- package/SVF-doxygen/html/search/classes_0.js +29 -29
- package/SVF-doxygen/html/search/classes_1.js +11 -11
- package/SVF-doxygen/html/search/classes_10.js +71 -71
- package/SVF-doxygen/html/search/classes_11.js +14 -14
- package/SVF-doxygen/html/search/classes_12.js +2 -2
- package/SVF-doxygen/html/search/classes_13.js +10 -10
- package/SVF-doxygen/html/search/classes_14.js +19 -19
- package/SVF-doxygen/html/search/classes_15.js +1 -1
- package/SVF-doxygen/html/search/classes_2.js +72 -72
- package/SVF-doxygen/html/search/classes_3.js +35 -35
- package/SVF-doxygen/html/search/classes_4.js +7 -7
- package/SVF-doxygen/html/search/classes_5.js +28 -28
- package/SVF-doxygen/html/search/classes_6.js +98 -98
- package/SVF-doxygen/html/search/classes_7.js +33 -33
- package/SVF-doxygen/html/search/classes_8.js +57 -57
- package/SVF-doxygen/html/search/classes_9.js +1 -1
- package/SVF-doxygen/html/search/classes_a.js +12 -12
- package/SVF-doxygen/html/search/classes_b.js +29 -29
- package/SVF-doxygen/html/search/classes_c.js +6 -6
- package/SVF-doxygen/html/search/classes_d.js +19 -19
- package/SVF-doxygen/html/search/classes_e.js +36 -36
- package/SVF-doxygen/html/search/classes_f.js +25 -25
- package/SVF-doxygen/html/search/defines_0.js +3 -3
- package/SVF-doxygen/html/search/defines_1.js +3 -3
- package/SVF-doxygen/html/search/defines_10.js +2 -2
- package/SVF-doxygen/html/search/defines_2.js +30 -30
- package/SVF-doxygen/html/search/defines_3.js +20 -20
- package/SVF-doxygen/html/search/defines_4.js +3 -3
- package/SVF-doxygen/html/search/defines_5.js +4 -4
- package/SVF-doxygen/html/search/defines_6.js +2 -2
- package/SVF-doxygen/html/search/defines_7.js +5 -5
- package/SVF-doxygen/html/search/defines_8.js +11 -11
- package/SVF-doxygen/html/search/defines_9.js +9 -9
- package/SVF-doxygen/html/search/defines_a.js +2 -2
- package/SVF-doxygen/html/search/defines_b.js +1 -1
- package/SVF-doxygen/html/search/defines_c.js +3 -3
- package/SVF-doxygen/html/search/defines_d.js +2 -2
- package/SVF-doxygen/html/search/defines_e.js +8 -8
- package/SVF-doxygen/html/search/defines_f.js +4 -4
- package/SVF-doxygen/html/search/enums_0.js +3 -3
- package/SVF-doxygen/html/search/enums_1.js +2 -2
- package/SVF-doxygen/html/search/enums_10.js +1 -1
- package/SVF-doxygen/html/search/enums_11.js +1 -1
- package/SVF-doxygen/html/search/enums_2.js +9 -9
- package/SVF-doxygen/html/search/enums_3.js +2 -2
- package/SVF-doxygen/html/search/enums_4.js +3 -3
- package/SVF-doxygen/html/search/enums_5.js +1 -1
- package/SVF-doxygen/html/search/enums_6.js +2 -2
- package/SVF-doxygen/html/search/enums_7.js +2 -2
- package/SVF-doxygen/html/search/enums_8.js +4 -4
- package/SVF-doxygen/html/search/enums_9.js +1 -1
- package/SVF-doxygen/html/search/enums_a.js +1 -1
- package/SVF-doxygen/html/search/enums_b.js +7 -7
- package/SVF-doxygen/html/search/enums_c.js +1 -1
- package/SVF-doxygen/html/search/enums_d.js +4 -4
- package/SVF-doxygen/html/search/enums_e.js +2 -2
- package/SVF-doxygen/html/search/enums_f.js +4 -4
- package/SVF-doxygen/html/search/enumvalues_0.js +15 -15
- package/SVF-doxygen/html/search/enumvalues_1.js +16 -16
- package/SVF-doxygen/html/search/enumvalues_10.js +36 -36
- package/SVF-doxygen/html/search/enumvalues_11.js +6 -6
- package/SVF-doxygen/html/search/enumvalues_12.js +10 -10
- package/SVF-doxygen/html/search/enumvalues_13.js +1 -1
- package/SVF-doxygen/html/search/enumvalues_14.js +1 -1
- package/SVF-doxygen/html/search/enumvalues_15.js +4 -4
- package/SVF-doxygen/html/search/enumvalues_2.js +36 -36
- package/SVF-doxygen/html/search/enumvalues_3.js +13 -13
- package/SVF-doxygen/html/search/enumvalues_4.js +2 -2
- package/SVF-doxygen/html/search/enumvalues_5.js +50 -50
- package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
- package/SVF-doxygen/html/search/enumvalues_7.js +8 -8
- package/SVF-doxygen/html/search/enumvalues_8.js +24 -24
- package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
- package/SVF-doxygen/html/search/enumvalues_a.js +17 -17
- package/SVF-doxygen/html/search/enumvalues_b.js +11 -11
- package/SVF-doxygen/html/search/enumvalues_c.js +5 -5
- package/SVF-doxygen/html/search/enumvalues_d.js +19 -19
- package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
- package/SVF-doxygen/html/search/enumvalues_f.js +48 -48
- package/SVF-doxygen/html/search/files_0.js +18 -18
- package/SVF-doxygen/html/search/files_1.js +9 -9
- package/SVF-doxygen/html/search/files_10.js +8 -8
- package/SVF-doxygen/html/search/files_11.js +8 -8
- package/SVF-doxygen/html/search/files_12.js +2 -2
- package/SVF-doxygen/html/search/files_2.js +51 -51
- package/SVF-doxygen/html/search/files_3.js +14 -14
- package/SVF-doxygen/html/search/files_4.js +3 -3
- package/SVF-doxygen/html/search/files_5.js +13 -13
- package/SVF-doxygen/html/search/files_6.js +10 -10
- package/SVF-doxygen/html/search/files_7.js +15 -15
- package/SVF-doxygen/html/search/files_8.js +13 -13
- package/SVF-doxygen/html/search/files_9.js +18 -18
- package/SVF-doxygen/html/search/files_a.js +3 -3
- package/SVF-doxygen/html/search/files_b.js +4 -4
- package/SVF-doxygen/html/search/files_c.js +20 -20
- package/SVF-doxygen/html/search/files_d.js +4 -4
- package/SVF-doxygen/html/search/files_e.js +57 -57
- package/SVF-doxygen/html/search/files_f.js +8 -8
- package/SVF-doxygen/html/search/functions_0.js +13 -13
- package/SVF-doxygen/html/search/functions_1.js +366 -366
- package/SVF-doxygen/html/search/functions_10.js +140 -140
- package/SVF-doxygen/html/search/functions_11.js +140 -140
- package/SVF-doxygen/html/search/functions_12.js +293 -293
- package/SVF-doxygen/html/search/functions_13.js +52 -52
- package/SVF-doxygen/html/search/functions_14.js +41 -41
- package/SVF-doxygen/html/search/functions_15.js +70 -70
- package/SVF-doxygen/html/search/functions_16.js +38 -38
- package/SVF-doxygen/html/search/functions_17.js +3 -3
- package/SVF-doxygen/html/search/functions_18.js +174 -174
- package/SVF-doxygen/html/search/functions_2.js +92 -92
- package/SVF-doxygen/html/search/functions_3.js +257 -257
- package/SVF-doxygen/html/search/functions_4.js +85 -85
- package/SVF-doxygen/html/search/functions_5.js +54 -54
- package/SVF-doxygen/html/search/functions_6.js +65 -65
- package/SVF-doxygen/html/search/functions_7.js +857 -857
- package/SVF-doxygen/html/search/functions_8.js +176 -176
- package/SVF-doxygen/html/search/functions_9.js +436 -438
- package/SVF-doxygen/html/search/functions_a.js +30 -30
- package/SVF-doxygen/html/search/functions_b.js +2 -2
- package/SVF-doxygen/html/search/functions_c.js +22 -22
- package/SVF-doxygen/html/search/functions_d.js +81 -81
- package/SVF-doxygen/html/search/functions_e.js +34 -34
- package/SVF-doxygen/html/search/functions_f.js +58 -58
- package/SVF-doxygen/html/search/namespaces_0.js +1 -1
- package/SVF-doxygen/html/search/namespaces_1.js +7 -7
- package/SVF-doxygen/html/search/related_0.js +4 -4
- package/SVF-doxygen/html/search/related_1.js +2 -2
- package/SVF-doxygen/html/search/related_2.js +2 -2
- package/SVF-doxygen/html/search/related_3.js +2 -2
- package/SVF-doxygen/html/search/related_4.js +2 -2
- package/SVF-doxygen/html/search/related_5.js +1 -1
- package/SVF-doxygen/html/search/related_6.js +2 -2
- package/SVF-doxygen/html/search/related_7.js +5 -5
- package/SVF-doxygen/html/search/related_8.js +2 -2
- package/SVF-doxygen/html/search/related_9.js +4 -4
- package/SVF-doxygen/html/search/related_a.js +19 -19
- package/SVF-doxygen/html/search/related_b.js +4 -4
- package/SVF-doxygen/html/search/related_c.js +2 -2
- package/SVF-doxygen/html/search/related_d.js +11 -11
- package/SVF-doxygen/html/search/related_e.js +2 -2
- package/SVF-doxygen/html/search/related_f.js +2 -2
- package/SVF-doxygen/html/search/typedefs_0.js +20 -18
- package/SVF-doxygen/html/search/typedefs_1.js +27 -27
- package/SVF-doxygen/html/search/typedefs_10.js +65 -65
- package/SVF-doxygen/html/search/typedefs_11.js +12 -12
- package/SVF-doxygen/html/search/typedefs_12.js +13 -13
- package/SVF-doxygen/html/search/typedefs_13.js +40 -40
- package/SVF-doxygen/html/search/typedefs_14.js +11 -11
- 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 +28 -30
- package/SVF-doxygen/html/search/typedefs_b.js +29 -29
- package/SVF-doxygen/html/search/typedefs_c.js +41 -41
- package/SVF-doxygen/html/search/typedefs_d.js +15 -15
- package/SVF-doxygen/html/search/typedefs_e.js +52 -52
- package/SVF-doxygen/html/search/typedefs_f.js +14 -14
- package/SVF-doxygen/html/search/variables_0.js +170 -171
- package/SVF-doxygen/html/search/variables_1.js +78 -78
- package/SVF-doxygen/html/search/variables_10.js +98 -98
- package/SVF-doxygen/html/search/variables_11.js +47 -47
- package/SVF-doxygen/html/search/variables_12.js +93 -93
- package/SVF-doxygen/html/search/variables_13.js +76 -76
- package/SVF-doxygen/html/search/variables_14.js +14 -14
- package/SVF-doxygen/html/search/variables_15.js +49 -49
- package/SVF-doxygen/html/search/variables_16.js +11 -11
- package/SVF-doxygen/html/search/variables_17.js +1 -1
- package/SVF-doxygen/html/search/variables_18.js +17 -17
- package/SVF-doxygen/html/search/variables_2.js +40 -40
- package/SVF-doxygen/html/search/variables_3.js +143 -143
- package/SVF-doxygen/html/search/variables_4.js +51 -51
- package/SVF-doxygen/html/search/variables_5.js +39 -39
- package/SVF-doxygen/html/search/variables_6.js +66 -66
- package/SVF-doxygen/html/search/variables_7.js +32 -32
- package/SVF-doxygen/html/search/variables_8.js +8 -8
- package/SVF-doxygen/html/search/variables_9.js +80 -80
- package/SVF-doxygen/html/search/variables_a.js +4 -4
- package/SVF-doxygen/html/search/variables_b.js +10 -10
- package/SVF-doxygen/html/search/variables_c.js +44 -44
- package/SVF-doxygen/html/search/variables_d.js +58 -58
- package/SVF-doxygen/html/search/variables_e.js +123 -123
- package/SVF-doxygen/html/search/variables_f.js +31 -31
- 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 +4 -9
- package/svf/include/AE/Svfexe/SVFIR2AbsState.h +0 -3
- 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 -27
- package/svf/lib/AE/Svfexe/SVFIR2AbsState.cpp +8 -8
|
@@ -84,16 +84,16 @@ $(function() {
|
|
|
84
84
|
Public Types</h2></td></tr>
|
|
85
85
|
<tr class="memitem:ab8e7d112c380f0c3fe66b487af90c03e"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>, <a class="el" href="structSVF_1_1AbstractValue.html">AbstractValue</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AbstractState.html#ab8e7d112c380f0c3fe66b487af90c03e">VarToAbsValMap</a></td></tr>
|
|
86
86
|
<tr class="separator:ab8e7d112c380f0c3fe66b487af90c03e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
87
|
-
<tr class="memitem:
|
|
88
|
-
<tr class="separator:
|
|
87
|
+
<tr class="memitem:abac0c56904bd77bcd09fd65de51c25c9"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1AbstractState.html#ab8e7d112c380f0c3fe66b487af90c03e">VarToAbsValMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AbstractState.html#abac0c56904bd77bcd09fd65de51c25c9">AddrToAbsValMap</a></td></tr>
|
|
88
|
+
<tr class="separator:abac0c56904bd77bcd09fd65de51c25c9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
89
89
|
</table><table class="memberdecls">
|
|
90
90
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
91
91
|
Public Member Functions</h2></td></tr>
|
|
92
92
|
<tr class="memitem:aac4048e1e39f2dbc16f20b7ffe61af5e"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AbstractState.html#aac4048e1e39f2dbc16f20b7ffe61af5e">AbstractState</a> ()</td></tr>
|
|
93
93
|
<tr class="memdesc:aac4048e1e39f2dbc16f20b7ffe61af5e"><td class="mdescLeft"> </td><td class="mdescRight">default constructor <a href="classSVF_1_1AbstractState.html#aac4048e1e39f2dbc16f20b7ffe61af5e">More...</a><br /></td></tr>
|
|
94
94
|
<tr class="separator:aac4048e1e39f2dbc16f20b7ffe61af5e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
95
|
-
<tr class="memitem:
|
|
96
|
-
<tr class="separator:
|
|
95
|
+
<tr class="memitem:a9d21fa95af8171b8a9b748a655f0317c"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AbstractState.html#a9d21fa95af8171b8a9b748a655f0317c">AbstractState</a> (<a class="el" href="classSVF_1_1AbstractState.html#ab8e7d112c380f0c3fe66b487af90c03e">VarToAbsValMap</a> &_varToValMap, <a class="el" href="classSVF_1_1AbstractState.html#abac0c56904bd77bcd09fd65de51c25c9">AddrToAbsValMap</a> &_locToValMap)</td></tr>
|
|
96
|
+
<tr class="separator:a9d21fa95af8171b8a9b748a655f0317c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
97
97
|
<tr class="memitem:a4b2af0674aa1fd6689dc2660c4e7e812"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AbstractState.html#a4b2af0674aa1fd6689dc2660c4e7e812">AbstractState</a> (const <a class="el" href="classSVF_1_1AbstractState.html">AbstractState</a> &rhs)</td></tr>
|
|
98
98
|
<tr class="memdesc:a4b2af0674aa1fd6689dc2660c4e7e812"><td class="mdescLeft"> </td><td class="mdescRight">copy constructor <a href="classSVF_1_1AbstractState.html#a4b2af0674aa1fd6689dc2660c4e7e812">More...</a><br /></td></tr>
|
|
99
99
|
<tr class="separator:a4b2af0674aa1fd6689dc2660c4e7e812"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -140,9 +140,9 @@ Public Member Functions</h2></td></tr>
|
|
|
140
140
|
<tr class="memitem:a4e4525823fd31c718216c698ed6e0a06"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1AbstractState.html#ab8e7d112c380f0c3fe66b487af90c03e">VarToAbsValMap</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AbstractState.html#a4e4525823fd31c718216c698ed6e0a06">getVarToVal</a> () const</td></tr>
|
|
141
141
|
<tr class="memdesc:a4e4525823fd31c718216c698ed6e0a06"><td class="mdescLeft"> </td><td class="mdescRight">get var2val map <a href="classSVF_1_1AbstractState.html#a4e4525823fd31c718216c698ed6e0a06">More...</a><br /></td></tr>
|
|
142
142
|
<tr class="separator:a4e4525823fd31c718216c698ed6e0a06"><td class="memSeparator" colspan="2"> </td></tr>
|
|
143
|
-
<tr class="memitem:
|
|
144
|
-
<tr class="memdesc:
|
|
145
|
-
<tr class="separator:
|
|
143
|
+
<tr class="memitem:ab8d9bf4a917a4691037ae08e2b634624"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1AbstractState.html#abac0c56904bd77bcd09fd65de51c25c9">AddrToAbsValMap</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AbstractState.html#ab8d9bf4a917a4691037ae08e2b634624">getLocToVal</a> () const</td></tr>
|
|
144
|
+
<tr class="memdesc:ab8d9bf4a917a4691037ae08e2b634624"><td class="mdescLeft"> </td><td class="mdescRight">get loc2val map <a href="classSVF_1_1AbstractState.html#ab8d9bf4a917a4691037ae08e2b634624">More...</a><br /></td></tr>
|
|
145
|
+
<tr class="separator:ab8d9bf4a917a4691037ae08e2b634624"><td class="memSeparator" colspan="2"> </td></tr>
|
|
146
146
|
<tr class="memitem:afd37c4419cfc79b6765fa243fcbea573"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1AbstractState.html">AbstractState</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AbstractState.html#afd37c4419cfc79b6765fa243fcbea573">widening</a> (const <a class="el" href="classSVF_1_1AbstractState.html">AbstractState</a> &other)</td></tr>
|
|
147
147
|
<tr class="memdesc:afd37c4419cfc79b6765fa243fcbea573"><td class="mdescLeft"> </td><td class="mdescRight">domain widen with other, and return the widened domain <a href="classSVF_1_1AbstractState.html#afd37c4419cfc79b6765fa243fcbea573">More...</a><br /></td></tr>
|
|
148
148
|
<tr class="separator:afd37c4419cfc79b6765fa243fcbea573"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -221,9 +221,9 @@ Protected Attributes</h2></td></tr>
|
|
|
221
221
|
<tr class="memitem:a6a49c75fb6b35159dcf1763b4484d335"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1AbstractState.html#ab8e7d112c380f0c3fe66b487af90c03e">VarToAbsValMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a></td></tr>
|
|
222
222
|
<tr class="memdesc:a6a49c75fb6b35159dcf1763b4484d335"><td class="mdescLeft"> </td><td class="mdescRight">Map a variable (symbol) to its abstract value. <a href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">More...</a><br /></td></tr>
|
|
223
223
|
<tr class="separator:a6a49c75fb6b35159dcf1763b4484d335"><td class="memSeparator" colspan="2"> </td></tr>
|
|
224
|
-
<tr class="memitem:
|
|
225
|
-
<tr class="memdesc:
|
|
226
|
-
<tr class="separator:
|
|
224
|
+
<tr class="memitem:a816695606ef796ce97c42ac4053de47e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1AbstractState.html#abac0c56904bd77bcd09fd65de51c25c9">AddrToAbsValMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a></td></tr>
|
|
225
|
+
<tr class="memdesc:a816695606ef796ce97c42ac4053de47e"><td class="mdescLeft"> </td><td class="mdescRight">Map a memory address to its stored abstract value. <a href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">More...</a><br /></td></tr>
|
|
226
|
+
<tr class="separator:a816695606ef796ce97c42ac4053de47e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
227
227
|
</table><table class="memberdecls">
|
|
228
228
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
|
|
229
229
|
Friends</h2></td></tr>
|
|
@@ -236,14 +236,14 @@ Friends</h2></td></tr>
|
|
|
236
236
|
<div class="textblock">
|
|
237
237
|
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00054">54</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
238
238
|
</div><h2 class="groupheader">Member Typedef Documentation</h2>
|
|
239
|
-
<a id="
|
|
240
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
239
|
+
<a id="abac0c56904bd77bcd09fd65de51c25c9"></a>
|
|
240
|
+
<h2 class="memtitle"><span class="permalink"><a href="#abac0c56904bd77bcd09fd65de51c25c9">◆ </a></span>AddrToAbsValMap</h2>
|
|
241
241
|
|
|
242
242
|
<div class="memitem">
|
|
243
243
|
<div class="memproto">
|
|
244
244
|
<table class="memname">
|
|
245
245
|
<tr>
|
|
246
|
-
<td class="memname">typedef <a class="el" href="classSVF_1_1AbstractState.html#ab8e7d112c380f0c3fe66b487af90c03e">VarToAbsValMap</a> <a class="el" href="classSVF_1_1AbstractState.html#
|
|
246
|
+
<td class="memname">typedef <a class="el" href="classSVF_1_1AbstractState.html#ab8e7d112c380f0c3fe66b487af90c03e">VarToAbsValMap</a> <a class="el" href="classSVF_1_1AbstractState.html#abac0c56904bd77bcd09fd65de51c25c9">SVF::AbstractState::AddrToAbsValMap</a></td>
|
|
247
247
|
</tr>
|
|
248
248
|
</table>
|
|
249
249
|
</div><div class="memdoc">
|
|
@@ -300,8 +300,8 @@ Friends</h2></td></tr>
|
|
|
300
300
|
</div><!-- fragment -->
|
|
301
301
|
</div>
|
|
302
302
|
</div>
|
|
303
|
-
<a id="
|
|
304
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
303
|
+
<a id="a9d21fa95af8171b8a9b748a655f0317c"></a>
|
|
304
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a9d21fa95af8171b8a9b748a655f0317c">◆ </a></span>AbstractState() <span class="overload">[2/4]</span></h2>
|
|
305
305
|
|
|
306
306
|
<div class="memitem">
|
|
307
307
|
<div class="memproto">
|
|
@@ -318,7 +318,7 @@ Friends</h2></td></tr>
|
|
|
318
318
|
<tr>
|
|
319
319
|
<td class="paramkey"></td>
|
|
320
320
|
<td></td>
|
|
321
|
-
<td class="paramtype"><a class="el" href="classSVF_1_1AbstractState.html#
|
|
321
|
+
<td class="paramtype"><a class="el" href="classSVF_1_1AbstractState.html#abac0c56904bd77bcd09fd65de51c25c9">AddrToAbsValMap</a> & </td>
|
|
322
322
|
<td class="paramname"><em>_locToValMap</em> </td>
|
|
323
323
|
</tr>
|
|
324
324
|
<tr>
|
|
@@ -335,8 +335,7 @@ Friends</h2></td></tr>
|
|
|
335
335
|
</div><div class="memdoc">
|
|
336
336
|
|
|
337
337
|
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00069">69</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
338
|
-
<div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> 
|
|
339
|
-
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <a class="code" href="classSVF_1_1AbstractState.html#aade30bb08f86b3f74e7aa9cdc60c92a3">_locToAbsVal</a>(_locToValMap) {}</div>
|
|
338
|
+
<div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> : <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>(_varToValMap), <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>(_locToValMap) {}</div>
|
|
340
339
|
</div><!-- fragment -->
|
|
341
340
|
</div>
|
|
342
341
|
</div>
|
|
@@ -366,12 +365,11 @@ Friends</h2></td></tr>
|
|
|
366
365
|
|
|
367
366
|
<p>copy constructor </p>
|
|
368
367
|
|
|
369
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
370
|
-
<div class="fragment"><div class="line"><a name="
|
|
371
|
-
<div class="line"><a name="
|
|
372
|
-
<div class="line"><a name="
|
|
373
|
-
<div class="line"><a name="
|
|
374
|
-
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  }</div>
|
|
368
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00072">72</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
369
|
+
<div class="fragment"><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  : <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>(rhs.getVarToVal()), <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>(rhs.getLocToVal())</div>
|
|
370
|
+
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  {</div>
|
|
371
|
+
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  </div>
|
|
372
|
+
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  }</div>
|
|
375
373
|
</div><!-- fragment -->
|
|
376
374
|
</div>
|
|
377
375
|
</div>
|
|
@@ -426,12 +424,12 @@ Friends</h2></td></tr>
|
|
|
426
424
|
|
|
427
425
|
<p>move constructor </p>
|
|
428
426
|
|
|
429
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
430
|
-
<div class="fragment"><div class="line"><a name="
|
|
431
|
-
<div class="line"><a name="
|
|
432
|
-
<div class="line"><a name="
|
|
433
|
-
<div class="line"><a name="
|
|
434
|
-
<div class="line"><a name="
|
|
427
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00114">114</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
428
|
+
<div class="fragment"><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  : <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">std::move</a>(rhs._varToAbsVal)),</div>
|
|
429
|
+
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">std::move</a>(rhs._addrToAbsVal))</div>
|
|
430
|
+
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  {</div>
|
|
431
|
+
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  </div>
|
|
432
|
+
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  }</div>
|
|
435
433
|
</div><!-- fragment -->
|
|
436
434
|
</div>
|
|
437
435
|
</div>
|
|
@@ -461,16 +459,16 @@ Friends</h2></td></tr>
|
|
|
461
459
|
|
|
462
460
|
<p>Set all value bottom. </p>
|
|
463
461
|
|
|
464
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
465
|
-
<div class="fragment"><div class="line"><a name="
|
|
466
|
-
<div class="line"><a name="
|
|
467
|
-
<div class="line"><a name="
|
|
468
|
-
<div class="line"><a name="
|
|
469
|
-
<div class="line"><a name="
|
|
470
|
-
<div class="line"><a name="
|
|
471
|
-
<div class="line"><a name="
|
|
472
|
-
<div class="line"><a name="
|
|
473
|
-
<div class="line"><a name="
|
|
462
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00132">132</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
463
|
+
<div class="fragment"><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  {</div>
|
|
464
|
+
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <a class="code" href="classSVF_1_1AbstractState.html#aac4048e1e39f2dbc16f20b7ffe61af5e">AbstractState</a> inv = *<span class="keyword">this</span>;</div>
|
|
465
|
+
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> &<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: inv._varToAbsVal)</div>
|
|
466
|
+
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  {</div>
|
|
467
|
+
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <span class="keywordflow">if</span> (<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.isInterval())</div>
|
|
468
|
+
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.getInterval().set_to_bottom();</div>
|
|
469
|
+
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  }</div>
|
|
470
|
+
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  <span class="keywordflow">return</span> inv;</div>
|
|
471
|
+
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  }</div>
|
|
474
472
|
</div><!-- fragment -->
|
|
475
473
|
</div>
|
|
476
474
|
</div>
|
|
@@ -497,11 +495,11 @@ Friends</h2></td></tr>
|
|
|
497
495
|
</table>
|
|
498
496
|
</div><div class="memdoc">
|
|
499
497
|
|
|
500
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
501
|
-
<div class="fragment"><div class="line"><a name="
|
|
502
|
-
<div class="line"><a name="
|
|
503
|
-
<div class="line"><a name="
|
|
504
|
-
<div class="line"><a name="
|
|
498
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00442">442</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
499
|
+
<div class="fragment"><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>  {</div>
|
|
500
|
+
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>  <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.clear();</div>
|
|
501
|
+
<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>  <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.clear();</div>
|
|
502
|
+
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>  }</div>
|
|
505
503
|
</div><!-- fragment -->
|
|
506
504
|
</div>
|
|
507
505
|
</div>
|
|
@@ -562,38 +560,38 @@ Friends</h2></td></tr>
|
|
|
562
560
|
</table>
|
|
563
561
|
</div><div class="memdoc">
|
|
564
562
|
|
|
565
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
566
|
-
<div class="fragment"><div class="line"><a name="
|
|
567
|
-
<div class="line"><a name="
|
|
568
|
-
<div class="line"><a name="
|
|
569
|
-
<div class="line"><a name="
|
|
570
|
-
<div class="line"><a name="
|
|
571
|
-
<div class="line"><a name="
|
|
572
|
-
<div class="line"><a name="
|
|
573
|
-
<div class="line"><a name="
|
|
574
|
-
<div class="line"><a name="
|
|
575
|
-
<div class="line"><a name="
|
|
576
|
-
<div class="line"><a name="
|
|
577
|
-
<div class="line"><a name="
|
|
578
|
-
<div class="line"><a name="
|
|
579
|
-
<div class="line"><a name="
|
|
580
|
-
<div class="line"><a name="
|
|
581
|
-
<div class="line"><a name="
|
|
582
|
-
<div class="line"><a name="
|
|
583
|
-
<div class="line"><a name="
|
|
584
|
-
<div class="line"><a name="
|
|
585
|
-
<div class="line"><a name="
|
|
586
|
-
<div class="line"><a name="
|
|
587
|
-
<div class="line"><a name="
|
|
588
|
-
<div class="line"><a name="
|
|
589
|
-
<div class="line"><a name="
|
|
590
|
-
<div class="line"><a name="
|
|
591
|
-
<div class="line"><a name="
|
|
592
|
-
<div class="line"><a name="
|
|
593
|
-
<div class="line"><a name="
|
|
594
|
-
<div class="line"><a name="
|
|
595
|
-
<div class="line"><a name="
|
|
596
|
-
<div class="line"><a name="
|
|
563
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00354">354</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
564
|
+
<div class="fragment"><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  {</div>
|
|
565
|
+
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <span class="keywordflow">if</span> (lhs.size() != rhs.size()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
566
|
+
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: lhs)</div>
|
|
567
|
+
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  {</div>
|
|
568
|
+
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  <span class="keyword">auto</span> it = rhs.find(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first);</div>
|
|
569
|
+
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  <span class="keywordflow">if</span> (it == rhs.end())</div>
|
|
570
|
+
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
571
|
+
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <span class="keywordflow">if</span> (<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.getType() == it->second.getType())</div>
|
|
572
|
+
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  {</div>
|
|
573
|
+
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  <span class="keywordflow">if</span> (<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.isInterval())</div>
|
|
574
|
+
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  {</div>
|
|
575
|
+
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  <span class="keywordflow">if</span> (!<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.getInterval().equals(it->second.getInterval()))</div>
|
|
576
|
+
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  {</div>
|
|
577
|
+
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
578
|
+
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  }</div>
|
|
579
|
+
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  }</div>
|
|
580
|
+
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.isAddr())</div>
|
|
581
|
+
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  {</div>
|
|
582
|
+
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  <span class="keywordflow">if</span> (!<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.getAddrs().equals(it->second.getAddrs()))</div>
|
|
583
|
+
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  {</div>
|
|
584
|
+
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
585
|
+
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  }</div>
|
|
586
|
+
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  }</div>
|
|
587
|
+
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>  }</div>
|
|
588
|
+
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  <span class="keywordflow">else</span></div>
|
|
589
|
+
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  {</div>
|
|
590
|
+
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
591
|
+
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  }</div>
|
|
592
|
+
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  }</div>
|
|
593
|
+
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
594
|
+
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>  }</div>
|
|
597
595
|
</div><!-- fragment -->
|
|
598
596
|
</div>
|
|
599
597
|
</div>
|
|
@@ -631,23 +629,23 @@ Friends</h2></td></tr>
|
|
|
631
629
|
</table>
|
|
632
630
|
</div><div class="memdoc">
|
|
633
631
|
|
|
634
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
635
|
-
<div class="fragment"><div class="line"><a name="
|
|
636
|
-
<div class="line"><a name="
|
|
637
|
-
<div class="line"><a name="
|
|
638
|
-
<div class="line"><a name="
|
|
639
|
-
<div class="line"><a name="
|
|
640
|
-
<div class="line"><a name="
|
|
641
|
-
<div class="line"><a name="
|
|
642
|
-
<div class="line"><a name="
|
|
643
|
-
<div class="line"><a name="
|
|
644
|
-
<div class="line"><a name="
|
|
645
|
-
<div class="line"><a name="
|
|
646
|
-
<div class="line"><a name="
|
|
647
|
-
<div class="line"><a name="
|
|
648
|
-
<div class="line"><a name="
|
|
649
|
-
<div class="line"><a name="
|
|
650
|
-
<div class="line"><a name="
|
|
632
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00402">402</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
633
|
+
<div class="fragment"><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  {</div>
|
|
634
|
+
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  <span class="keywordflow">if</span> (rhs.empty()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
635
|
+
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: rhs)</div>
|
|
636
|
+
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  {</div>
|
|
637
|
+
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>  <span class="keyword">auto</span> it = lhs.find(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first);</div>
|
|
638
|
+
<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  <span class="keywordflow">if</span> (it == lhs.end()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
639
|
+
<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  <span class="comment">// judge from expr id</span></div>
|
|
640
|
+
<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  <span class="keywordflow">if</span> (it->second.isInterval() && <a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.isInterval())</div>
|
|
641
|
+
<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  {</div>
|
|
642
|
+
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  <span class="keywordflow">if</span> (!it->second.getInterval().geq(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.getInterval()))</div>
|
|
643
|
+
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
644
|
+
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  }</div>
|
|
645
|
+
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  </div>
|
|
646
|
+
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  }</div>
|
|
647
|
+
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
648
|
+
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  }</div>
|
|
651
649
|
</div><!-- fragment -->
|
|
652
650
|
</div>
|
|
653
651
|
</div>
|
|
@@ -677,18 +675,18 @@ Friends</h2></td></tr>
|
|
|
677
675
|
|
|
678
676
|
<p>get memory addresses of variable </p>
|
|
679
677
|
|
|
680
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
681
|
-
<div class="fragment"><div class="line"><a name="
|
|
682
|
-
<div class="line"><a name="
|
|
683
|
-
<div class="line"><a name="
|
|
684
|
-
<div class="line"><a name="
|
|
685
|
-
<div class="line"><a name="
|
|
686
|
-
<div class="line"><a name="
|
|
687
|
-
<div class="line"><a name="
|
|
688
|
-
<div class="line"><a name="
|
|
689
|
-
<div class="line"><a name="
|
|
690
|
-
<div class="line"><a name="
|
|
691
|
-
<div class="line"><a name="
|
|
678
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00187">187</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
679
|
+
<div class="fragment"><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  {</div>
|
|
680
|
+
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.find(<span class="keywordtype">id</span>)!= <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.end())</div>
|
|
681
|
+
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  {</div>
|
|
682
|
+
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>[id];</div>
|
|
683
|
+
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  }</div>
|
|
684
|
+
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  <span class="keywordflow">else</span></div>
|
|
685
|
+
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  {</div>
|
|
686
|
+
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>[id] = AddressValue();</div>
|
|
687
|
+
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>[id];</div>
|
|
688
|
+
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  }</div>
|
|
689
|
+
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  }</div>
|
|
692
690
|
</div><!-- fragment -->
|
|
693
691
|
</div>
|
|
694
692
|
</div>
|
|
@@ -718,15 +716,15 @@ Friends</h2></td></tr>
|
|
|
718
716
|
|
|
719
717
|
<p>Return the internal index if idx is an address otherwise return the value of idx. </p>
|
|
720
718
|
|
|
721
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
722
|
-
<div class="fragment"><div class="line"><a name="
|
|
723
|
-
<div class="line"><a name="
|
|
724
|
-
<div class="line"><a name="
|
|
719
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00093">93</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
720
|
+
<div class="fragment"><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  {</div>
|
|
721
|
+
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AddressValue.html#a3be7a2e3ec3215b67cd60f122d2cd10e">AddressValue::getInternalID</a>(idx);</div>
|
|
722
|
+
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  }</div>
|
|
725
723
|
</div><!-- fragment -->
|
|
726
724
|
</div>
|
|
727
725
|
</div>
|
|
728
|
-
<a id="
|
|
729
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
726
|
+
<a id="ab8d9bf4a917a4691037ae08e2b634624"></a>
|
|
727
|
+
<h2 class="memtitle"><span class="permalink"><a href="#ab8d9bf4a917a4691037ae08e2b634624">◆ </a></span>getLocToVal()</h2>
|
|
730
728
|
|
|
731
729
|
<div class="memitem">
|
|
732
730
|
<div class="memproto">
|
|
@@ -735,7 +733,7 @@ Friends</h2></td></tr>
|
|
|
735
733
|
<td class="mlabels-left">
|
|
736
734
|
<table class="memname">
|
|
737
735
|
<tr>
|
|
738
|
-
<td class="memname">const <a class="el" href="classSVF_1_1AbstractState.html#
|
|
736
|
+
<td class="memname">const <a class="el" href="classSVF_1_1AbstractState.html#abac0c56904bd77bcd09fd65de51c25c9">AddrToAbsValMap</a>& SVF::AbstractState::getLocToVal </td>
|
|
739
737
|
<td>(</td>
|
|
740
738
|
<td class="paramname"></td><td>)</td>
|
|
741
739
|
<td> const</td>
|
|
@@ -750,10 +748,10 @@ Friends</h2></td></tr>
|
|
|
750
748
|
|
|
751
749
|
<p>get loc2val map </p>
|
|
752
750
|
|
|
753
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
754
|
-
<div class="fragment"><div class="line"><a name="
|
|
755
|
-
<div class="line"><a name="
|
|
756
|
-
<div class="line"><a name="
|
|
751
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00259">259</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
752
|
+
<div class="fragment"><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  {</div>
|
|
753
|
+
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>;</div>
|
|
754
|
+
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  }</div>
|
|
757
755
|
</div><!-- fragment -->
|
|
758
756
|
</div>
|
|
759
757
|
</div>
|
|
@@ -782,10 +780,10 @@ Friends</h2></td></tr>
|
|
|
782
780
|
|
|
783
781
|
<p>get var2val map </p>
|
|
784
782
|
|
|
785
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
786
|
-
<div class="fragment"><div class="line"><a name="
|
|
787
|
-
<div class="line"><a name="
|
|
788
|
-
<div class="line"><a name="
|
|
783
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00253">253</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
784
|
+
<div class="fragment"><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  {</div>
|
|
785
|
+
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>;</div>
|
|
786
|
+
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  }</div>
|
|
789
787
|
</div><!-- fragment -->
|
|
790
788
|
</div>
|
|
791
789
|
</div>
|
|
@@ -815,10 +813,10 @@ Friends</h2></td></tr>
|
|
|
815
813
|
|
|
816
814
|
<p>The physical address starts with 0x7f...... + idx. </p>
|
|
817
815
|
|
|
818
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
819
|
-
<div class="fragment"><div class="line"><a name="
|
|
820
|
-
<div class="line"><a name="
|
|
821
|
-
<div class="line"><a name="
|
|
816
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00081">81</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
817
|
+
<div class="fragment"><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  {</div>
|
|
818
|
+
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AddressValue.html#aa6ccc9882f89804cd6566e3dfe3dfdc8">AddressValue::getVirtualMemAddress</a>(idx);</div>
|
|
819
|
+
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  }</div>
|
|
822
820
|
</div><!-- fragment -->
|
|
823
821
|
</div>
|
|
824
822
|
</div>
|
|
@@ -847,30 +845,30 @@ Friends</h2></td></tr>
|
|
|
847
845
|
|
|
848
846
|
<p>Return true if map has bottom value. </p>
|
|
849
847
|
|
|
850
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
851
|
-
<div class="fragment"><div class="line"><a name="
|
|
852
|
-
<div class="line"><a name="
|
|
853
|
-
<div class="line"><a name="
|
|
854
|
-
<div class="line"><a name="
|
|
855
|
-
<div class="line"><a name="
|
|
856
|
-
<div class="line"><a name="
|
|
857
|
-
<div class="line"><a name="
|
|
858
|
-
<div class="line"><a name="
|
|
859
|
-
<div class="line"><a name="
|
|
860
|
-
<div class="line"><a name="
|
|
861
|
-
<div class="line"><a name="
|
|
862
|
-
<div class="line"><a name="
|
|
863
|
-
<div class="line"><a name="
|
|
864
|
-
<div class="line"><a name="
|
|
865
|
-
<div class="line"><a name="
|
|
866
|
-
<div class="line"><a name="
|
|
867
|
-
<div class="line"><a name="
|
|
868
|
-
<div class="line"><a name="
|
|
869
|
-
<div class="line"><a name="
|
|
870
|
-
<div class="line"><a name="
|
|
871
|
-
<div class="line"><a name="
|
|
872
|
-
<div class="line"><a name="
|
|
873
|
-
<div class="line"><a name="
|
|
848
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00293">293</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
849
|
+
<div class="fragment"><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  {</div>
|
|
850
|
+
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.begin(); it != <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.end(); ++it)</div>
|
|
851
|
+
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  {</div>
|
|
852
|
+
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  <span class="keywordflow">if</span> (it->second.isInterval())</div>
|
|
853
|
+
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  {</div>
|
|
854
|
+
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  <span class="keywordflow">if</span> (it->second.getInterval().isBottom())</div>
|
|
855
|
+
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>  {</div>
|
|
856
|
+
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
857
|
+
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  }</div>
|
|
858
|
+
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  }</div>
|
|
859
|
+
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  }</div>
|
|
860
|
+
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.begin(); it != <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end(); ++it)</div>
|
|
861
|
+
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  {</div>
|
|
862
|
+
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  <span class="keywordflow">if</span> (it->second.isInterval())</div>
|
|
863
|
+
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>  {</div>
|
|
864
|
+
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>  <span class="keywordflow">if</span> (it->second.getInterval().isBottom())</div>
|
|
865
|
+
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>  {</div>
|
|
866
|
+
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
867
|
+
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>  }</div>
|
|
868
|
+
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  }</div>
|
|
869
|
+
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  }</div>
|
|
870
|
+
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
871
|
+
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  }</div>
|
|
874
872
|
</div><!-- fragment -->
|
|
875
873
|
</div>
|
|
876
874
|
</div>
|
|
@@ -897,8 +895,8 @@ Friends</h2></td></tr>
|
|
|
897
895
|
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  {</div>
|
|
898
896
|
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  h ^= hf(t.first) + 0x9e3779b9 + (h << 6) + (h >> 2);</div>
|
|
899
897
|
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  }</div>
|
|
900
|
-
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <span class="keywordtype">size_t</span> h2 = <a class="code" href="classSVF_1_1AbstractState.html#
|
|
901
|
-
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &t: <a class="code" href="classSVF_1_1AbstractState.html#
|
|
898
|
+
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <span class="keywordtype">size_t</span> h2 = <a class="code" href="classSVF_1_1AbstractState.html#ab8d9bf4a917a4691037ae08e2b634624">getLocToVal</a>().size() * 2;</div>
|
|
899
|
+
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &t: <a class="code" href="classSVF_1_1AbstractState.html#ab8d9bf4a917a4691037ae08e2b634624">getLocToVal</a>())</div>
|
|
902
900
|
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  {</div>
|
|
903
901
|
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  h2 ^= hf(t.first) + 0x9e3779b9 + (h2 << 6) + (h2 >> 2);</div>
|
|
904
902
|
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  }</div>
|
|
@@ -934,17 +932,17 @@ Friends</h2></td></tr>
|
|
|
934
932
|
|
|
935
933
|
<p>whether the memory address stores memory addresses </p>
|
|
936
934
|
|
|
937
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
938
|
-
<div class="fragment"><div class="line"><a name="
|
|
939
|
-
<div class="line"><a name="
|
|
940
|
-
<div class="line"><a name="
|
|
941
|
-
<div class="line"><a name="
|
|
942
|
-
<div class="line"><a name="
|
|
943
|
-
<div class="line"><a name="
|
|
944
|
-
<div class="line"><a name="
|
|
945
|
-
<div class="line"><a name="
|
|
946
|
-
<div class="line"><a name="
|
|
947
|
-
<div class="line"><a name="
|
|
935
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00227">227</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
936
|
+
<div class="fragment"><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  {</div>
|
|
937
|
+
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.find(<span class="keywordtype">id</span>)!= <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end())</div>
|
|
938
|
+
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  {</div>
|
|
939
|
+
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.at(<span class="keywordtype">id</span>).isAddr())</div>
|
|
940
|
+
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  {</div>
|
|
941
|
+
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
942
|
+
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  }</div>
|
|
943
|
+
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  }</div>
|
|
944
|
+
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
945
|
+
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  }</div>
|
|
948
946
|
</div><!-- fragment -->
|
|
949
947
|
</div>
|
|
950
948
|
</div>
|
|
@@ -974,17 +972,17 @@ Friends</h2></td></tr>
|
|
|
974
972
|
|
|
975
973
|
<p>whether the memory address stores abstract value </p>
|
|
976
974
|
|
|
977
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
978
|
-
<div class="fragment"><div class="line"><a name="
|
|
979
|
-
<div class="line"><a name="
|
|
980
|
-
<div class="line"><a name="
|
|
981
|
-
<div class="line"><a name="
|
|
982
|
-
<div class="line"><a name="
|
|
983
|
-
<div class="line"><a name="
|
|
984
|
-
<div class="line"><a name="
|
|
985
|
-
<div class="line"><a name="
|
|
986
|
-
<div class="line"><a name="
|
|
987
|
-
<div class="line"><a name="
|
|
975
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00240">240</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
976
|
+
<div class="fragment"><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  {</div>
|
|
977
|
+
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.find(<span class="keywordtype">id</span>) != <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end())</div>
|
|
978
|
+
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  {</div>
|
|
979
|
+
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.at(<span class="keywordtype">id</span>).isInterval())</div>
|
|
980
|
+
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  {</div>
|
|
981
|
+
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
982
|
+
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  }</div>
|
|
983
|
+
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  }</div>
|
|
984
|
+
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
985
|
+
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  }</div>
|
|
988
986
|
</div><!-- fragment -->
|
|
989
987
|
</div>
|
|
990
988
|
</div>
|
|
@@ -1014,11 +1012,11 @@ Friends</h2></td></tr>
|
|
|
1014
1012
|
|
|
1015
1013
|
<p>Return int value from an expression if it is a numeral, otherwise return an approximate value. </p>
|
|
1016
1014
|
|
|
1017
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1018
|
-
<div class="fragment"><div class="line"><a name="
|
|
1019
|
-
<div class="line"><a name="
|
|
1020
|
-
<div class="line"><a name="
|
|
1021
|
-
<div class="line"><a name="
|
|
1015
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00286">286</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1016
|
+
<div class="fragment"><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  {</div>
|
|
1017
|
+
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>  <span class="comment">//TODO: return concrete value;</span></div>
|
|
1018
|
+
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  <span class="keywordflow">return</span> (<a class="code" href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">s32_t</a>) e.lb().getNumeral();</div>
|
|
1019
|
+
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  }</div>
|
|
1022
1020
|
</div><!-- fragment -->
|
|
1023
1021
|
</div>
|
|
1024
1022
|
</div>
|
|
@@ -1048,17 +1046,17 @@ Friends</h2></td></tr>
|
|
|
1048
1046
|
|
|
1049
1047
|
<p>whether the variable is in varToAddrs table </p>
|
|
1050
1048
|
|
|
1051
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1052
|
-
<div class="fragment"><div class="line"><a name="
|
|
1053
|
-
<div class="line"><a name="
|
|
1054
|
-
<div class="line"><a name="
|
|
1055
|
-
<div class="line"><a name="
|
|
1056
|
-
<div class="line"><a name="
|
|
1057
|
-
<div class="line"><a name="
|
|
1058
|
-
<div class="line"><a name="
|
|
1059
|
-
<div class="line"><a name="
|
|
1060
|
-
<div class="line"><a name="
|
|
1061
|
-
<div class="line"><a name="
|
|
1049
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00201">201</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1050
|
+
<div class="fragment"><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  {</div>
|
|
1051
|
+
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.find(<span class="keywordtype">id</span>)!= <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.end())</div>
|
|
1052
|
+
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  {</div>
|
|
1053
|
+
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.at(<span class="keywordtype">id</span>).isAddr())</div>
|
|
1054
|
+
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  {</div>
|
|
1055
|
+
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
1056
|
+
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  }</div>
|
|
1057
|
+
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  }</div>
|
|
1058
|
+
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
1059
|
+
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  }</div>
|
|
1062
1060
|
</div><!-- fragment -->
|
|
1063
1061
|
</div>
|
|
1064
1062
|
</div>
|
|
@@ -1088,17 +1086,17 @@ Friends</h2></td></tr>
|
|
|
1088
1086
|
|
|
1089
1087
|
<p>whether the variable is in varToVal table </p>
|
|
1090
1088
|
|
|
1091
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1092
|
-
<div class="fragment"><div class="line"><a name="
|
|
1093
|
-
<div class="line"><a name="
|
|
1094
|
-
<div class="line"><a name="
|
|
1095
|
-
<div class="line"><a name="
|
|
1096
|
-
<div class="line"><a name="
|
|
1097
|
-
<div class="line"><a name="
|
|
1098
|
-
<div class="line"><a name="
|
|
1099
|
-
<div class="line"><a name="
|
|
1100
|
-
<div class="line"><a name="
|
|
1101
|
-
<div class="line"><a name="
|
|
1089
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00214">214</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1090
|
+
<div class="fragment"><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  {</div>
|
|
1091
|
+
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.find(<span class="keywordtype">id</span>) != <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.end())</div>
|
|
1092
|
+
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  {</div>
|
|
1093
|
+
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.at(<span class="keywordtype">id</span>).isInterval())</div>
|
|
1094
|
+
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  {</div>
|
|
1095
|
+
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
1096
|
+
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  }</div>
|
|
1097
|
+
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  }</div>
|
|
1098
|
+
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
1099
|
+
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  }</div>
|
|
1102
1100
|
</div><!-- fragment -->
|
|
1103
1101
|
</div>
|
|
1104
1102
|
</div>
|
|
@@ -1126,10 +1124,10 @@ Friends</h2></td></tr>
|
|
|
1126
1124
|
</table>
|
|
1127
1125
|
</div><div class="memdoc">
|
|
1128
1126
|
|
|
1129
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1130
|
-
<div class="fragment"><div class="line"><a name="
|
|
1131
|
-
<div class="line"><a name="
|
|
1132
|
-
<div class="line"><a name="
|
|
1127
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00098">98</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1128
|
+
<div class="fragment"><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  {</div>
|
|
1129
|
+
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractState.html#aaabe5850dbf1620c6058f5ac6cb169b6">getInternalID</a>(addr) == 0;</div>
|
|
1130
|
+
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  }</div>
|
|
1133
1131
|
</div><!-- fragment -->
|
|
1134
1132
|
</div>
|
|
1135
1133
|
</div>
|
|
@@ -1159,10 +1157,10 @@ Friends</h2></td></tr>
|
|
|
1159
1157
|
|
|
1160
1158
|
<p>Check bit value of val start with 0x7F000000, filter by 0xFF000000. </p>
|
|
1161
1159
|
|
|
1162
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1163
|
-
<div class="fragment"><div class="line"><a name="
|
|
1164
|
-
<div class="line"><a name="
|
|
1165
|
-
<div class="line"><a name="
|
|
1160
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00087">87</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1161
|
+
<div class="fragment"><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  {</div>
|
|
1162
|
+
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AddressValue.html#ab76f47f97262d40dbbee12f466f746e8">AddressValue::isVirtualMemAddress</a>(val);</div>
|
|
1163
|
+
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  }</div>
|
|
1166
1164
|
</div><!-- fragment -->
|
|
1167
1165
|
</div>
|
|
1168
1166
|
</div>
|
|
@@ -1210,11 +1208,11 @@ Friends</h2></td></tr>
|
|
|
1210
1208
|
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.emplace(key, it->second);</div>
|
|
1211
1209
|
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  }</div>
|
|
1212
1210
|
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  }</div>
|
|
1213
|
-
<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#
|
|
1211
|
+
<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>
|
|
1214
1212
|
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  {</div>
|
|
1215
1213
|
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
1216
|
-
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1AbstractState.html#
|
|
1217
|
-
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1AbstractState.html#
|
|
1214
|
+
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.find(key);</div>
|
|
1215
|
+
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end())</div>
|
|
1218
1216
|
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  {</div>
|
|
1219
1217
|
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="keywordflow">if</span> (oit->second.isInterval() && it->second.isInterval())</div>
|
|
1220
1218
|
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  {</div>
|
|
@@ -1231,7 +1229,7 @@ Friends</h2></td></tr>
|
|
|
1231
1229
|
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  }</div>
|
|
1232
1230
|
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <span class="keywordflow">else</span></div>
|
|
1233
1231
|
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  {</div>
|
|
1234
|
-
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <a class="code" href="classSVF_1_1AbstractState.html#
|
|
1232
|
+
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.emplace(key, it->second);</div>
|
|
1235
1233
|
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  }</div>
|
|
1236
1234
|
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  }</div>
|
|
1237
1235
|
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> }</div>
|
|
@@ -1272,18 +1270,18 @@ Friends</h2></td></tr>
|
|
|
1272
1270
|
</table>
|
|
1273
1271
|
</div><div class="memdoc">
|
|
1274
1272
|
|
|
1275
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1276
|
-
<div class="fragment"><div class="line"><a name="
|
|
1277
|
-
<div class="line"><a name="
|
|
1278
|
-
<div class="line"><a name="
|
|
1279
|
-
<div class="line"><a name="
|
|
1280
|
-
<div class="line"><a name="
|
|
1281
|
-
<div class="line"><a name="
|
|
1282
|
-
<div class="line"><a name="
|
|
1283
|
-
<div class="line"><a name="
|
|
1284
|
-
<div class="line"><a name="
|
|
1285
|
-
<div class="line"><a name="
|
|
1286
|
-
<div class="line"><a name="
|
|
1273
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00388">388</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1274
|
+
<div class="fragment"><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  {</div>
|
|
1275
|
+
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  <span class="keywordflow">if</span> (lhs.empty()) <span class="keywordflow">return</span> !rhs.empty();</div>
|
|
1276
|
+
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: lhs)</div>
|
|
1277
|
+
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  {</div>
|
|
1278
|
+
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  <span class="keyword">auto</span> it = rhs.find(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first);</div>
|
|
1279
|
+
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  <span class="keywordflow">if</span> (it == rhs.end()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
1280
|
+
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  <span class="comment">// judge from expr id</span></div>
|
|
1281
|
+
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  <span class="keywordflow">if</span> (<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.getInterval().geq(it->second.getInterval())) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
1282
|
+
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  }</div>
|
|
1283
|
+
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
1284
|
+
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  }</div>
|
|
1287
1285
|
</div><!-- fragment -->
|
|
1288
1286
|
</div>
|
|
1289
1287
|
</div>
|
|
@@ -1311,19 +1309,19 @@ Friends</h2></td></tr>
|
|
|
1311
1309
|
</table>
|
|
1312
1310
|
</div><div class="memdoc">
|
|
1313
1311
|
|
|
1314
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1315
|
-
<div class="fragment"><div class="line"><a name="
|
|
1316
|
-
<div class="line"><a name="
|
|
1317
|
-
<div class="line"><a name="
|
|
1318
|
-
<div class="line"><a name="
|
|
1319
|
-
<div class="line"><a name="
|
|
1320
|
-
<div class="line"><a name="
|
|
1321
|
-
<div class="line"><a name="
|
|
1322
|
-
<div class="line"><a name="
|
|
1323
|
-
<div class="line"><a name="
|
|
1324
|
-
<div class="line"><a name="
|
|
1325
|
-
<div class="line"><a name="
|
|
1326
|
-
<div class="line"><a name="
|
|
1312
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00329">329</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1313
|
+
<div class="fragment"><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>  {</div>
|
|
1314
|
+
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  assert(<a class="code" href="classSVF_1_1AbstractState.html#ad3eefae77eb1fc4bbcfe70b0f2f51dd4">isVirtualMemAddress</a>(addr) && <span class="stringliteral">"not virtual address?"</span>);</div>
|
|
1315
|
+
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>  <a class="code" href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a> objId = <a class="code" href="classSVF_1_1AbstractState.html#aaabe5850dbf1620c6058f5ac6cb169b6">getInternalID</a>(addr);</div>
|
|
1316
|
+
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>  <span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.find(objId);</div>
|
|
1317
|
+
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>  <span class="keywordflow">if</span>(it != <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end())</div>
|
|
1318
|
+
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>  <span class="keywordflow">return</span> it->second;</div>
|
|
1319
|
+
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  <span class="keywordflow">else</span></div>
|
|
1320
|
+
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  {</div>
|
|
1321
|
+
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>[objId] = <a class="code" href="classSVF_1_1IntervalValue.html#add3acad151d5af6c9a5f692f7a01e65b">IntervalValue::top</a>();</div>
|
|
1322
|
+
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>[objId];</div>
|
|
1323
|
+
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  }</div>
|
|
1324
|
+
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  }</div>
|
|
1327
1325
|
</div><!-- fragment -->
|
|
1328
1326
|
</div>
|
|
1329
1327
|
</div>
|
|
@@ -1367,11 +1365,11 @@ Friends</h2></td></tr>
|
|
|
1367
1365
|
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  }</div>
|
|
1368
1366
|
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  }</div>
|
|
1369
1367
|
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  }</div>
|
|
1370
|
-
<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#
|
|
1368
|
+
<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>
|
|
1371
1369
|
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  {</div>
|
|
1372
1370
|
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
1373
|
-
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1AbstractState.html#
|
|
1374
|
-
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1AbstractState.html#
|
|
1371
|
+
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.find(key);</div>
|
|
1372
|
+
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end())</div>
|
|
1375
1373
|
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  {</div>
|
|
1376
1374
|
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <span class="keywordflow">if</span> (oit->second.isInterval() && it->second.isInterval())</div>
|
|
1377
1375
|
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  {</div>
|
|
@@ -1419,12 +1417,12 @@ Friends</h2></td></tr>
|
|
|
1419
1417
|
<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>
|
|
1420
1418
|
<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>
|
|
1421
1419
|
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  }</div>
|
|
1422
|
-
<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#
|
|
1420
|
+
<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>
|
|
1423
1421
|
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  {</div>
|
|
1424
1422
|
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
1425
|
-
<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#
|
|
1426
|
-
<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#
|
|
1427
|
-
<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#
|
|
1423
|
+
<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>
|
|
1424
|
+
<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>
|
|
1425
|
+
<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>
|
|
1428
1426
|
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  }</div>
|
|
1429
1427
|
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="keywordflow">return</span> es;</div>
|
|
1430
1428
|
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  </div>
|
|
@@ -1460,11 +1458,11 @@ Friends</h2></td></tr>
|
|
|
1460
1458
|
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <span class="keywordflow">if</span> (it->second.isInterval() && oit->second.isInterval())</div>
|
|
1461
1459
|
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  it->second.getInterval().narrow_with(oit->second.getInterval());</div>
|
|
1462
1460
|
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  }</div>
|
|
1463
|
-
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1AbstractState.html#
|
|
1461
|
+
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.begin(); it != <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end(); ++it)</div>
|
|
1464
1462
|
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  {</div>
|
|
1465
1463
|
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
1466
|
-
<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#
|
|
1467
|
-
<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#
|
|
1464
|
+
<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>
|
|
1465
|
+
<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>
|
|
1468
1466
|
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="keywordflow">if</span> (it->second.isInterval() && oit->second.isInterval())</div>
|
|
1469
1467
|
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  it->second.getInterval().narrow_with(oit->second.getInterval());</div>
|
|
1470
1468
|
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  }</div>
|
|
@@ -1496,10 +1494,10 @@ Friends</h2></td></tr>
|
|
|
1496
1494
|
</table>
|
|
1497
1495
|
</div><div class="memdoc">
|
|
1498
1496
|
|
|
1499
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1500
|
-
<div class="fragment"><div class="line"><a name="
|
|
1501
|
-
<div class="line"><a name="
|
|
1502
|
-
<div class="line"><a name="
|
|
1497
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00426">426</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1498
|
+
<div class="fragment"><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  {</div>
|
|
1499
|
+
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs);</div>
|
|
1500
|
+
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  }</div>
|
|
1503
1501
|
</div><!-- fragment -->
|
|
1504
1502
|
</div>
|
|
1505
1503
|
</div>
|
|
@@ -1527,10 +1525,10 @@ Friends</h2></td></tr>
|
|
|
1527
1525
|
</table>
|
|
1528
1526
|
</div><div class="memdoc">
|
|
1529
1527
|
|
|
1530
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1531
|
-
<div class="fragment"><div class="line"><a name="
|
|
1532
|
-
<div class="line"><a name="
|
|
1533
|
-
<div class="line"><a name="
|
|
1528
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00431">431</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1529
|
+
<div class="fragment"><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  {</div>
|
|
1530
|
+
<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>  <span class="keywordflow">return</span> !(*<span class="keyword">this</span> >= rhs);</div>
|
|
1531
|
+
<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>  }</div>
|
|
1534
1532
|
</div><!-- fragment -->
|
|
1535
1533
|
</div>
|
|
1536
1534
|
</div>
|
|
@@ -1560,15 +1558,15 @@ Friends</h2></td></tr>
|
|
|
1560
1558
|
|
|
1561
1559
|
<p>operator= move constructor </p>
|
|
1562
1560
|
|
|
1563
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1564
|
-
<div class="fragment"><div class="line"><a name="
|
|
1565
|
-
<div class="line"><a name="
|
|
1566
|
-
<div class="line"><a name="
|
|
1567
|
-
<div class="line"><a name="
|
|
1568
|
-
<div class="line"><a name="
|
|
1569
|
-
<div class="line"><a name="
|
|
1570
|
-
<div class="line"><a name="
|
|
1571
|
-
<div class="line"><a name="
|
|
1561
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00121">121</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1562
|
+
<div class="fragment"><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  {</div>
|
|
1563
|
+
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="keywordflow">if</span> (&rhs != <span class="keyword">this</span>)</div>
|
|
1564
|
+
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  {</div>
|
|
1565
|
+
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a> = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">std::move</a>(rhs._varToAbsVal);</div>
|
|
1566
|
+
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a> = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">std::move</a>(rhs._addrToAbsVal);</div>
|
|
1567
|
+
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  }</div>
|
|
1568
|
+
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
|
|
1569
|
+
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  }</div>
|
|
1572
1570
|
</div><!-- fragment -->
|
|
1573
1571
|
</div>
|
|
1574
1572
|
</div>
|
|
@@ -1596,15 +1594,15 @@ Friends</h2></td></tr>
|
|
|
1596
1594
|
</table>
|
|
1597
1595
|
</div><div class="memdoc">
|
|
1598
1596
|
|
|
1599
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1600
|
-
<div class="fragment"><div class="line"><a name="
|
|
1601
|
-
<div class="line"><a name="
|
|
1602
|
-
<div class="line"><a name="
|
|
1603
|
-
<div class="line"><a name="
|
|
1604
|
-
<div class="line"><a name="
|
|
1605
|
-
<div class="line"><a name="
|
|
1606
|
-
<div class="line"><a name="
|
|
1607
|
-
<div class="line"><a name="
|
|
1597
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00103">103</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1598
|
+
<div class="fragment"><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  {</div>
|
|
1599
|
+
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <span class="keywordflow">if</span> (rhs != *<span class="keyword">this</span>)</div>
|
|
1600
|
+
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  {</div>
|
|
1601
|
+
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a> = rhs._varToAbsVal;</div>
|
|
1602
|
+
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a> = rhs._addrToAbsVal;</div>
|
|
1603
|
+
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  }</div>
|
|
1604
|
+
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
|
|
1605
|
+
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  }</div>
|
|
1608
1606
|
</div><!-- fragment -->
|
|
1609
1607
|
</div>
|
|
1610
1608
|
</div>
|
|
@@ -1632,11 +1630,11 @@ Friends</h2></td></tr>
|
|
|
1632
1630
|
</table>
|
|
1633
1631
|
</div><div class="memdoc">
|
|
1634
1632
|
|
|
1635
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1636
|
-
<div class="fragment"><div class="line"><a name="
|
|
1637
|
-
<div class="line"><a name="
|
|
1638
|
-
<div class="line"><a name="
|
|
1639
|
-
<div class="line"><a name="
|
|
1633
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00420">420</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1634
|
+
<div class="fragment"><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  {</div>
|
|
1635
|
+
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractState.html#adb1ce2a16c501aefa7c902e9bec012f6">eqVarToValMap</a>(<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>, rhs.getVarToVal()) &&</div>
|
|
1636
|
+
<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  <a class="code" href="classSVF_1_1AbstractState.html#adb1ce2a16c501aefa7c902e9bec012f6">eqVarToValMap</a>(<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>, rhs.getLocToVal());</div>
|
|
1637
|
+
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  }</div>
|
|
1640
1638
|
</div><!-- fragment -->
|
|
1641
1639
|
</div>
|
|
1642
1640
|
</div>
|
|
@@ -1664,10 +1662,10 @@ Friends</h2></td></tr>
|
|
|
1664
1662
|
</table>
|
|
1665
1663
|
</div><div class="memdoc">
|
|
1666
1664
|
|
|
1667
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1668
|
-
<div class="fragment"><div class="line"><a name="
|
|
1669
|
-
<div class="line"><a name="
|
|
1670
|
-
<div class="line"><a name="
|
|
1665
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00437">437</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1666
|
+
<div class="fragment"><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>  {</div>
|
|
1667
|
+
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractState.html#a16486a0c6d9a1bb1ac19673b41a16a0e">geqVarToValMap</a>(<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>, rhs.getVarToVal()) && <a class="code" href="classSVF_1_1AbstractState.html#a16486a0c6d9a1bb1ac19673b41a16a0e">geqVarToValMap</a>(<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>, rhs.getLocToVal());</div>
|
|
1668
|
+
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>  }</div>
|
|
1671
1669
|
</div><!-- fragment -->
|
|
1672
1670
|
</div>
|
|
1673
1671
|
</div>
|
|
@@ -1697,10 +1695,10 @@ Friends</h2></td></tr>
|
|
|
1697
1695
|
|
|
1698
1696
|
<p>get abstract value of variable </p>
|
|
1699
1697
|
|
|
1700
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1701
|
-
<div class="fragment"><div class="line"><a name="
|
|
1702
|
-
<div class="line"><a name="
|
|
1703
|
-
<div class="line"><a name="
|
|
1698
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00175">175</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1699
|
+
<div class="fragment"><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  {</div>
|
|
1700
|
+
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>[varId];</div>
|
|
1701
|
+
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  }</div>
|
|
1704
1702
|
</div><!-- fragment -->
|
|
1705
1703
|
</div>
|
|
1706
1704
|
</div>
|
|
@@ -1730,10 +1728,10 @@ Friends</h2></td></tr>
|
|
|
1730
1728
|
|
|
1731
1729
|
<p>get abstract value of variable </p>
|
|
1732
1730
|
|
|
1733
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1734
|
-
<div class="fragment"><div class="line"><a name="
|
|
1735
|
-
<div class="line"><a name="
|
|
1736
|
-
<div class="line"><a name="
|
|
1731
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00181">181</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1732
|
+
<div class="fragment"><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  {</div>
|
|
1733
|
+
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>.at(varId);</div>
|
|
1734
|
+
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  }</div>
|
|
1737
1735
|
</div><!-- fragment -->
|
|
1738
1736
|
</div>
|
|
1739
1737
|
</div>
|
|
@@ -1759,7 +1757,7 @@ Friends</h2></td></tr>
|
|
|
1759
1757
|
<div class="fragment"><div class="line"><a name="l00240"></a><span class="lineno"> 240</span> {</div>
|
|
1760
1758
|
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  oss << <span class="stringliteral">"-----------Var and Value-----------\n"</span>;</div>
|
|
1761
1759
|
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  <a class="code" href="classSVF_1_1AbstractState.html#a61a9a3873426ad522d0b4c16eb2ac67b">printTable</a>(<a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>, oss);</div>
|
|
1762
|
-
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  <a class="code" href="classSVF_1_1AbstractState.html#a61a9a3873426ad522d0b4c16eb2ac67b">printTable</a>(<a class="code" href="classSVF_1_1AbstractState.html#
|
|
1760
|
+
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  <a class="code" href="classSVF_1_1AbstractState.html#a61a9a3873426ad522d0b4c16eb2ac67b">printTable</a>(<a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>, oss);</div>
|
|
1763
1761
|
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  oss << <span class="stringliteral">"-----------------------------------------\n"</span>;</div>
|
|
1764
1762
|
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> }</div>
|
|
1765
1763
|
</div><!-- fragment -->
|
|
@@ -1851,15 +1849,15 @@ Friends</h2></td></tr>
|
|
|
1851
1849
|
|
|
1852
1850
|
<p>Copy some values and return a new IntervalExeState. </p>
|
|
1853
1851
|
|
|
1854
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1855
|
-
<div class="fragment"><div class="line"><a name="
|
|
1856
|
-
<div class="line"><a name="
|
|
1857
|
-
<div class="line"><a name="
|
|
1858
|
-
<div class="line"><a name="
|
|
1859
|
-
<div class="line"><a name="
|
|
1860
|
-
<div class="line"><a name="
|
|
1861
|
-
<div class="line"><a name="
|
|
1862
|
-
<div class="line"><a name="
|
|
1852
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00156">156</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1853
|
+
<div class="fragment"><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  {</div>
|
|
1854
|
+
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <a class="code" href="classSVF_1_1AbstractState.html#aac4048e1e39f2dbc16f20b7ffe61af5e">AbstractState</a> inv;</div>
|
|
1855
|
+
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <span class="keywordflow">for</span> (<a class="code" href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a> <span class="keywordtype">id</span>: sl)</div>
|
|
1856
|
+
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  {</div>
|
|
1857
|
+
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  inv._varToAbsVal[id] = <a class="code" href="classSVF_1_1AbstractState.html#a6a49c75fb6b35159dcf1763b4484d335">_varToAbsVal</a>[id];</div>
|
|
1858
|
+
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  }</div>
|
|
1859
|
+
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  <span class="keywordflow">return</span> inv;</div>
|
|
1860
|
+
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  }</div>
|
|
1863
1861
|
</div><!-- fragment -->
|
|
1864
1862
|
</div>
|
|
1865
1863
|
</div>
|
|
@@ -1897,13 +1895,13 @@ Friends</h2></td></tr>
|
|
|
1897
1895
|
</table>
|
|
1898
1896
|
</div><div class="memdoc">
|
|
1899
1897
|
|
|
1900
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1901
|
-
<div class="fragment"><div class="line"><a name="
|
|
1902
|
-
<div class="line"><a name="
|
|
1903
|
-
<div class="line"><a name="
|
|
1904
|
-
<div class="line"><a name="
|
|
1905
|
-
<div class="line"><a name="
|
|
1906
|
-
<div class="line"><a name="
|
|
1898
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00321">321</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1899
|
+
<div class="fragment"><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  {</div>
|
|
1900
|
+
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  assert(<a class="code" href="classSVF_1_1AbstractState.html#ad3eefae77eb1fc4bbcfe70b0f2f51dd4">isVirtualMemAddress</a>(addr) && <span class="stringliteral">"not virtual address?"</span>);</div>
|
|
1901
|
+
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1AbstractState.html#aad7588fead712273f6679d00759c06ea">isNullPtr</a>(addr)) <span class="keywordflow">return</span>;</div>
|
|
1902
|
+
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  <a class="code" href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a> objId = <a class="code" href="classSVF_1_1AbstractState.html#aaabe5850dbf1620c6058f5ac6cb169b6">getInternalID</a>(addr);</div>
|
|
1903
|
+
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>[objId] = val;</div>
|
|
1904
|
+
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  }</div>
|
|
1907
1905
|
</div><!-- fragment -->
|
|
1908
1906
|
</div>
|
|
1909
1907
|
</div>
|
|
@@ -1932,16 +1930,16 @@ Friends</h2></td></tr>
|
|
|
1932
1930
|
|
|
1933
1931
|
<p>Set all value top. </p>
|
|
1934
1932
|
|
|
1935
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1936
|
-
<div class="fragment"><div class="line"><a name="
|
|
1937
|
-
<div class="line"><a name="
|
|
1938
|
-
<div class="line"><a name="
|
|
1939
|
-
<div class="line"><a name="
|
|
1940
|
-
<div class="line"><a name="
|
|
1941
|
-
<div class="line"><a name="
|
|
1942
|
-
<div class="line"><a name="
|
|
1943
|
-
<div class="line"><a name="
|
|
1944
|
-
<div class="line"><a name="
|
|
1933
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00144">144</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1934
|
+
<div class="fragment"><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  {</div>
|
|
1935
|
+
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <a class="code" href="classSVF_1_1AbstractState.html#aac4048e1e39f2dbc16f20b7ffe61af5e">AbstractState</a> inv = *<span class="keyword">this</span>;</div>
|
|
1936
|
+
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> &<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>: inv._varToAbsVal)</div>
|
|
1937
|
+
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  {</div>
|
|
1938
|
+
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keywordflow">if</span> (<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.isInterval())</div>
|
|
1939
|
+
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second.getInterval().set_to_top();</div>
|
|
1940
|
+
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  }</div>
|
|
1941
|
+
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="keywordflow">return</span> inv;</div>
|
|
1942
|
+
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  }</div>
|
|
1945
1943
|
</div><!-- fragment -->
|
|
1946
1944
|
</div>
|
|
1947
1945
|
</div>
|
|
@@ -1968,10 +1966,10 @@ Friends</h2></td></tr>
|
|
|
1968
1966
|
</table>
|
|
1969
1967
|
</div><div class="memdoc">
|
|
1970
1968
|
|
|
1971
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
1972
|
-
<div class="fragment"><div class="line"><a name="
|
|
1973
|
-
<div class="line"><a name="
|
|
1974
|
-
<div class="line"><a name="
|
|
1969
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00347">347</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
1970
|
+
<div class="fragment"><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  {</div>
|
|
1971
|
+
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  <span class="keywordflow">return</span> <span class="stringliteral">""</span>;</div>
|
|
1972
|
+
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  }</div>
|
|
1975
1973
|
</div><!-- fragment -->
|
|
1976
1974
|
</div>
|
|
1977
1975
|
</div>
|
|
@@ -2004,12 +2002,12 @@ Friends</h2></td></tr>
|
|
|
2004
2002
|
<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>
|
|
2005
2003
|
<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>
|
|
2006
2004
|
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  }</div>
|
|
2007
|
-
<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#
|
|
2005
|
+
<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>
|
|
2008
2006
|
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  {</div>
|
|
2009
2007
|
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
2010
|
-
<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#
|
|
2011
|
-
<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#
|
|
2012
|
-
<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#
|
|
2008
|
+
<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>
|
|
2009
|
+
<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>
|
|
2010
|
+
<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>
|
|
2013
2011
|
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  }</div>
|
|
2014
2012
|
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keywordflow">return</span> es;</div>
|
|
2015
2013
|
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> }</div>
|
|
@@ -2043,12 +2041,12 @@ Friends</h2></td></tr>
|
|
|
2043
2041
|
<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>
|
|
2044
2042
|
<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>
|
|
2045
2043
|
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  }</div>
|
|
2046
|
-
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1AbstractState.html#
|
|
2044
|
+
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.begin(); it != <a class="code" href="classSVF_1_1AbstractState.html#a816695606ef796ce97c42ac4053de47e">_addrToAbsVal</a>.end(); ++it)</div>
|
|
2047
2045
|
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  {</div>
|
|
2048
2046
|
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
2049
|
-
<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#
|
|
2047
|
+
<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>
|
|
2050
2048
|
<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>
|
|
2051
|
-
<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#
|
|
2049
|
+
<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>
|
|
2052
2050
|
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  }</div>
|
|
2053
2051
|
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> }</div>
|
|
2054
2052
|
</div><!-- fragment -->
|
|
@@ -2104,8 +2102,8 @@ Friends</h2></td></tr>
|
|
|
2104
2102
|
</div>
|
|
2105
2103
|
</div>
|
|
2106
2104
|
<h2 class="groupheader">Member Data Documentation</h2>
|
|
2107
|
-
<a id="
|
|
2108
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
2105
|
+
<a id="a816695606ef796ce97c42ac4053de47e"></a>
|
|
2106
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a816695606ef796ce97c42ac4053de47e">◆ </a></span>_addrToAbsVal</h2>
|
|
2109
2107
|
|
|
2110
2108
|
<div class="memitem">
|
|
2111
2109
|
<div class="memproto">
|
|
@@ -2114,7 +2112,7 @@ Friends</h2></td></tr>
|
|
|
2114
2112
|
<td class="mlabels-left">
|
|
2115
2113
|
<table class="memname">
|
|
2116
2114
|
<tr>
|
|
2117
|
-
<td class="memname"><a class="el" href="classSVF_1_1AbstractState.html#
|
|
2115
|
+
<td class="memname"><a class="el" href="classSVF_1_1AbstractState.html#abac0c56904bd77bcd09fd65de51c25c9">AddrToAbsValMap</a> SVF::AbstractState::_addrToAbsVal</td>
|
|
2118
2116
|
</tr>
|
|
2119
2117
|
</table>
|
|
2120
2118
|
</td>
|
|
@@ -2126,7 +2124,7 @@ Friends</h2></td></tr>
|
|
|
2126
2124
|
|
|
2127
2125
|
<p>Map a memory address to its stored abstract value. </p>
|
|
2128
2126
|
|
|
2129
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
2127
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00169">169</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
2130
2128
|
|
|
2131
2129
|
</div>
|
|
2132
2130
|
</div>
|
|
@@ -2152,7 +2150,7 @@ Friends</h2></td></tr>
|
|
|
2152
2150
|
|
|
2153
2151
|
<p>Map a variable (symbol) to its abstract value. </p>
|
|
2154
2152
|
|
|
2155
|
-
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#
|
|
2153
|
+
<p class="definition">Definition at line <a class="el" href="AbstractState_8h_source.html#l00167">167</a> of file <a class="el" href="AbstractState_8h_source.html">AbstractState.h</a>.</p>
|
|
2156
2154
|
|
|
2157
2155
|
</div>
|
|
2158
2156
|
</div>
|
|
@@ -2161,31 +2159,31 @@ Friends</h2></td></tr>
|
|
|
2161
2159
|
<li>/home/runner/work/SVF/SVF/svf/lib/AE/Core/<a class="el" href="AbstractState_8cpp_source.html">AbstractState.cpp</a></li>
|
|
2162
2160
|
</ul>
|
|
2163
2161
|
</div><!-- contents -->
|
|
2164
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_ab409b0084c202ddf437b45873d6992c6"><div class="ttname"><a href="classSVF_1_1AbstractState.html#ab409b0084c202ddf437b45873d6992c6">SVF::AbstractState::getLocToVal</a></div><div class="ttdeci">const LocToAbsValMap & getLocToVal() const</div><div class="ttdoc">get loc2val map</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00260">AbstractState.h:260</a></div></div>
|
|
2165
2162
|
<div class="ttc" id="aCommandLine_8h_html_a2429346d37bd4c40889bd7c6d319d9da"><div class="ttname"><a href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="CommandLine_8h_source.html#l00018">CommandLine.h:18</a></div></div>
|
|
2166
2163
|
<div class="ttc" id="astructSVF_1_1AbstractValue_html_ab1fe6a57f784971b3bc603dbfda746e8"><div class="ttname"><a href="structSVF_1_1AbstractValue.html#ab1fe6a57f784971b3bc603dbfda746e8">SVF::AbstractValue::getAddrs</a></div><div class="ttdeci">AddressValue & getAddrs()</div><div class="ttdef"><b>Definition:</b> <a href="AbstractValue_8h_source.html#l00171">AbstractValue.h:171</a></div></div>
|
|
2167
2164
|
<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>
|
|
2168
|
-
<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#
|
|
2169
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aad7588fead712273f6679d00759c06ea"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aad7588fead712273f6679d00759c06ea">SVF::AbstractState::isNullPtr</a></div><div class="ttdeci">static bool isNullPtr(u32_t addr)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
2165
|
+
<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>
|
|
2166
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aad7588fead712273f6679d00759c06ea"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aad7588fead712273f6679d00759c06ea">SVF::AbstractState::isNullPtr</a></div><div class="ttdeci">static bool isNullPtr(u32_t addr)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00098">AbstractState.h:98</a></div></div>
|
|
2170
2167
|
<div class="ttc" id="aclassSVF_1_1IntervalValue_html_add3acad151d5af6c9a5f692f7a01e65b"><div class="ttname"><a href="classSVF_1_1IntervalValue.html#add3acad151d5af6c9a5f692f7a01e65b">SVF::IntervalValue::top</a></div><div class="ttdeci">static IntervalValue top()</div><div class="ttdoc">Create the IntervalValue [-oo, +oo].</div><div class="ttdef"><b>Definition:</b> <a href="IntervalValue_8h_source.html#l00083">IntervalValue.h:83</a></div></div>
|
|
2171
2168
|
<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>
|
|
2172
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_adb1ce2a16c501aefa7c902e9bec012f6"><div class="ttname"><a href="classSVF_1_1AbstractState.html#adb1ce2a16c501aefa7c902e9bec012f6">SVF::AbstractState::eqVarToValMap</a></div><div class="ttdeci">static bool eqVarToValMap(const VarToAbsValMap &lhs, const VarToAbsValMap &rhs)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
2173
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_ad3eefae77eb1fc4bbcfe70b0f2f51dd4"><div class="ttname"><a href="classSVF_1_1AbstractState.html#ad3eefae77eb1fc4bbcfe70b0f2f51dd4">SVF::AbstractState::isVirtualMemAddress</a></div><div class="ttdeci">static bool isVirtualMemAddress(u32_t val)</div><div class="ttdoc">Check bit value of val start with 0x7F000000, filter by 0xFF000000.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#
|
|
2169
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_adb1ce2a16c501aefa7c902e9bec012f6"><div class="ttname"><a href="classSVF_1_1AbstractState.html#adb1ce2a16c501aefa7c902e9bec012f6">SVF::AbstractState::eqVarToValMap</a></div><div class="ttdeci">static bool eqVarToValMap(const VarToAbsValMap &lhs, const VarToAbsValMap &rhs)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00354">AbstractState.h:354</a></div></div>
|
|
2170
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_ad3eefae77eb1fc4bbcfe70b0f2f51dd4"><div class="ttname"><a href="classSVF_1_1AbstractState.html#ad3eefae77eb1fc4bbcfe70b0f2f51dd4">SVF::AbstractState::isVirtualMemAddress</a></div><div class="ttdeci">static bool isVirtualMemAddress(u32_t val)</div><div class="ttdoc">Check bit value of val start with 0x7F000000, filter by 0xFF000000.</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00087">AbstractState.h:87</a></div></div>
|
|
2174
2171
|
<div class="ttc" id="aclassSVF_1_1AddressValue_html_a3be7a2e3ec3215b67cd60f122d2cd10e"><div class="ttname"><a href="classSVF_1_1AddressValue.html#a3be7a2e3ec3215b67cd60f122d2cd10e">SVF::AddressValue::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="AddressValue_8h_source.html#l00224">AddressValue.h:224</a></div></div>
|
|
2175
2172
|
<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>
|
|
2176
2173
|
<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>
|
|
2177
2174
|
<div class="ttc" id="anamespaceSVF_html_a9b707002523ece2ac54ca893ee9a2d4e"><div class="ttname"><a href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">SVF::s32_t</a></div><div class="ttdeci">signed s32_t</div><div class="ttdef"><b>Definition:</b> <a href="GeneralType_8h_source.html#l00047">GeneralType.h:47</a></div></div>
|
|
2178
2175
|
<div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_a72502f7f536418621485e90ab98c2016"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVF::SVFUtil::move</a></div><div class="ttdeci">constexpr std::remove_reference< T >::type && move(T &&t) noexcept</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8h_source.html#l00621">SVFUtil.h:621</a></div></div>
|
|
2179
2176
|
<div class="ttc" id="aclassSVF_1_1AddressValue_html_ab76f47f97262d40dbbee12f466f746e8"><div class="ttname"><a href="classSVF_1_1AddressValue.html#ab76f47f97262d40dbbee12f466f746e8">SVF::AddressValue::isVirtualMemAddress</a></div><div class="ttdeci">static bool isVirtualMemAddress(u32_t val)</div><div class="ttdoc">Check bit value of val start with 0x7F000000, filter by 0xFF000000.</div><div class="ttdef"><b>Definition:</b> <a href="AddressValue_8h_source.html#l00218">AddressValue.h:218</a></div></div>
|
|
2180
|
-
<div class="ttc" id="
|
|
2177
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_ab8d9bf4a917a4691037ae08e2b634624"><div class="ttname"><a href="classSVF_1_1AbstractState.html#ab8d9bf4a917a4691037ae08e2b634624">SVF::AbstractState::getLocToVal</a></div><div class="ttdeci">const AddrToAbsValMap & getLocToVal() const</div><div class="ttdoc">get loc2val map</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00259">AbstractState.h:259</a></div></div>
|
|
2178
|
+
<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>
|
|
2181
2179
|
<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>
|
|
2182
2180
|
<div class="ttc" id="aclassSVF_1_1AddressValue_html_aa6ccc9882f89804cd6566e3dfe3dfdc8"><div class="ttname"><a href="classSVF_1_1AddressValue.html#aa6ccc9882f89804cd6566e3dfe3dfdc8">SVF::AddressValue::getVirtualMemAddress</a></div><div class="ttdeci">static u32_t getVirtualMemAddress(u32_t idx)</div><div class="ttdoc">The physical address starts with 0x7f...... + idx.</div><div class="ttdef"><b>Definition:</b> <a href="AddressValue_8h_source.html#l00212">AddressValue.h:212</a></div></div>
|
|
2183
|
-
<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#
|
|
2184
|
-
<div class="ttc" id="
|
|
2185
|
-
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a16486a0c6d9a1bb1ac19673b41a16a0e"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a16486a0c6d9a1bb1ac19673b41a16a0e">SVF::AbstractState::geqVarToValMap</a></div><div class="ttdeci">static bool geqVarToValMap(const VarToAbsValMap &lhs, const VarToAbsValMap &rhs)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00403">AbstractState.h:403</a></div></div>
|
|
2181
|
+
<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>
|
|
2182
|
+
<div class="ttc" id="aclassSVF_1_1AbstractState_html_a16486a0c6d9a1bb1ac19673b41a16a0e"><div class="ttname"><a href="classSVF_1_1AbstractState.html#a16486a0c6d9a1bb1ac19673b41a16a0e">SVF::AbstractState::geqVarToValMap</a></div><div class="ttdeci">static bool geqVarToValMap(const VarToAbsValMap &lhs, const VarToAbsValMap &rhs)</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00402">AbstractState.h:402</a></div></div>
|
|
2186
2183
|
<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>
|
|
2187
2184
|
<div class="ttc" id="aclassSVF_1_1AbstractState_html_aac4048e1e39f2dbc16f20b7ffe61af5e"><div class="ttname"><a href="classSVF_1_1AbstractState.html#aac4048e1e39f2dbc16f20b7ffe61af5e">SVF::AbstractState::AbstractState</a></div><div class="ttdeci">AbstractState()</div><div class="ttdoc">default constructor</div><div class="ttdef"><b>Definition:</b> <a href="AbstractState_8h_source.html#l00065">AbstractState.h:65</a></div></div>
|
|
2188
2185
|
<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>
|
|
2186
|
+
<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>
|
|
2189
2187
|
<!-- start footer part -->
|
|
2190
2188
|
<hr class="footer"/><address class="footer"><small>
|
|
2191
2189
|
Generated by  <a href="http://www.doxygen.org/index.html">
|