svf-tools 1.0.812 → 1.0.813
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/ConsExeState_8cpp_source.html +21 -21
- package/SVF-doxygen/html/ConsExeState_8h_source.html +384 -385
- package/SVF-doxygen/html/ExeState_8cpp_source.html +24 -24
- package/SVF-doxygen/html/ExeState_8h_source.html +227 -217
- package/SVF-doxygen/html/IntervalExeState_8cpp_source.html +8 -8
- package/SVF-doxygen/html/IntervalExeState_8h_source.html +412 -408
- package/SVF-doxygen/html/RelationSolver_8cpp_source.html +3 -3
- package/SVF-doxygen/html/SVFIR2ConsExeState_8cpp_source.html +43 -43
- package/SVF-doxygen/html/SVFIR2ConsExeState_8h_source.html +18 -18
- package/SVF-doxygen/html/SVFIR2ItvExeState_8cpp_source.html +250 -262
- package/SVF-doxygen/html/SVFIR2ItvExeState_8h_source.html +103 -101
- package/SVF-doxygen/html/SymState_8h_source.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1ConsExeState-members.html +74 -74
- package/SVF-doxygen/html/classSVF_1_1ConsExeState.html +412 -394
- package/SVF-doxygen/html/classSVF_1_1ExeState-members.html +34 -34
- package/SVF-doxygen/html/classSVF_1_1ExeState.html +287 -272
- package/SVF-doxygen/html/classSVF_1_1IntervalExeState-members.html +78 -78
- package/SVF-doxygen/html/classSVF_1_1IntervalExeState.html +445 -434
- package/SVF-doxygen/html/classSVF_1_1RelationSolver.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ConsExeState-members.html +28 -28
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ConsExeState.html +77 -77
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState-members.html +40 -40
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState.html +372 -372
- package/SVF-doxygen/html/classSVF_1_1SymState.html +2 -2
- package/SVF-doxygen/html/functions.html +6 -6
- package/SVF-doxygen/html/functions_a.html +13 -8
- package/SVF-doxygen/html/functions_b.html +3 -3
- package/SVF-doxygen/html/functions_e.html +2 -2
- package/SVF-doxygen/html/functions_func_e.html +2 -2
- package/SVF-doxygen/html/functions_func_g.html +32 -35
- package/SVF-doxygen/html/functions_func_i.html +11 -21
- package/SVF-doxygen/html/functions_func_l.html +6 -6
- package/SVF-doxygen/html/functions_func_n.html +3 -3
- package/SVF-doxygen/html/functions_func_p.html +2 -2
- package/SVF-doxygen/html/functions_func_s.html +7 -7
- package/SVF-doxygen/html/functions_func_w.html +3 -3
- package/SVF-doxygen/html/functions_g.html +27 -30
- package/SVF-doxygen/html/functions_i.html +13 -23
- package/SVF-doxygen/html/functions_l.html +8 -8
- package/SVF-doxygen/html/functions_n.html +7 -7
- package/SVF-doxygen/html/functions_o.html +4 -4
- package/SVF-doxygen/html/functions_p.html +9 -9
- package/SVF-doxygen/html/functions_r.html +1 -1
- package/SVF-doxygen/html/functions_s.html +19 -17
- package/SVF-doxygen/html/functions_t.html +7 -7
- package/SVF-doxygen/html/functions_type.html +5 -0
- package/SVF-doxygen/html/functions_type_v.html +3 -8
- package/SVF-doxygen/html/functions_v.html +13 -16
- package/SVF-doxygen/html/functions_vars.html +6 -6
- package/SVF-doxygen/html/functions_vars_g.html +2 -2
- package/SVF-doxygen/html/functions_w.html +3 -3
- package/SVF-doxygen/html/search/all_0.js +4 -4
- package/SVF-doxygen/html/search/all_1.js +210 -209
- package/SVF-doxygen/html/search/all_10.js +324 -324
- package/SVF-doxygen/html/search/all_11.js +222 -222
- package/SVF-doxygen/html/search/all_12.js +544 -544
- package/SVF-doxygen/html/search/all_13.js +191 -191
- package/SVF-doxygen/html/search/all_14.js +67 -67
- package/SVF-doxygen/html/search/all_15.js +167 -169
- package/SVF-doxygen/html/search/all_16.js +63 -63
- 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 +11 -11
- package/SVF-doxygen/html/search/all_1a.js +172 -172
- package/SVF-doxygen/html/search/all_2.js +169 -169
- package/SVF-doxygen/html/search/all_3.js +642 -642
- package/SVF-doxygen/html/search/all_4.js +233 -233
- package/SVF-doxygen/html/search/all_5.js +119 -119
- package/SVF-doxygen/html/search/all_6.js +225 -225
- package/SVF-doxygen/html/search/all_7.js +946 -947
- package/SVF-doxygen/html/search/all_9.js +481 -486
- package/SVF-doxygen/html/search/all_a.js +46 -46
- package/SVF-doxygen/html/search/all_b.js +26 -26
- package/SVF-doxygen/html/search/all_c.js +116 -116
- package/SVF-doxygen/html/search/all_d.js +196 -196
- package/SVF-doxygen/html/search/all_e.js +207 -207
- package/SVF-doxygen/html/search/all_f.js +115 -115
- package/SVF-doxygen/html/search/classes_0.js +26 -26
- package/SVF-doxygen/html/search/classes_1.js +9 -9
- package/SVF-doxygen/html/search/classes_10.js +73 -73
- package/SVF-doxygen/html/search/classes_11.js +15 -15
- 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 +14 -14
- package/SVF-doxygen/html/search/classes_15.js +1 -1
- package/SVF-doxygen/html/search/classes_2.js +80 -80
- package/SVF-doxygen/html/search/classes_3.js +37 -37
- package/SVF-doxygen/html/search/classes_4.js +9 -9
- package/SVF-doxygen/html/search/classes_5.js +28 -28
- package/SVF-doxygen/html/search/classes_6.js +104 -104
- package/SVF-doxygen/html/search/classes_7.js +33 -33
- package/SVF-doxygen/html/search/classes_8.js +56 -56
- 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 +18 -18
- 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 +2 -2
- package/SVF-doxygen/html/search/defines_2.js +30 -30
- package/SVF-doxygen/html/search/defines_3.js +21 -21
- package/SVF-doxygen/html/search/defines_4.js +2 -2
- 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 +7 -7
- package/SVF-doxygen/html/search/defines_f.js +3 -3
- 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 +8 -8
- package/SVF-doxygen/html/search/enums_3.js +1 -1
- 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 +14 -14
- package/SVF-doxygen/html/search/enumvalues_1.js +14 -14
- package/SVF-doxygen/html/search/enumvalues_10.js +35 -35
- package/SVF-doxygen/html/search/enumvalues_11.js +3 -3
- 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 +3 -3
- 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 +47 -47
- package/SVF-doxygen/html/search/enumvalues_6.js +6 -6
- package/SVF-doxygen/html/search/enumvalues_7.js +9 -9
- package/SVF-doxygen/html/search/enumvalues_8.js +23 -23
- package/SVF-doxygen/html/search/enumvalues_9.js +6 -6
- package/SVF-doxygen/html/search/enumvalues_a.js +15 -15
- 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 +18 -18
- package/SVF-doxygen/html/search/enumvalues_e.js +9 -9
- package/SVF-doxygen/html/search/enumvalues_f.js +45 -45
- package/SVF-doxygen/html/search/files_0.js +13 -13
- package/SVF-doxygen/html/search/files_1.js +7 -7
- 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 +55 -55
- package/SVF-doxygen/html/search/files_3.js +14 -14
- package/SVF-doxygen/html/search/files_4.js +5 -5
- package/SVF-doxygen/html/search/files_5.js +13 -13
- package/SVF-doxygen/html/search/files_6.js +9 -9
- package/SVF-doxygen/html/search/files_7.js +14 -14
- 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 +2 -2
- 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 +62 -62
- package/SVF-doxygen/html/search/files_f.js +8 -8
- package/SVF-doxygen/html/search/functions_0.js +12 -12
- package/SVF-doxygen/html/search/functions_1.js +360 -360
- package/SVF-doxygen/html/search/functions_10.js +140 -140
- package/SVF-doxygen/html/search/functions_11.js +138 -138
- package/SVF-doxygen/html/search/functions_12.js +279 -279
- package/SVF-doxygen/html/search/functions_13.js +59 -59
- package/SVF-doxygen/html/search/functions_14.js +39 -39
- package/SVF-doxygen/html/search/functions_15.js +71 -71
- package/SVF-doxygen/html/search/functions_16.js +32 -32
- package/SVF-doxygen/html/search/functions_17.js +3 -3
- package/SVF-doxygen/html/search/functions_18.js +172 -172
- package/SVF-doxygen/html/search/functions_2.js +87 -87
- package/SVF-doxygen/html/search/functions_3.js +257 -257
- package/SVF-doxygen/html/search/functions_4.js +75 -75
- package/SVF-doxygen/html/search/functions_5.js +53 -53
- package/SVF-doxygen/html/search/functions_6.js +59 -59
- package/SVF-doxygen/html/search/functions_7.js +852 -853
- package/SVF-doxygen/html/search/functions_8.js +149 -149
- package/SVF-doxygen/html/search/functions_9.js +423 -428
- 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 +26 -26
- package/SVF-doxygen/html/search/functions_d.js +77 -77
- package/SVF-doxygen/html/search/functions_e.js +35 -35
- package/SVF-doxygen/html/search/functions_f.js +56 -56
- 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 +2 -2
- 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 +4 -4
- 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 +1 -1
- package/SVF-doxygen/html/search/related_d.js +12 -12
- 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 +19 -18
- package/SVF-doxygen/html/search/typedefs_1.js +26 -26
- package/SVF-doxygen/html/search/typedefs_10.js +61 -61
- package/SVF-doxygen/html/search/typedefs_11.js +13 -13
- package/SVF-doxygen/html/search/typedefs_12.js +11 -11
- package/SVF-doxygen/html/search/typedefs_13.js +33 -34
- package/SVF-doxygen/html/search/typedefs_14.js +8 -8
- package/SVF-doxygen/html/search/typedefs_2.js +129 -129
- 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 +41 -41
- package/SVF-doxygen/html/search/typedefs_6.js +55 -55
- package/SVF-doxygen/html/search/typedefs_7.js +44 -44
- package/SVF-doxygen/html/search/typedefs_8.js +1 -1
- package/SVF-doxygen/html/search/typedefs_9.js +6 -6
- package/SVF-doxygen/html/search/typedefs_a.js +29 -29
- 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 +14 -14
- 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 +151 -151
- package/SVF-doxygen/html/search/variables_1.js +75 -75
- package/SVF-doxygen/html/search/variables_10.js +97 -97
- package/SVF-doxygen/html/search/variables_11.js +44 -44
- package/SVF-doxygen/html/search/variables_12.js +92 -92
- package/SVF-doxygen/html/search/variables_13.js +75 -75
- package/SVF-doxygen/html/search/variables_14.js +14 -14
- package/SVF-doxygen/html/search/variables_15.js +48 -48
- package/SVF-doxygen/html/search/variables_16.js +9 -9
- package/SVF-doxygen/html/search/variables_17.js +1 -1
- package/SVF-doxygen/html/search/variables_18.js +2 -2
- package/SVF-doxygen/html/search/variables_2.js +38 -38
- package/SVF-doxygen/html/search/variables_3.js +142 -142
- package/SVF-doxygen/html/search/variables_4.js +55 -55
- package/SVF-doxygen/html/search/variables_5.js +37 -37
- package/SVF-doxygen/html/search/variables_6.js +66 -66
- package/SVF-doxygen/html/search/variables_7.js +33 -33
- package/SVF-doxygen/html/search/variables_8.js +7 -7
- package/SVF-doxygen/html/search/variables_9.js +78 -78
- 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 +45 -45
- package/SVF-doxygen/html/search/variables_d.js +56 -56
- package/SVF-doxygen/html/search/variables_e.js +123 -123
- package/SVF-doxygen/html/search/variables_f.js +29 -29
- package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1ConsExeState_01_4.html +5 -5
- package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1ExeState_01_4.html +5 -5
- package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1IntervalExeState_01_4.html +5 -5
- package/SVF-doxygen/html/svf-ex_8cpp.html +7 -7
- package/SVF-doxygen/html/svf-ex_8cpp_source.html +7 -7
- package/package.json +1 -1
- package/svf/include/AbstractExecution/ConsExeState.h +99 -96
- package/svf/include/AbstractExecution/ExeState.h +66 -53
- package/svf/include/AbstractExecution/IntervalExeState.h +66 -61
- package/svf/include/AbstractExecution/SVFIR2ConsExeState.h +7 -7
- package/svf/include/AbstractExecution/SVFIR2ItvExeState.h +20 -14
- package/svf/lib/AbstractExecution/ConsExeState.cpp +13 -13
- package/svf/lib/AbstractExecution/ExeState.cpp +19 -19
- package/svf/lib/AbstractExecution/IntervalExeState.cpp +4 -4
- package/svf/lib/AbstractExecution/SVFIR2ConsExeState.cpp +36 -36
- package/svf/lib/AbstractExecution/SVFIR2ItvExeState.cpp +80 -92
|
@@ -96,12 +96,12 @@ Public Types</h2></td></tr>
|
|
|
96
96
|
<tr class="memitem:a259b93247e06141077b2c1ae15efcbb8"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a259b93247e06141077b2c1ae15efcbb8">ExeState_TYPE</a> { <a class="el" href="classSVF_1_1ExeState.html#a259b93247e06141077b2c1ae15efcbb8a39d5fb8ca9906072253f8af46b916351">IntervalK</a>,
|
|
97
97
|
<a class="el" href="classSVF_1_1ExeState.html#a259b93247e06141077b2c1ae15efcbb8acb163848414937d2331958216330a20e">SingleValueK</a>
|
|
98
98
|
}</td></tr>
|
|
99
|
-
<tr class="memdesc:a259b93247e06141077b2c1ae15efcbb8"><td class="mdescLeft"> </td><td class="mdescRight">Execution state
|
|
99
|
+
<tr class="memdesc:a259b93247e06141077b2c1ae15efcbb8"><td class="mdescLeft"> </td><td class="mdescRight">Execution state type. <a href="classSVF_1_1ExeState.html#a259b93247e06141077b2c1ae15efcbb8">More...</a><br /></td></tr>
|
|
100
100
|
<tr class="separator:a259b93247e06141077b2c1ae15efcbb8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
101
|
-
<tr class="memitem:
|
|
102
|
-
<tr class="separator:
|
|
103
|
-
<tr class="memitem:
|
|
104
|
-
<tr class="separator:
|
|
101
|
+
<tr class="memitem:a78038dd4884a501cfc94f073021eac96"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1AddressValue.html">AddressValue</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a></td></tr>
|
|
102
|
+
<tr class="separator:a78038dd4884a501cfc94f073021eac96"><td class="memSeparator" colspan="2"> </td></tr>
|
|
103
|
+
<tr class="memitem:a09f34aca79479221305769cae307feef"><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="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a></td></tr>
|
|
104
|
+
<tr class="separator:a09f34aca79479221305769cae307feef"><td class="memSeparator" colspan="2"> </td></tr>
|
|
105
105
|
</table><table class="memberdecls">
|
|
106
106
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
107
107
|
Public Member Functions</h2></td></tr>
|
|
@@ -117,12 +117,19 @@ Public Member Functions</h2></td></tr>
|
|
|
117
117
|
<tr class="separator:aebeb2054a8118fd33df9fef31bacda03"><td class="memSeparator" colspan="2"> </td></tr>
|
|
118
118
|
<tr class="memitem:ad706a7c5d1e4b198a74a0b5a8a89be8f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1ExeState.html">ExeState</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#ad706a7c5d1e4b198a74a0b5a8a89be8f">operator=</a> (<a class="el" href="classSVF_1_1ExeState.html">ExeState</a> &&rhs) noexcept</td></tr>
|
|
119
119
|
<tr class="separator:ad706a7c5d1e4b198a74a0b5a8a89be8f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
120
|
-
<tr class="memitem:
|
|
121
|
-
<tr class="
|
|
122
|
-
<tr class="
|
|
123
|
-
<tr class="
|
|
124
|
-
<tr class="
|
|
125
|
-
<tr class="separator:
|
|
120
|
+
<tr class="memitem:a3b340ae2aad86f6125d24b42ec8901d0"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a3b340ae2aad86f6125d24b42ec8901d0">getAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id)</td></tr>
|
|
121
|
+
<tr class="memdesc:a3b340ae2aad86f6125d24b42ec8901d0"><td class="mdescLeft"> </td><td class="mdescRight">get memory addresses of variable <a href="classSVF_1_1ExeState.html#a3b340ae2aad86f6125d24b42ec8901d0">More...</a><br /></td></tr>
|
|
122
|
+
<tr class="separator:a3b340ae2aad86f6125d24b42ec8901d0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
123
|
+
<tr class="memitem:a6dfff6d4302faeb80c78a512f32b529f"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a6dfff6d4302faeb80c78a512f32b529f">inVarToAddrsTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const</td></tr>
|
|
124
|
+
<tr class="memdesc:a6dfff6d4302faeb80c78a512f32b529f"><td class="mdescLeft"> </td><td class="mdescRight">whether the variable is in varToAddrs table <a href="classSVF_1_1ExeState.html#a6dfff6d4302faeb80c78a512f32b529f">More...</a><br /></td></tr>
|
|
125
|
+
<tr class="separator:a6dfff6d4302faeb80c78a512f32b529f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
126
|
+
<tr class="memitem:a54168f48a6c1fe983d20efce06a35710"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a54168f48a6c1fe983d20efce06a35710">inLocToAddrsTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const</td></tr>
|
|
127
|
+
<tr class="memdesc:a54168f48a6c1fe983d20efce06a35710"><td class="mdescLeft"> </td><td class="mdescRight">whether the memory address stores memory addresses <a href="classSVF_1_1ExeState.html#a54168f48a6c1fe983d20efce06a35710">More...</a><br /></td></tr>
|
|
128
|
+
<tr class="separator:a54168f48a6c1fe983d20efce06a35710"><td class="memSeparator" colspan="2"> </td></tr>
|
|
129
|
+
<tr class="memitem:a0710c9cc1a3c40c95cd362d49bea459b"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a0710c9cc1a3c40c95cd362d49bea459b">getVarToAddrs</a> () const</td></tr>
|
|
130
|
+
<tr class="separator:a0710c9cc1a3c40c95cd362d49bea459b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
131
|
+
<tr class="memitem:aa7b897b107d722909f9de9dcbabad7cf"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#aa7b897b107d722909f9de9dcbabad7cf">getLocToAddrs</a> () const</td></tr>
|
|
132
|
+
<tr class="separator:aa7b897b107d722909f9de9dcbabad7cf"><td class="memSeparator" colspan="2"> </td></tr>
|
|
126
133
|
<tr class="memitem:a60464bebe5f257bbe1356eee149524c0"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a60464bebe5f257bbe1356eee149524c0">joinWith</a> (const <a class="el" href="classSVF_1_1ExeState.html">ExeState</a> &other)</td></tr>
|
|
127
134
|
<tr class="memdesc:a60464bebe5f257bbe1356eee149524c0"><td class="mdescLeft"> </td><td class="mdescRight">Make all value join with the other. <a href="classSVF_1_1ExeState.html#a60464bebe5f257bbe1356eee149524c0">More...</a><br /></td></tr>
|
|
128
135
|
<tr class="separator:a60464bebe5f257bbe1356eee149524c0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -138,22 +145,18 @@ Public Member Functions</h2></td></tr>
|
|
|
138
145
|
<tr class="separator:af58dd98bbad68a7c72e16831be26c677"><td class="memSeparator" colspan="2"> </td></tr>
|
|
139
146
|
<tr class="memitem:ab7f7de02202838bb9e3da5410983cfb1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1ExeState.html#a259b93247e06141077b2c1ae15efcbb8">ExeState_TYPE</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#ab7f7de02202838bb9e3da5410983cfb1">getExeStateKind</a> () const</td></tr>
|
|
140
147
|
<tr class="separator:ab7f7de02202838bb9e3da5410983cfb1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
141
|
-
<tr class="memitem:
|
|
142
|
-
<tr class="separator:
|
|
143
|
-
<tr class="memitem:
|
|
144
|
-
<tr class="separator:
|
|
145
|
-
<tr class="memitem:a6dfff6d4302faeb80c78a512f32b529f"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a6dfff6d4302faeb80c78a512f32b529f">inVarToAddrsTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const</td></tr>
|
|
146
|
-
<tr class="separator:a6dfff6d4302faeb80c78a512f32b529f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
147
|
-
<tr class="memitem:a54168f48a6c1fe983d20efce06a35710"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a54168f48a6c1fe983d20efce06a35710">inLocToAddrsTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const</td></tr>
|
|
148
|
-
<tr class="separator:a54168f48a6c1fe983d20efce06a35710"><td class="memSeparator" colspan="2"> </td></tr>
|
|
149
|
-
<tr class="memitem:a789f023e4b5938324993b37021265f53"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classSVF_1_1ExeState.html#aa1355e828af78b55b5d23f2dffa330f1">VAddrs</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a789f023e4b5938324993b37021265f53">getVAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id)</td></tr>
|
|
150
|
-
<tr class="separator:a789f023e4b5938324993b37021265f53"><td class="memSeparator" colspan="2"> </td></tr>
|
|
151
|
-
<tr class="memitem:aad0556739ce5b173054c81cbbfff4b72"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#aad0556739ce5b173054c81cbbfff4b72">storeVAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> addr, const <a class="el" href="classSVF_1_1ExeState.html#aa1355e828af78b55b5d23f2dffa330f1">VAddrs</a> &vaddrs)</td></tr>
|
|
152
|
-
<tr class="separator:aad0556739ce5b173054c81cbbfff4b72"><td class="memSeparator" colspan="2"> </td></tr>
|
|
153
|
-
<tr class="memitem:a3c1ea75e3a97aa18d4d10a85c1829d83"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classSVF_1_1ExeState.html#aa1355e828af78b55b5d23f2dffa330f1">VAddrs</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a3c1ea75e3a97aa18d4d10a85c1829d83">loadVAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> addr)</td></tr>
|
|
154
|
-
<tr class="separator:a3c1ea75e3a97aa18d4d10a85c1829d83"><td class="memSeparator" colspan="2"> </td></tr>
|
|
148
|
+
<tr class="memitem:a99f4437a7e350fec131d48f52082d672"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a99f4437a7e350fec131d48f52082d672">storeAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> addr, const <a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> &vaddrs)</td></tr>
|
|
149
|
+
<tr class="separator:a99f4437a7e350fec131d48f52082d672"><td class="memSeparator" colspan="2"> </td></tr>
|
|
150
|
+
<tr class="memitem:a9e0fd700bea1ac741d96b4f52fd4756f"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a9e0fd700bea1ac741d96b4f52fd4756f">loadAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> addr)</td></tr>
|
|
151
|
+
<tr class="separator:a9e0fd700bea1ac741d96b4f52fd4756f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
155
152
|
<tr class="memitem:a8edd5f30ab971ce893ffdb39d8b6a265"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a8edd5f30ab971ce893ffdb39d8b6a265">isNullPtr</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> addr)</td></tr>
|
|
156
153
|
<tr class="separator:a8edd5f30ab971ce893ffdb39d8b6a265"><td class="memSeparator" colspan="2"> </td></tr>
|
|
154
|
+
<tr class="memitem:a0e4c8a41aa861ff2862d8b620c902f21"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a0e4c8a41aa861ff2862d8b620c902f21">operator==</a> (const <a class="el" href="classSVF_1_1ExeState.html">ExeState</a> &rhs) const</td></tr>
|
|
155
|
+
<tr class="separator:a0e4c8a41aa861ff2862d8b620c902f21"><td class="memSeparator" colspan="2"> </td></tr>
|
|
156
|
+
<tr class="memitem:ab828094e1026046814c1e3d44d3f084c"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#ab828094e1026046814c1e3d44d3f084c">operator!=</a> (const <a class="el" href="classSVF_1_1ExeState.html">ExeState</a> &rhs) const</td></tr>
|
|
157
|
+
<tr class="separator:ab828094e1026046814c1e3d44d3f084c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
158
|
+
<tr class="memitem:a45be8c439528b7560024fa51f36a8ffb"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a45be8c439528b7560024fa51f36a8ffb">equals</a> (const <a class="el" href="classSVF_1_1ExeState.html">ExeState</a> *other) const</td></tr>
|
|
159
|
+
<tr class="separator:a45be8c439528b7560024fa51f36a8ffb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
157
160
|
<tr class="memitem:aa01e978f41f4134257b380994e3b8409"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#aa01e978f41f4134257b380994e3b8409">varToAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> varId) const</td></tr>
|
|
158
161
|
<tr class="separator:aa01e978f41f4134257b380994e3b8409"><td class="memSeparator" colspan="2"> </td></tr>
|
|
159
162
|
<tr class="memitem:ad2f921623e41209c6702534c98431403"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#ad2f921623e41209c6702534c98431403">locToAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> objId) const</td></tr>
|
|
@@ -175,15 +178,17 @@ Static Public Member Functions</h2></td></tr>
|
|
|
175
178
|
</table><table class="memberdecls">
|
|
176
179
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-static-methods"></a>
|
|
177
180
|
Static Protected Member Functions</h2></td></tr>
|
|
178
|
-
<tr class="memitem:
|
|
179
|
-
<tr class="separator:
|
|
181
|
+
<tr class="memitem:a0a24ad3ced48b6755b7fc917d0f0fbb9"><td class="memItemLeft" align="right" valign="top">static bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a0a24ad3ced48b6755b7fc917d0f0fbb9">eqVarToAddrs</a> (const <a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> &lhs, const <a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> &rhs)</td></tr>
|
|
182
|
+
<tr class="separator:a0a24ad3ced48b6755b7fc917d0f0fbb9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
180
183
|
</table><table class="memberdecls">
|
|
181
184
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
|
|
182
185
|
Protected Attributes</h2></td></tr>
|
|
183
|
-
<tr class="memitem:
|
|
184
|
-
<tr class="
|
|
185
|
-
<tr class="
|
|
186
|
-
<tr class="
|
|
186
|
+
<tr class="memitem:ad317f2ae2e599a131a6fd9f415f5d712"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a> {{0, <a class="el" href="classSVF_1_1ExeState.html#a2f01e583abcdeb236a11e85c7a8aafdc">getVirtualMemAddress</a>(0)}}</td></tr>
|
|
187
|
+
<tr class="memdesc:ad317f2ae2e599a131a6fd9f415f5d712"><td class="mdescLeft"> </td><td class="mdescRight">Map a variable (symbol) to its memory addresses. <a href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">More...</a><br /></td></tr>
|
|
188
|
+
<tr class="separator:ad317f2ae2e599a131a6fd9f415f5d712"><td class="memSeparator" colspan="2"> </td></tr>
|
|
189
|
+
<tr class="memitem:a79866a547dc4805d3fefdfd528d2df2a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a></td></tr>
|
|
190
|
+
<tr class="memdesc:a79866a547dc4805d3fefdfd528d2df2a"><td class="mdescLeft"> </td><td class="mdescRight">Map a memory address to its stored memory addresses. <a href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">More...</a><br /></td></tr>
|
|
191
|
+
<tr class="separator:a79866a547dc4805d3fefdfd528d2df2a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
187
192
|
</table><table class="memberdecls">
|
|
188
193
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
|
|
189
194
|
Private Attributes</h2></td></tr>
|
|
@@ -200,14 +205,14 @@ Friends</h2></td></tr>
|
|
|
200
205
|
|
|
201
206
|
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00046">46</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
202
207
|
</div><h2 class="groupheader">Member Typedef Documentation</h2>
|
|
203
|
-
<a id="
|
|
204
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
208
|
+
<a id="a78038dd4884a501cfc94f073021eac96"></a>
|
|
209
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a78038dd4884a501cfc94f073021eac96">◆ </a></span>Addrs</h2>
|
|
205
210
|
|
|
206
211
|
<div class="memitem">
|
|
207
212
|
<div class="memproto">
|
|
208
213
|
<table class="memname">
|
|
209
214
|
<tr>
|
|
210
|
-
<td class="memname">typedef <a class="el" href="classSVF_1_1AddressValue.html">AddressValue</a> <a class="el" href="classSVF_1_1ExeState.html#
|
|
215
|
+
<td class="memname">typedef <a class="el" href="classSVF_1_1AddressValue.html">AddressValue</a> <a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">SVF::ExeState::Addrs</a></td>
|
|
211
216
|
</tr>
|
|
212
217
|
</table>
|
|
213
218
|
</div><div class="memdoc">
|
|
@@ -216,14 +221,14 @@ Friends</h2></td></tr>
|
|
|
216
221
|
|
|
217
222
|
</div>
|
|
218
223
|
</div>
|
|
219
|
-
<a id="
|
|
220
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
224
|
+
<a id="a09f34aca79479221305769cae307feef"></a>
|
|
225
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a09f34aca79479221305769cae307feef">◆ </a></span>VarToAddrs</h2>
|
|
221
226
|
|
|
222
227
|
<div class="memitem">
|
|
223
228
|
<div class="memproto">
|
|
224
229
|
<table class="memname">
|
|
225
230
|
<tr>
|
|
226
|
-
<td class="memname">typedef <a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a><<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>, <a class="el" href="classSVF_1_1ExeState.html#
|
|
231
|
+
<td class="memname">typedef <a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a><<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>, <a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a>> <a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">SVF::ExeState::VarToAddrs</a></td>
|
|
227
232
|
</tr>
|
|
228
233
|
</table>
|
|
229
234
|
</div><div class="memdoc">
|
|
@@ -245,7 +250,7 @@ Friends</h2></td></tr>
|
|
|
245
250
|
</table>
|
|
246
251
|
</div><div class="memdoc">
|
|
247
252
|
|
|
248
|
-
<p>Execution state
|
|
253
|
+
<p>Execution state type. </p>
|
|
249
254
|
<table class="fieldtable">
|
|
250
255
|
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a259b93247e06141077b2c1ae15efcbb8a39d5fb8ca9906072253f8af46b916351"></a>IntervalK </td><td class="fielddoc"></td></tr>
|
|
251
256
|
<tr><td class="fieldname"><a id="a259b93247e06141077b2c1ae15efcbb8acb163848414937d2331958216330a20e"></a>SingleValueK </td><td class="fielddoc"></td></tr>
|
|
@@ -338,8 +343,8 @@ Friends</h2></td></tr>
|
|
|
338
343
|
</div><div class="memdoc">
|
|
339
344
|
|
|
340
345
|
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00067">67</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
341
|
-
<div class="fragment"><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  : <a class="code" href="classSVF_1_1ExeState.html#
|
|
342
|
-
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <a class="code" href="classSVF_1_1ExeState.html#
|
|
346
|
+
<div class="fragment"><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  : <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>(rhs._varToAddrs),</div>
|
|
347
|
+
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>(rhs._locToAddrs) {}</div>
|
|
343
348
|
</div><!-- fragment -->
|
|
344
349
|
</div>
|
|
345
350
|
</div>
|
|
@@ -368,8 +373,8 @@ Friends</h2></td></tr>
|
|
|
368
373
|
</div><div class="memdoc">
|
|
369
374
|
|
|
370
375
|
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00070">70</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
371
|
-
<div class="fragment"><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  : <a class="code" href="classSVF_1_1ExeState.html#
|
|
372
|
-
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <a class="code" href="classSVF_1_1ExeState.html#
|
|
376
|
+
<div class="fragment"><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  : <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">std::move</a>(rhs._varToAddrs)),</div>
|
|
377
|
+
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">std::move</a>(rhs._locToAddrs)) {}</div>
|
|
373
378
|
</div><!-- fragment -->
|
|
374
379
|
</div>
|
|
375
380
|
</div>
|
|
@@ -398,15 +403,15 @@ Friends</h2></td></tr>
|
|
|
398
403
|
</table>
|
|
399
404
|
</div><div class="memdoc">
|
|
400
405
|
|
|
401
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
402
|
-
<div class="fragment"><div class="line"><a name="
|
|
403
|
-
<div class="line"><a name="
|
|
404
|
-
<div class="line"><a name="
|
|
406
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00183">183</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
407
|
+
<div class="fragment"><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  {</div>
|
|
408
|
+
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
409
|
+
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  }</div>
|
|
405
410
|
</div><!-- fragment -->
|
|
406
411
|
</div>
|
|
407
412
|
</div>
|
|
408
|
-
<a id="
|
|
409
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
413
|
+
<a id="a0a24ad3ced48b6755b7fc917d0f0fbb9"></a>
|
|
414
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a0a24ad3ced48b6755b7fc917d0f0fbb9">◆ </a></span>eqVarToAddrs()</h2>
|
|
410
415
|
|
|
411
416
|
<div class="memitem">
|
|
412
417
|
<div class="memproto">
|
|
@@ -415,15 +420,15 @@ Friends</h2></td></tr>
|
|
|
415
420
|
<td class="mlabels-left">
|
|
416
421
|
<table class="memname">
|
|
417
422
|
<tr>
|
|
418
|
-
<td class="memname">static bool SVF::ExeState::
|
|
423
|
+
<td class="memname">static bool SVF::ExeState::eqVarToAddrs </td>
|
|
419
424
|
<td>(</td>
|
|
420
|
-
<td class="paramtype">const <a class="el" href="classSVF_1_1ExeState.html#
|
|
425
|
+
<td class="paramtype">const <a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> & </td>
|
|
421
426
|
<td class="paramname"><em>lhs</em>, </td>
|
|
422
427
|
</tr>
|
|
423
428
|
<tr>
|
|
424
429
|
<td class="paramkey"></td>
|
|
425
430
|
<td></td>
|
|
426
|
-
<td class="paramtype">const <a class="el" href="classSVF_1_1ExeState.html#
|
|
431
|
+
<td class="paramtype">const <a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> & </td>
|
|
427
432
|
<td class="paramname"><em>rhs</em> </td>
|
|
428
433
|
</tr>
|
|
429
434
|
<tr>
|
|
@@ -439,21 +444,56 @@ Friends</h2></td></tr>
|
|
|
439
444
|
</table>
|
|
440
445
|
</div><div class="memdoc">
|
|
441
446
|
|
|
442
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
443
|
-
<div class="fragment"><div class="line"><a name="
|
|
444
|
-
<div class="line"><a name="
|
|
445
|
-
<div class="line"><a name="
|
|
446
|
-
<div class="line"><a name="
|
|
447
|
-
<div class="line"><a name="
|
|
448
|
-
<div class="line"><a name="
|
|
449
|
-
<div class="line"><a name="
|
|
450
|
-
<div class="line"><a name="
|
|
451
|
-
<div class="line"><a name="
|
|
452
|
-
<div class="line"><a name="
|
|
453
|
-
<div class="line"><a name="
|
|
454
|
-
<div class="line"><a name="
|
|
455
|
-
<div class="line"><a name="
|
|
456
|
-
<div class="line"><a name="
|
|
447
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00190">190</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
448
|
+
<div class="fragment"><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  {</div>
|
|
449
|
+
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  <span class="keywordflow">if</span> (lhs.size() != rhs.size()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
450
|
+
<div class="line"><a name="l00193"></a><span class="lineno"> 193</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>
|
|
451
|
+
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>  {</div>
|
|
452
|
+
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  <span class="keyword">auto</span> it = rhs.find(<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first);</div>
|
|
453
|
+
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>  <span class="keywordflow">if</span> (it == rhs.end())</div>
|
|
454
|
+
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
455
|
+
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  <span class="keywordflow">if</span> (<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second != it->second)</div>
|
|
456
|
+
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  {</div>
|
|
457
|
+
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
458
|
+
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  }</div>
|
|
459
|
+
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  }</div>
|
|
460
|
+
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
461
|
+
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  }</div>
|
|
462
|
+
</div><!-- fragment -->
|
|
463
|
+
</div>
|
|
464
|
+
</div>
|
|
465
|
+
<a id="a3b340ae2aad86f6125d24b42ec8901d0"></a>
|
|
466
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a3b340ae2aad86f6125d24b42ec8901d0">◆ </a></span>getAddrs()</h2>
|
|
467
|
+
|
|
468
|
+
<div class="memitem">
|
|
469
|
+
<div class="memproto">
|
|
470
|
+
<table class="mlabels">
|
|
471
|
+
<tr>
|
|
472
|
+
<td class="mlabels-left">
|
|
473
|
+
<table class="memname">
|
|
474
|
+
<tr>
|
|
475
|
+
<td class="memname">virtual <a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a>& SVF::ExeState::getAddrs </td>
|
|
476
|
+
<td>(</td>
|
|
477
|
+
<td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td>
|
|
478
|
+
<td class="paramname"><em>id</em></td><td>)</td>
|
|
479
|
+
<td></td>
|
|
480
|
+
</tr>
|
|
481
|
+
</table>
|
|
482
|
+
</td>
|
|
483
|
+
<td class="mlabels-right">
|
|
484
|
+
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
|
|
485
|
+
</tr>
|
|
486
|
+
</table>
|
|
487
|
+
</div><div class="memdoc">
|
|
488
|
+
|
|
489
|
+
<p>get memory addresses of variable </p>
|
|
490
|
+
|
|
491
|
+
<p>Reimplemented in <a class="el" href="classSVF_1_1IntervalExeState.html#a056e0db56033ac4dc041e6d82d614dbd">SVF::IntervalExeState</a>, and <a class="el" href="classSVF_1_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">SVF::ConsExeState</a>.</p>
|
|
492
|
+
|
|
493
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00101">101</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
494
|
+
<div class="fragment"><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  {</div>
|
|
495
|
+
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>[id];</div>
|
|
496
|
+
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  }</div>
|
|
457
497
|
</div><!-- fragment -->
|
|
458
498
|
</div>
|
|
459
499
|
</div>
|
|
@@ -480,10 +520,10 @@ Friends</h2></td></tr>
|
|
|
480
520
|
</table>
|
|
481
521
|
</div><div class="memdoc">
|
|
482
522
|
|
|
483
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
484
|
-
<div class="fragment"><div class="line"><a name="
|
|
485
|
-
<div class="line"><a name="
|
|
486
|
-
<div class="line"><a name="
|
|
523
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00265">265</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
524
|
+
<div class="fragment"><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  {</div>
|
|
525
|
+
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1Z3Expr.html#acfdff582a0188678c10939165a40df30">Z3Expr::getContext</a>();</div>
|
|
526
|
+
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  }</div>
|
|
487
527
|
</div><!-- fragment -->
|
|
488
528
|
</div>
|
|
489
529
|
</div>
|
|
@@ -510,10 +550,10 @@ Friends</h2></td></tr>
|
|
|
510
550
|
</table>
|
|
511
551
|
</div><div class="memdoc">
|
|
512
552
|
|
|
513
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
514
|
-
<div class="fragment"><div class="line"><a name="
|
|
515
|
-
<div class="line"><a name="
|
|
516
|
-
<div class="line"><a name="
|
|
553
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00146">146</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
554
|
+
<div class="fragment"><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  {</div>
|
|
555
|
+
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a2545017305d54f6416ba48cb45e43cb8">_kind</a>;</div>
|
|
556
|
+
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  }</div>
|
|
517
557
|
</div><!-- fragment -->
|
|
518
558
|
</div>
|
|
519
559
|
</div>
|
|
@@ -543,15 +583,15 @@ Friends</h2></td></tr>
|
|
|
543
583
|
|
|
544
584
|
<p>Return the internal index if idx is an address otherwise return the value of idx. </p>
|
|
545
585
|
|
|
546
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
547
|
-
<div class="fragment"><div class="line"><a name="
|
|
548
|
-
<div class="line"><a name="
|
|
549
|
-
<div class="line"><a name="
|
|
586
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00283">283</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
587
|
+
<div class="fragment"><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  {</div>
|
|
588
|
+
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AddressValue.html#a3be7a2e3ec3215b67cd60f122d2cd10e">AddressValue::getInternalID</a>(idx);</div>
|
|
589
|
+
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  }</div>
|
|
550
590
|
</div><!-- fragment -->
|
|
551
591
|
</div>
|
|
552
592
|
</div>
|
|
553
|
-
<a id="
|
|
554
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
593
|
+
<a id="aa7b897b107d722909f9de9dcbabad7cf"></a>
|
|
594
|
+
<h2 class="memtitle"><span class="permalink"><a href="#aa7b897b107d722909f9de9dcbabad7cf">◆ </a></span>getLocToAddrs()</h2>
|
|
555
595
|
|
|
556
596
|
<div class="memitem">
|
|
557
597
|
<div class="memproto">
|
|
@@ -560,7 +600,7 @@ Friends</h2></td></tr>
|
|
|
560
600
|
<td class="mlabels-left">
|
|
561
601
|
<table class="memname">
|
|
562
602
|
<tr>
|
|
563
|
-
<td class="memname">virtual const <a class="el" href="classSVF_1_1ExeState.html#
|
|
603
|
+
<td class="memname">virtual const <a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a>& SVF::ExeState::getLocToAddrs </td>
|
|
564
604
|
<td>(</td>
|
|
565
605
|
<td class="paramname"></td><td>)</td>
|
|
566
606
|
<td> const</td>
|
|
@@ -573,48 +613,15 @@ Friends</h2></td></tr>
|
|
|
573
613
|
</table>
|
|
574
614
|
</div><div class="memdoc">
|
|
575
615
|
|
|
576
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
577
|
-
<div class="fragment"><div class="line"><a name="
|
|
578
|
-
<div class="line"><a name="
|
|
579
|
-
<div class="line"><a name="
|
|
580
|
-
</div><!-- fragment -->
|
|
581
|
-
</div>
|
|
582
|
-
</div>
|
|
583
|
-
<a id="a789f023e4b5938324993b37021265f53"></a>
|
|
584
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a789f023e4b5938324993b37021265f53">◆ </a></span>getVAddrs()</h2>
|
|
585
|
-
|
|
586
|
-
<div class="memitem">
|
|
587
|
-
<div class="memproto">
|
|
588
|
-
<table class="mlabels">
|
|
589
|
-
<tr>
|
|
590
|
-
<td class="mlabels-left">
|
|
591
|
-
<table class="memname">
|
|
592
|
-
<tr>
|
|
593
|
-
<td class="memname">virtual <a class="el" href="classSVF_1_1ExeState.html#aa1355e828af78b55b5d23f2dffa330f1">VAddrs</a>& SVF::ExeState::getVAddrs </td>
|
|
594
|
-
<td>(</td>
|
|
595
|
-
<td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td>
|
|
596
|
-
<td class="paramname"><em>id</em></td><td>)</td>
|
|
597
|
-
<td></td>
|
|
598
|
-
</tr>
|
|
599
|
-
</table>
|
|
600
|
-
</td>
|
|
601
|
-
<td class="mlabels-right">
|
|
602
|
-
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
|
|
603
|
-
</tr>
|
|
604
|
-
</table>
|
|
605
|
-
</div><div class="memdoc">
|
|
606
|
-
|
|
607
|
-
<p>Reimplemented in <a class="el" href="classSVF_1_1ConsExeState.html#a6205eb8ceaba400a2ad5a554abaed096">SVF::ConsExeState</a>, and <a class="el" href="classSVF_1_1IntervalExeState.html#a36e15d9d95908b74fcf321e30a9cdebe">SVF::IntervalExeState</a>.</p>
|
|
608
|
-
|
|
609
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00146">146</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
610
|
-
<div class="fragment"><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  {</div>
|
|
611
|
-
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a69895af213955ea1ba29812bfddcea66">_varToVAddrs</a>[id];</div>
|
|
612
|
-
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  }</div>
|
|
616
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00124">124</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
617
|
+
<div class="fragment"><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  {</div>
|
|
618
|
+
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>;</div>
|
|
619
|
+
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  }</div>
|
|
613
620
|
</div><!-- fragment -->
|
|
614
621
|
</div>
|
|
615
622
|
</div>
|
|
616
|
-
<a id="
|
|
617
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
623
|
+
<a id="a0710c9cc1a3c40c95cd362d49bea459b"></a>
|
|
624
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a0710c9cc1a3c40c95cd362d49bea459b">◆ </a></span>getVarToAddrs()</h2>
|
|
618
625
|
|
|
619
626
|
<div class="memitem">
|
|
620
627
|
<div class="memproto">
|
|
@@ -623,7 +630,7 @@ Friends</h2></td></tr>
|
|
|
623
630
|
<td class="mlabels-left">
|
|
624
631
|
<table class="memname">
|
|
625
632
|
<tr>
|
|
626
|
-
<td class="memname">virtual const <a class="el" href="classSVF_1_1ExeState.html#
|
|
633
|
+
<td class="memname">virtual const <a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a>& SVF::ExeState::getVarToAddrs </td>
|
|
627
634
|
<td>(</td>
|
|
628
635
|
<td class="paramname"></td><td>)</td>
|
|
629
636
|
<td> const</td>
|
|
@@ -636,10 +643,10 @@ Friends</h2></td></tr>
|
|
|
636
643
|
</table>
|
|
637
644
|
</div><div class="memdoc">
|
|
638
645
|
|
|
639
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
640
|
-
<div class="fragment"><div class="line"><a name="
|
|
641
|
-
<div class="line"><a name="
|
|
642
|
-
<div class="line"><a name="
|
|
646
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00119">119</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
647
|
+
<div class="fragment"><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  {</div>
|
|
648
|
+
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>;</div>
|
|
649
|
+
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  }</div>
|
|
643
650
|
</div><!-- fragment -->
|
|
644
651
|
</div>
|
|
645
652
|
</div>
|
|
@@ -669,10 +676,10 @@ Friends</h2></td></tr>
|
|
|
669
676
|
|
|
670
677
|
<p>The physical address starts with 0x7f...... + idx. </p>
|
|
671
678
|
|
|
672
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
673
|
-
<div class="fragment"><div class="line"><a name="
|
|
674
|
-
<div class="line"><a name="
|
|
675
|
-
<div class="line"><a name="
|
|
679
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00271">271</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
680
|
+
<div class="fragment"><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>  {</div>
|
|
681
|
+
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AddressValue.html#aa6ccc9882f89804cd6566e3dfe3dfdc8">AddressValue::getVirtualMemAddress</a>(idx);</div>
|
|
682
|
+
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  }</div>
|
|
676
683
|
</div><!-- fragment -->
|
|
677
684
|
</div>
|
|
678
685
|
</div>
|
|
@@ -703,14 +710,14 @@ Friends</h2></td></tr>
|
|
|
703
710
|
|
|
704
711
|
<p class="definition">Definition at line <a class="el" href="ExeState_8cpp_source.html#l00102">102</a> of file <a class="el" href="ExeState_8cpp_source.html">ExeState.cpp</a>.</p>
|
|
705
712
|
<div class="fragment"><div class="line"><a name="l00103"></a><span class="lineno"> 103</span> {</div>
|
|
706
|
-
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="keywordtype">size_t</span> h = <a class="code" href="classSVF_1_1ExeState.html#
|
|
713
|
+
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <span class="keywordtype">size_t</span> h = <a class="code" href="classSVF_1_1ExeState.html#a0710c9cc1a3c40c95cd362d49bea459b">getVarToAddrs</a>().size() * 2;</div>
|
|
707
714
|
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <a class="code" href="structSVF_1_1Hash.html">Hash<u32_t></a> hf;</div>
|
|
708
|
-
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &t: <a class="code" href="classSVF_1_1ExeState.html#
|
|
715
|
+
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &t: <a class="code" href="classSVF_1_1ExeState.html#a0710c9cc1a3c40c95cd362d49bea459b">getVarToAddrs</a>())</div>
|
|
709
716
|
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  {</div>
|
|
710
717
|
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  h ^= hf(t.first) + 0x9e3779b9 + (h << 6) + (h >> 2);</div>
|
|
711
718
|
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  }</div>
|
|
712
|
-
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordtype">size_t</span> h2 = <a class="code" href="classSVF_1_1ExeState.html#
|
|
713
|
-
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &t: <a class="code" href="classSVF_1_1ExeState.html#
|
|
719
|
+
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordtype">size_t</span> h2 = <a class="code" href="classSVF_1_1ExeState.html#aa7b897b107d722909f9de9dcbabad7cf">getLocToAddrs</a>().size() * 2;</div>
|
|
720
|
+
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &t: <a class="code" href="classSVF_1_1ExeState.html#aa7b897b107d722909f9de9dcbabad7cf">getLocToAddrs</a>())</div>
|
|
714
721
|
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  {</div>
|
|
715
722
|
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  h2 ^= hf(t.first) + 0x9e3779b9 + (h2 << 6) + (h2 >> 2);</div>
|
|
716
723
|
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  }</div>
|
|
@@ -744,12 +751,14 @@ Friends</h2></td></tr>
|
|
|
744
751
|
</table>
|
|
745
752
|
</div><div class="memdoc">
|
|
746
753
|
|
|
747
|
-
<p>
|
|
754
|
+
<p>whether the memory address stores memory addresses </p>
|
|
748
755
|
|
|
749
|
-
<p
|
|
750
|
-
|
|
751
|
-
<
|
|
752
|
-
<div class="line"><a name="
|
|
756
|
+
<p>Reimplemented in <a class="el" href="classSVF_1_1IntervalExeState.html#af61110c081ca71f9348e8dfff5aa76e4">SVF::IntervalExeState</a>, and <a class="el" href="classSVF_1_1ConsExeState.html#a1effca0f87f2180e160600ee5528b12f">SVF::ConsExeState</a>.</p>
|
|
757
|
+
|
|
758
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00113">113</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
759
|
+
<div class="fragment"><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  {</div>
|
|
760
|
+
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.find(<span class="keywordtype">id</span>) != <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end();</div>
|
|
761
|
+
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  }</div>
|
|
753
762
|
</div><!-- fragment -->
|
|
754
763
|
</div>
|
|
755
764
|
</div>
|
|
@@ -777,12 +786,14 @@ Friends</h2></td></tr>
|
|
|
777
786
|
</table>
|
|
778
787
|
</div><div class="memdoc">
|
|
779
788
|
|
|
780
|
-
<p>
|
|
789
|
+
<p>whether the variable is in varToAddrs table </p>
|
|
790
|
+
|
|
791
|
+
<p>Reimplemented in <a class="el" href="classSVF_1_1IntervalExeState.html#ad485a35730353c0e945bc84a034d9e45">SVF::IntervalExeState</a>, and <a class="el" href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">SVF::ConsExeState</a>.</p>
|
|
781
792
|
|
|
782
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
783
|
-
<div class="fragment"><div class="line"><a name="
|
|
784
|
-
<div class="line"><a name="
|
|
785
|
-
<div class="line"><a name="
|
|
793
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00107">107</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
794
|
+
<div class="fragment"><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  {</div>
|
|
795
|
+
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.find(<span class="keywordtype">id</span>) != <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.end();</div>
|
|
796
|
+
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  }</div>
|
|
786
797
|
</div><!-- fragment -->
|
|
787
798
|
</div>
|
|
788
799
|
</div>
|
|
@@ -810,10 +821,10 @@ Friends</h2></td></tr>
|
|
|
810
821
|
</table>
|
|
811
822
|
</div><div class="memdoc">
|
|
812
823
|
|
|
813
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
814
|
-
<div class="fragment"><div class="line"><a name="
|
|
815
|
-
<div class="line"><a name="
|
|
816
|
-
<div class="line"><a name="
|
|
824
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00169">169</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
825
|
+
<div class="fragment"><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  {</div>
|
|
826
|
+
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr) == 0;</div>
|
|
827
|
+
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  }</div>
|
|
817
828
|
</div><!-- fragment -->
|
|
818
829
|
</div>
|
|
819
830
|
</div>
|
|
@@ -843,10 +854,10 @@ Friends</h2></td></tr>
|
|
|
843
854
|
|
|
844
855
|
<p>Check bit value of val start with 0x7F000000, filter by 0xFF000000. </p>
|
|
845
856
|
|
|
846
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
847
|
-
<div class="fragment"><div class="line"><a name="
|
|
848
|
-
<div class="line"><a name="
|
|
849
|
-
<div class="line"><a name="
|
|
857
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00277">277</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
858
|
+
<div class="fragment"><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  {</div>
|
|
859
|
+
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1AddressValue.html#ab76f47f97262d40dbbee12f466f746e8">AddressValue::isVirtualMemAddress</a>(val);</div>
|
|
860
|
+
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  }</div>
|
|
850
861
|
</div><!-- fragment -->
|
|
851
862
|
</div>
|
|
852
863
|
</div>
|
|
@@ -871,11 +882,11 @@ Friends</h2></td></tr>
|
|
|
871
882
|
<p class="definition">Definition at line <a class="el" href="ExeState_8cpp_source.html#l00040">40</a> of file <a class="el" href="ExeState_8cpp_source.html">ExeState.cpp</a>.</p>
|
|
872
883
|
<div class="fragment"><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
|
|
873
884
|
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div>
|
|
874
|
-
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1ExeState.html#
|
|
885
|
+
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.begin(); it != other.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.end(); ++it)</div>
|
|
875
886
|
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  {</div>
|
|
876
887
|
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
877
|
-
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1ExeState.html#
|
|
878
|
-
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1ExeState.html#
|
|
888
|
+
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.find(key);</div>
|
|
889
|
+
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.end())</div>
|
|
879
890
|
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  {</div>
|
|
880
891
|
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <span class="keywordflow">if</span>(oit->second.join_with(it->second))</div>
|
|
881
892
|
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  changed = <span class="keyword">true</span>;</div>
|
|
@@ -883,14 +894,14 @@ Friends</h2></td></tr>
|
|
|
883
894
|
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <span class="keywordflow">else</span></div>
|
|
884
895
|
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  {</div>
|
|
885
896
|
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  changed = <span class="keyword">true</span>;</div>
|
|
886
|
-
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <a class="code" href="classSVF_1_1ExeState.html#
|
|
897
|
+
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.emplace(key, it->second);</div>
|
|
887
898
|
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  }</div>
|
|
888
899
|
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  }</div>
|
|
889
|
-
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1ExeState.html#
|
|
900
|
+
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.begin(); it != other.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end(); ++it)</div>
|
|
890
901
|
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  {</div>
|
|
891
902
|
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
892
|
-
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1ExeState.html#
|
|
893
|
-
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1ExeState.html#
|
|
903
|
+
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.find(key);</div>
|
|
904
|
+
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end())</div>
|
|
894
905
|
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  {</div>
|
|
895
906
|
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <span class="keywordflow">if</span>(oit->second.join_with(it->second))</div>
|
|
896
907
|
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  changed = <span class="keyword">true</span>;</div>
|
|
@@ -898,7 +909,7 @@ Friends</h2></td></tr>
|
|
|
898
909
|
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keywordflow">else</span></div>
|
|
899
910
|
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  {</div>
|
|
900
911
|
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  changed = <span class="keyword">true</span>;</div>
|
|
901
|
-
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <a class="code" href="classSVF_1_1ExeState.html#
|
|
912
|
+
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.emplace(key, it->second);</div>
|
|
902
913
|
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  }</div>
|
|
903
914
|
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  }</div>
|
|
904
915
|
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keywordflow">return</span> changed;</div>
|
|
@@ -906,8 +917,8 @@ Friends</h2></td></tr>
|
|
|
906
917
|
</div><!-- fragment -->
|
|
907
918
|
</div>
|
|
908
919
|
</div>
|
|
909
|
-
<a id="
|
|
910
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
920
|
+
<a id="a9e0fd700bea1ac741d96b4f52fd4756f"></a>
|
|
921
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a9e0fd700bea1ac741d96b4f52fd4756f">◆ </a></span>loadAddrs()</h2>
|
|
911
922
|
|
|
912
923
|
<div class="memitem">
|
|
913
924
|
<div class="memproto">
|
|
@@ -916,7 +927,7 @@ Friends</h2></td></tr>
|
|
|
916
927
|
<td class="mlabels-left">
|
|
917
928
|
<table class="memname">
|
|
918
929
|
<tr>
|
|
919
|
-
<td class="memname">virtual <a class="el" href="classSVF_1_1ExeState.html#
|
|
930
|
+
<td class="memname">virtual <a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a>& SVF::ExeState::loadAddrs </td>
|
|
920
931
|
<td>(</td>
|
|
921
932
|
<td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td>
|
|
922
933
|
<td class="paramname"><em>addr</em></td><td>)</td>
|
|
@@ -930,14 +941,14 @@ Friends</h2></td></tr>
|
|
|
930
941
|
</table>
|
|
931
942
|
</div><div class="memdoc">
|
|
932
943
|
|
|
933
|
-
<p>Reimplemented in <a class="el" href="classSVF_1_1IntervalExeState.html#
|
|
944
|
+
<p>Reimplemented in <a class="el" href="classSVF_1_1IntervalExeState.html#ad17ceaf8058043151ae0f23b3415458a">SVF::IntervalExeState</a>, and <a class="el" href="classSVF_1_1ConsExeState.html#a865998aed7e292ebd15532506eadea55">SVF::ConsExeState</a>.</p>
|
|
934
945
|
|
|
935
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
936
|
-
<div class="fragment"><div class="line"><a name="
|
|
937
|
-
<div class="line"><a name="
|
|
938
|
-
<div class="line"><a name="
|
|
939
|
-
<div class="line"><a name="
|
|
940
|
-
<div class="line"><a name="
|
|
946
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00162">162</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
947
|
+
<div class="fragment"><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  {</div>
|
|
948
|
+
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  assert(<a class="code" href="classSVF_1_1ExeState.html#abfaad70395d9f4416f297887c84f7df4">isVirtualMemAddress</a>(addr) && <span class="stringliteral">"not virtual address?"</span>);</div>
|
|
949
|
+
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <a class="code" href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a> objId = <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr);</div>
|
|
950
|
+
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>[objId];</div>
|
|
951
|
+
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  }</div>
|
|
941
952
|
</div><!-- fragment -->
|
|
942
953
|
</div>
|
|
943
954
|
</div>
|
|
@@ -967,33 +978,33 @@ Friends</h2></td></tr>
|
|
|
967
978
|
|
|
968
979
|
<p>Reimplemented in <a class="el" href="classSVF_1_1ConsExeState.html#a4136ad2172772347e8d6aedc2f8b811e">SVF::ConsExeState</a>.</p>
|
|
969
980
|
|
|
970
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
971
|
-
<div class="fragment"><div class="line"><a name="
|
|
972
|
-
<div class="line"><a name="
|
|
973
|
-
<div class="line"><a name="
|
|
974
|
-
<div class="line"><a name="
|
|
975
|
-
<div class="line"><a name="
|
|
976
|
-
<div class="line"><a name="
|
|
977
|
-
<div class="line"><a name="
|
|
978
|
-
<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="
|
|
988
|
-
<div class="line"><a name="
|
|
989
|
-
<div class="line"><a name="
|
|
990
|
-
<div class="line"><a name="
|
|
991
|
-
<div class="line"><a name="
|
|
992
|
-
<div class="line"><a name="
|
|
993
|
-
<div class="line"><a name="
|
|
994
|
-
<div class="line"><a name="
|
|
995
|
-
<div class="line"><a name="
|
|
996
|
-
<div class="line"><a name="
|
|
981
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00236">236</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
982
|
+
<div class="fragment"><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  {</div>
|
|
983
|
+
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  std::stringstream exprName;</div>
|
|
984
|
+
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  <span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.find(objId);</div>
|
|
985
|
+
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <span class="keywordflow">if</span> (it == <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end())</div>
|
|
986
|
+
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  {</div>
|
|
987
|
+
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  exprName << <span class="stringliteral">"Var not in varToAddrs!\n"</span>;</div>
|
|
988
|
+
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  }</div>
|
|
989
|
+
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <span class="keywordflow">else</span></div>
|
|
990
|
+
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  {</div>
|
|
991
|
+
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> &vaddrs = it->second;</div>
|
|
992
|
+
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  <span class="keywordflow">if</span> (vaddrs.size() == 1)</div>
|
|
993
|
+
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  {</div>
|
|
994
|
+
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  exprName << <span class="stringliteral">"addr: {"</span> << std::dec << <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(*vaddrs.begin()) << <span class="stringliteral">"}\n"</span>;</div>
|
|
995
|
+
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  }</div>
|
|
996
|
+
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  <span class="keywordflow">else</span></div>
|
|
997
|
+
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  {</div>
|
|
998
|
+
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  exprName << <span class="stringliteral">"addr: {"</span>;</div>
|
|
999
|
+
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &addr: vaddrs)</div>
|
|
1000
|
+
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  {</div>
|
|
1001
|
+
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  exprName << std::dec << <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr) << <span class="stringliteral">", "</span>;</div>
|
|
1002
|
+
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  }</div>
|
|
1003
|
+
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  exprName << <span class="stringliteral">"}\n"</span>;</div>
|
|
1004
|
+
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  }</div>
|
|
1005
|
+
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  }</div>
|
|
1006
|
+
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(exprName.str());</div>
|
|
1007
|
+
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  }</div>
|
|
997
1008
|
</div><!-- fragment -->
|
|
998
1009
|
</div>
|
|
999
1010
|
</div>
|
|
@@ -1018,21 +1029,21 @@ Friends</h2></td></tr>
|
|
|
1018
1029
|
<p class="definition">Definition at line <a class="el" href="ExeState_8cpp_source.html#l00076">76</a> of file <a class="el" href="ExeState_8cpp_source.html">ExeState.cpp</a>.</p>
|
|
1019
1030
|
<div class="fragment"><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> {</div>
|
|
1020
1031
|
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="keywordtype">bool</span> changed = <span class="keyword">false</span>;</div>
|
|
1021
|
-
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1ExeState.html#
|
|
1032
|
+
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.begin(); it != other.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.end(); ++it)</div>
|
|
1022
1033
|
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  {</div>
|
|
1023
1034
|
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
1024
|
-
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1ExeState.html#
|
|
1025
|
-
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1ExeState.html#
|
|
1035
|
+
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.find(key);</div>
|
|
1036
|
+
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.end())</div>
|
|
1026
1037
|
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  {</div>
|
|
1027
1038
|
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="keywordflow">if</span>(oit->second.meet_with(it->second))</div>
|
|
1028
1039
|
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  changed = <span class="keyword">true</span>;</div>
|
|
1029
1040
|
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  }</div>
|
|
1030
1041
|
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  }</div>
|
|
1031
|
-
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1ExeState.html#
|
|
1042
|
+
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = other.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.begin(); it != other.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end(); ++it)</div>
|
|
1032
1043
|
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  {</div>
|
|
1033
1044
|
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  <span class="keyword">auto</span> key = it->first;</div>
|
|
1034
|
-
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1ExeState.html#
|
|
1035
|
-
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1ExeState.html#
|
|
1045
|
+
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  <span class="keyword">auto</span> oit = <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.find(key);</div>
|
|
1046
|
+
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordflow">if</span> (oit != <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end())</div>
|
|
1036
1047
|
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  {</div>
|
|
1037
1048
|
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <span class="keywordflow">if</span>(oit->second.meet_with(it->second))</div>
|
|
1038
1049
|
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  changed = <span class="keyword">true</span>;</div>
|
|
@@ -1067,10 +1078,10 @@ Friends</h2></td></tr>
|
|
|
1067
1078
|
</table>
|
|
1068
1079
|
</div><div class="memdoc">
|
|
1069
1080
|
|
|
1070
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
1071
|
-
<div class="fragment"><div class="line"><a name="
|
|
1072
|
-
<div class="line"><a name="
|
|
1073
|
-
<div class="line"><a name="
|
|
1081
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00178">178</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
1082
|
+
<div class="fragment"><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  {</div>
|
|
1083
|
+
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs);</div>
|
|
1084
|
+
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  }</div>
|
|
1074
1085
|
</div><!-- fragment -->
|
|
1075
1086
|
</div>
|
|
1076
1087
|
</div>
|
|
@@ -1102,8 +1113,8 @@ Friends</h2></td></tr>
|
|
|
1102
1113
|
<div class="fragment"><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  {</div>
|
|
1103
1114
|
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <span class="keywordflow">if</span>(*<span class="keyword">this</span> != rhs)</div>
|
|
1104
1115
|
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  {</div>
|
|
1105
|
-
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <a class="code" href="classSVF_1_1ExeState.html#
|
|
1106
|
-
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <a class="code" href="classSVF_1_1ExeState.html#
|
|
1116
|
+
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a> = rhs._varToAddrs;</div>
|
|
1117
|
+
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a> = rhs._locToAddrs;</div>
|
|
1107
1118
|
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  }</div>
|
|
1108
1119
|
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
|
|
1109
1120
|
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  }</div>
|
|
@@ -1138,8 +1149,8 @@ Friends</h2></td></tr>
|
|
|
1138
1149
|
<div class="fragment"><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  {</div>
|
|
1139
1150
|
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="keywordflow">if</span> (<span class="keyword">this</span> != &rhs)</div>
|
|
1140
1151
|
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  {</div>
|
|
1141
|
-
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <a class="code" href="classSVF_1_1ExeState.html#
|
|
1142
|
-
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <a class="code" href="classSVF_1_1ExeState.html#
|
|
1152
|
+
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a> = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">std::move</a>(rhs._varToAddrs);</div>
|
|
1153
|
+
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a> = <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">std::move</a>(rhs._locToAddrs);</div>
|
|
1143
1154
|
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  }</div>
|
|
1144
1155
|
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
|
|
1145
1156
|
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  }</div>
|
|
@@ -1172,7 +1183,7 @@ Friends</h2></td></tr>
|
|
|
1172
1183
|
|
|
1173
1184
|
<p class="definition">Definition at line <a class="el" href="ExeState_8cpp_source.html#l00035">35</a> of file <a class="el" href="ExeState_8cpp_source.html">ExeState.cpp</a>.</p>
|
|
1174
1185
|
<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> {</div>
|
|
1175
|
-
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#
|
|
1186
|
+
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a0a24ad3ced48b6755b7fc917d0f0fbb9">eqVarToAddrs</a>(<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>, rhs.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>) && <a class="code" href="classSVF_1_1ExeState.html#a0a24ad3ced48b6755b7fc917d0f0fbb9">eqVarToAddrs</a>(<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>, rhs.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>);</div>
|
|
1176
1187
|
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> }</div>
|
|
1177
1188
|
</div><!-- fragment -->
|
|
1178
1189
|
</div>
|
|
@@ -1205,13 +1216,13 @@ Friends</h2></td></tr>
|
|
|
1205
1216
|
|
|
1206
1217
|
<p>Reimplemented in <a class="el" href="classSVF_1_1IntervalExeState.html#aa6adb9becbc2541198708823e3e35c9d">SVF::IntervalExeState</a>, and <a class="el" href="classSVF_1_1ConsExeState.html#ab172f00fe38fbef532d97da5e7285535">SVF::ConsExeState</a>.</p>
|
|
1207
1218
|
|
|
1208
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
1209
|
-
<div class="fragment"><div class="line"><a name="
|
|
1219
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00139">139</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
1220
|
+
<div class="fragment"><div class="line"><a name="l00139"></a><span class="lineno"> 139</span> {}</div>
|
|
1210
1221
|
</div><!-- fragment -->
|
|
1211
1222
|
</div>
|
|
1212
1223
|
</div>
|
|
1213
|
-
<a id="
|
|
1214
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
1224
|
+
<a id="a99f4437a7e350fec131d48f52082d672"></a>
|
|
1225
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a99f4437a7e350fec131d48f52082d672">◆ </a></span>storeAddrs()</h2>
|
|
1215
1226
|
|
|
1216
1227
|
<div class="memitem">
|
|
1217
1228
|
<div class="memproto">
|
|
@@ -1220,7 +1231,7 @@ Friends</h2></td></tr>
|
|
|
1220
1231
|
<td class="mlabels-left">
|
|
1221
1232
|
<table class="memname">
|
|
1222
1233
|
<tr>
|
|
1223
|
-
<td class="memname">virtual void SVF::ExeState::
|
|
1234
|
+
<td class="memname">virtual void SVF::ExeState::storeAddrs </td>
|
|
1224
1235
|
<td>(</td>
|
|
1225
1236
|
<td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td>
|
|
1226
1237
|
<td class="paramname"><em>addr</em>, </td>
|
|
@@ -1228,7 +1239,7 @@ Friends</h2></td></tr>
|
|
|
1228
1239
|
<tr>
|
|
1229
1240
|
<td class="paramkey"></td>
|
|
1230
1241
|
<td></td>
|
|
1231
|
-
<td class="paramtype">const <a class="el" href="classSVF_1_1ExeState.html#
|
|
1242
|
+
<td class="paramtype">const <a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> & </td>
|
|
1232
1243
|
<td class="paramname"><em>vaddrs</em> </td>
|
|
1233
1244
|
</tr>
|
|
1234
1245
|
<tr>
|
|
@@ -1244,13 +1255,13 @@ Friends</h2></td></tr>
|
|
|
1244
1255
|
</table>
|
|
1245
1256
|
</div><div class="memdoc">
|
|
1246
1257
|
|
|
1247
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
1248
|
-
<div class="fragment"><div class="line"><a name="
|
|
1249
|
-
<div class="line"><a name="
|
|
1250
|
-
<div class="line"><a name="
|
|
1251
|
-
<div class="line"><a name="
|
|
1252
|
-
<div class="line"><a name="
|
|
1253
|
-
<div class="line"><a name="
|
|
1258
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00154">154</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
1259
|
+
<div class="fragment"><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  {</div>
|
|
1260
|
+
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  assert(<a class="code" href="classSVF_1_1ExeState.html#abfaad70395d9f4416f297887c84f7df4">isVirtualMemAddress</a>(addr) && <span class="stringliteral">"not virtual address?"</span>);</div>
|
|
1261
|
+
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1ExeState.html#a8edd5f30ab971ce893ffdb39d8b6a265">isNullPtr</a>(addr)) <span class="keywordflow">return</span>;</div>
|
|
1262
|
+
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <a class="code" href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a> objId = <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr);</div>
|
|
1263
|
+
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>[objId] = vaddrs;</div>
|
|
1264
|
+
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  }</div>
|
|
1254
1265
|
</div><!-- fragment -->
|
|
1255
1266
|
</div>
|
|
1256
1267
|
</div>
|
|
@@ -1279,10 +1290,10 @@ Friends</h2></td></tr>
|
|
|
1279
1290
|
|
|
1280
1291
|
<p>Reimplemented in <a class="el" href="classSVF_1_1IntervalExeState.html#a3a8f8b09df0befa318cbcd43d191d37a">SVF::IntervalExeState</a>, and <a class="el" href="classSVF_1_1ConsExeState.html#a4553e0d059ea66f9a0287454686eb558">SVF::ConsExeState</a>.</p>
|
|
1281
1292
|
|
|
1282
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
1283
|
-
<div class="fragment"><div class="line"><a name="
|
|
1284
|
-
<div class="line"><a name="
|
|
1285
|
-
<div class="line"><a name="
|
|
1293
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00141">141</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
1294
|
+
<div class="fragment"><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  {</div>
|
|
1295
|
+
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <span class="keywordflow">return</span> <span class="stringliteral">""</span>;</div>
|
|
1296
|
+
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  }</div>
|
|
1286
1297
|
</div><!-- fragment -->
|
|
1287
1298
|
</div>
|
|
1288
1299
|
</div>
|
|
@@ -1312,33 +1323,33 @@ Friends</h2></td></tr>
|
|
|
1312
1323
|
|
|
1313
1324
|
<p>Reimplemented in <a class="el" href="classSVF_1_1ConsExeState.html#aa3f16fb06541184e49ef4f4ea95d894c">SVF::ConsExeState</a>.</p>
|
|
1314
1325
|
|
|
1315
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
1316
|
-
<div class="fragment"><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="
|
|
1327
|
-
<div class="line"><a name="
|
|
1328
|
-
<div class="line"><a name="
|
|
1329
|
-
<div class="line"><a name="
|
|
1330
|
-
<div class="line"><a name="
|
|
1331
|
-
<div class="line"><a name="
|
|
1332
|
-
<div class="line"><a name="
|
|
1333
|
-
<div class="line"><a name="
|
|
1334
|
-
<div class="line"><a name="
|
|
1335
|
-
<div class="line"><a name="
|
|
1336
|
-
<div class="line"><a name="
|
|
1337
|
-
<div class="line"><a name="
|
|
1338
|
-
<div class="line"><a name="
|
|
1339
|
-
<div class="line"><a name="
|
|
1340
|
-
<div class="line"><a name="
|
|
1341
|
-
<div class="line"><a name="
|
|
1326
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00208">208</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
1327
|
+
<div class="fragment"><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  {</div>
|
|
1328
|
+
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  std::stringstream exprName;</div>
|
|
1329
|
+
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.find(varId);</div>
|
|
1330
|
+
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  <span class="keywordflow">if</span> (it == <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.end())</div>
|
|
1331
|
+
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  {</div>
|
|
1332
|
+
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  exprName << <span class="stringliteral">"Var not in varToAddrs!\n"</span>;</div>
|
|
1333
|
+
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  }</div>
|
|
1334
|
+
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  <span class="keywordflow">else</span></div>
|
|
1335
|
+
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  {</div>
|
|
1336
|
+
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> &vaddrs = it->second;</div>
|
|
1337
|
+
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  <span class="keywordflow">if</span> (vaddrs.size() == 1)</div>
|
|
1338
|
+
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  {</div>
|
|
1339
|
+
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  exprName << <span class="stringliteral">"addr: {"</span> << std::dec << <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(*vaddrs.begin()) << <span class="stringliteral">"}\n"</span>;</div>
|
|
1340
|
+
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  }</div>
|
|
1341
|
+
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <span class="keywordflow">else</span></div>
|
|
1342
|
+
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  {</div>
|
|
1343
|
+
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  exprName << <span class="stringliteral">"addr: {"</span>;</div>
|
|
1344
|
+
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &addr: vaddrs)</div>
|
|
1345
|
+
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  {</div>
|
|
1346
|
+
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  exprName << std::dec << <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr) << <span class="stringliteral">", "</span>;</div>
|
|
1347
|
+
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  }</div>
|
|
1348
|
+
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  exprName << <span class="stringliteral">"}\n"</span>;</div>
|
|
1349
|
+
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  }</div>
|
|
1350
|
+
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  }</div>
|
|
1351
|
+
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(exprName.str());</div>
|
|
1352
|
+
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  }</div>
|
|
1342
1353
|
</div><!-- fragment -->
|
|
1343
1354
|
</div>
|
|
1344
1355
|
</div>
|
|
@@ -1392,8 +1403,8 @@ Friends</h2></td></tr>
|
|
|
1392
1403
|
|
|
1393
1404
|
</div>
|
|
1394
1405
|
</div>
|
|
1395
|
-
<a id="
|
|
1396
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
1406
|
+
<a id="a79866a547dc4805d3fefdfd528d2df2a"></a>
|
|
1407
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a79866a547dc4805d3fefdfd528d2df2a">◆ </a></span>_locToAddrs</h2>
|
|
1397
1408
|
|
|
1398
1409
|
<div class="memitem">
|
|
1399
1410
|
<div class="memproto">
|
|
@@ -1402,7 +1413,7 @@ Friends</h2></td></tr>
|
|
|
1402
1413
|
<td class="mlabels-left">
|
|
1403
1414
|
<table class="memname">
|
|
1404
1415
|
<tr>
|
|
1405
|
-
<td class="memname"><a class="el" href="classSVF_1_1ExeState.html#
|
|
1416
|
+
<td class="memname"><a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> SVF::ExeState::_locToAddrs</td>
|
|
1406
1417
|
</tr>
|
|
1407
1418
|
</table>
|
|
1408
1419
|
</td>
|
|
@@ -1412,12 +1423,14 @@ Friends</h2></td></tr>
|
|
|
1412
1423
|
</table>
|
|
1413
1424
|
</div><div class="memdoc">
|
|
1414
1425
|
|
|
1415
|
-
<p
|
|
1426
|
+
<p>Map a memory address to its stored memory addresses. </p>
|
|
1427
|
+
|
|
1428
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00096">96</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
1416
1429
|
|
|
1417
1430
|
</div>
|
|
1418
1431
|
</div>
|
|
1419
|
-
<a id="
|
|
1420
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
1432
|
+
<a id="ad317f2ae2e599a131a6fd9f415f5d712"></a>
|
|
1433
|
+
<h2 class="memtitle"><span class="permalink"><a href="#ad317f2ae2e599a131a6fd9f415f5d712">◆ </a></span>_varToAddrs</h2>
|
|
1421
1434
|
|
|
1422
1435
|
<div class="memitem">
|
|
1423
1436
|
<div class="memproto">
|
|
@@ -1426,7 +1439,7 @@ Friends</h2></td></tr>
|
|
|
1426
1439
|
<td class="mlabels-left">
|
|
1427
1440
|
<table class="memname">
|
|
1428
1441
|
<tr>
|
|
1429
|
-
<td class="memname"><a class="el" href="classSVF_1_1ExeState.html#
|
|
1442
|
+
<td class="memname"><a class="el" href="classSVF_1_1ExeState.html#a09f34aca79479221305769cae307feef">VarToAddrs</a> SVF::ExeState::_varToAddrs {{0, <a class="el" href="classSVF_1_1ExeState.html#a2f01e583abcdeb236a11e85c7a8aafdc">getVirtualMemAddress</a>(0)}}</td>
|
|
1430
1443
|
</tr>
|
|
1431
1444
|
</table>
|
|
1432
1445
|
</td>
|
|
@@ -1436,7 +1449,9 @@ Friends</h2></td></tr>
|
|
|
1436
1449
|
</table>
|
|
1437
1450
|
</div><div class="memdoc">
|
|
1438
1451
|
|
|
1439
|
-
<p
|
|
1452
|
+
<p>Map a variable (symbol) to its memory addresses. </p>
|
|
1453
|
+
|
|
1454
|
+
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#l00095">95</a> of file <a class="el" href="ExeState_8h_source.html">ExeState.h</a>.</p>
|
|
1440
1455
|
|
|
1441
1456
|
</div>
|
|
1442
1457
|
</div>
|
|
@@ -1445,25 +1460,25 @@ Friends</h2></td></tr>
|
|
|
1445
1460
|
<li>/home/runner/work/SVF/SVF/svf/lib/AbstractExecution/<a class="el" href="ExeState_8cpp_source.html">ExeState.cpp</a></li>
|
|
1446
1461
|
</ul>
|
|
1447
1462
|
</div><!-- contents -->
|
|
1463
|
+
<div class="ttc" id="aclassSVF_1_1ExeState_html_aa7b897b107d722909f9de9dcbabad7cf"><div class="ttname"><a href="classSVF_1_1ExeState.html#aa7b897b107d722909f9de9dcbabad7cf">SVF::ExeState::getLocToAddrs</a></div><div class="ttdeci">virtual const VarToAddrs & getLocToAddrs() const</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00124">ExeState.h:124</a></div></div>
|
|
1448
1464
|
<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>
|
|
1449
|
-
<div class="ttc" id="
|
|
1450
|
-
<div class="ttc" id="
|
|
1465
|
+
<div class="ttc" id="aclassSVF_1_1ExeState_html_a78038dd4884a501cfc94f073021eac96"><div class="ttname"><a href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">SVF::ExeState::Addrs</a></div><div class="ttdeci">AddressValue Addrs</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00052">ExeState.h:52</a></div></div>
|
|
1466
|
+
<div class="ttc" id="aclassSVF_1_1ExeState_html_abfaad70395d9f4416f297887c84f7df4"><div class="ttname"><a href="classSVF_1_1ExeState.html#abfaad70395d9f4416f297887c84f7df4">SVF::ExeState::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="ExeState_8h_source.html#l00277">ExeState.h:277</a></div></div>
|
|
1451
1467
|
<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="SVFType_8h_source.html#l00067">SVFType.h:67</a></div></div>
|
|
1452
1468
|
<div class="ttc" id="aclassSVF_1_1Z3Expr_html_acfdff582a0188678c10939165a40df30"><div class="ttname"><a href="classSVF_1_1Z3Expr.html#acfdff582a0188678c10939165a40df30">SVF::Z3Expr::getContext</a></div><div class="ttdeci">static z3::context & getContext()</div><div class="ttdoc">Get z3 context, singleton design here to make sure we only have one context.</div><div class="ttdef"><b>Definition:</b> <a href="Z3Expr_8cpp_source.html#l00066">Z3Expr.cpp:66</a></div></div>
|
|
1453
|
-
<div class="ttc" id="
|
|
1454
|
-
<div class="ttc" id="
|
|
1469
|
+
<div class="ttc" id="aclassSVF_1_1ExeState_html_a0710c9cc1a3c40c95cd362d49bea459b"><div class="ttname"><a href="classSVF_1_1ExeState.html#a0710c9cc1a3c40c95cd362d49bea459b">SVF::ExeState::getVarToAddrs</a></div><div class="ttdeci">virtual const VarToAddrs & getVarToAddrs() const</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00119">ExeState.h:119</a></div></div>
|
|
1470
|
+
<div class="ttc" id="aclassSVF_1_1ExeState_html_a0a24ad3ced48b6755b7fc917d0f0fbb9"><div class="ttname"><a href="classSVF_1_1ExeState.html#a0a24ad3ced48b6755b7fc917d0f0fbb9">SVF::ExeState::eqVarToAddrs</a></div><div class="ttdeci">static bool eqVarToAddrs(const VarToAddrs &lhs, const VarToAddrs &rhs)</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00190">ExeState.h:190</a></div></div>
|
|
1455
1471
|
<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#l00215">AddressValue.h:215</a></div></div>
|
|
1456
|
-
<div class="ttc" id="
|
|
1472
|
+
<div class="ttc" id="aclassSVF_1_1ExeState_html_ad317f2ae2e599a131a6fd9f415f5d712"><div class="ttname"><a href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">SVF::ExeState::_varToAddrs</a></div><div class="ttdeci">VarToAddrs _varToAddrs</div><div class="ttdoc">Map a variable (symbol) to its memory addresses.</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00095">ExeState.h:95</a></div></div>
|
|
1473
|
+
<div class="ttc" id="aclassSVF_1_1ExeState_html_ab72f3bc855feeda75e11768ab03ad84e"><div class="ttname"><a href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">SVF::ExeState::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="ExeState_8h_source.html#l00283">ExeState.h:283</a></div></div>
|
|
1457
1474
|
<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>
|
|
1458
1475
|
<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#l00209">AddressValue.h:209</a></div></div>
|
|
1459
1476
|
<div class="ttc" id="aclassSVF_1_1ExeState_html_a259b93247e06141077b2c1ae15efcbb8acb163848414937d2331958216330a20e"><div class="ttname"><a href="classSVF_1_1ExeState.html#a259b93247e06141077b2c1ae15efcbb8acb163848414937d2331958216330a20e">SVF::ExeState::SingleValueK</a></div><div class="ttdeci">@ SingleValueK</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00057">ExeState.h:57</a></div></div>
|
|
1460
|
-
<div class="ttc" id="aclassSVF_1_1ExeState_html_aebbcf15653f00e07cb7a754d1e314d69"><div class="ttname"><a href="classSVF_1_1ExeState.html#aebbcf15653f00e07cb7a754d1e314d69">SVF::ExeState::getVarToVAddrs</a></div><div class="ttdeci">virtual const VarToVAddrs & getVarToVAddrs() const</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00126">ExeState.h:126</a></div></div>
|
|
1461
1477
|
<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>
|
|
1462
|
-
<div class="ttc" id="aclassSVF_1_1ExeState_html_afcb9e71dc8686d5c125d63596bd4f442"><div class="ttname"><a href="classSVF_1_1ExeState.html#afcb9e71dc8686d5c125d63596bd4f442">SVF::ExeState::getLocToVAddrs</a></div><div class="ttdeci">virtual const VarToVAddrs & getLocToVAddrs() const</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00131">ExeState.h:131</a></div></div>
|
|
1463
1478
|
<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#l00203">AddressValue.h:203</a></div></div>
|
|
1464
|
-
<div class="ttc" id="
|
|
1479
|
+
<div class="ttc" id="aclassSVF_1_1ExeState_html_a79866a547dc4805d3fefdfd528d2df2a"><div class="ttname"><a href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">SVF::ExeState::_locToAddrs</a></div><div class="ttdeci">VarToAddrs _locToAddrs</div><div class="ttdoc">Map a memory address to its stored memory addresses.</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00096">ExeState.h:96</a></div></div>
|
|
1465
1480
|
<div class="ttc" id="aclassSVF_1_1ExeState_html_a2545017305d54f6416ba48cb45e43cb8"><div class="ttname"><a href="classSVF_1_1ExeState.html#a2545017305d54f6416ba48cb45e43cb8">SVF::ExeState::_kind</a></div><div class="ttdeci">ExeState_TYPE _kind</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00060">ExeState.h:60</a></div></div>
|
|
1466
|
-
<div class="ttc" id="aclassSVF_1_1ExeState_html_a8edd5f30ab971ce893ffdb39d8b6a265"><div class="ttname"><a href="classSVF_1_1ExeState.html#a8edd5f30ab971ce893ffdb39d8b6a265">SVF::ExeState::isNullPtr</a></div><div class="ttdeci">bool isNullPtr(u32_t addr)</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#
|
|
1481
|
+
<div class="ttc" id="aclassSVF_1_1ExeState_html_a8edd5f30ab971ce893ffdb39d8b6a265"><div class="ttname"><a href="classSVF_1_1ExeState.html#a8edd5f30ab971ce893ffdb39d8b6a265">SVF::ExeState::isNullPtr</a></div><div class="ttdeci">bool isNullPtr(u32_t addr)</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00169">ExeState.h:169</a></div></div>
|
|
1467
1482
|
<div class="ttc" id="aclassSVF_1_1ExeState_html_a259b93247e06141077b2c1ae15efcbb8a39d5fb8ca9906072253f8af46b916351"><div class="ttname"><a href="classSVF_1_1ExeState.html#a259b93247e06141077b2c1ae15efcbb8a39d5fb8ca9906072253f8af46b916351">SVF::ExeState::IntervalK</a></div><div class="ttdeci">@ IntervalK</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00057">ExeState.h:57</a></div></div>
|
|
1468
1483
|
<!-- start footer part -->
|
|
1469
1484
|
<hr class="footer"/><address class="footer"><small>
|