svf-tools 1.0.811 → 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/AccessPath_8cpp_source.html +159 -136
- package/SVF-doxygen/html/AccessPath_8h_source.html +45 -42
- package/SVF-doxygen/html/ConsExeState_8cpp_source.html +21 -21
- package/SVF-doxygen/html/ConsExeState_8h_source.html +384 -385
- package/SVF-doxygen/html/ConsG_8cpp_source.html +8 -8
- package/SVF-doxygen/html/ContextDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/ExeState_8cpp_source.html +24 -24
- package/SVF-doxygen/html/ExeState_8h_source.html +227 -217
- package/SVF-doxygen/html/FlowDDA_8cpp_source.html +1 -1
- package/SVF-doxygen/html/FlowSensitive_8cpp_source.html +1 -1
- package/SVF-doxygen/html/ICFGEdge_8h_source.html +2 -2
- package/SVF-doxygen/html/ICFG_8cpp_source.html +2 -2
- package/SVF-doxygen/html/IRGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/IntervalExeState_8cpp_source.html +8 -8
- package/SVF-doxygen/html/IntervalExeState_8h_source.html +412 -408
- package/SVF-doxygen/html/PAGBuilderFromFile_8cpp_source.html +2 -2
- package/SVF-doxygen/html/RelationSolver_8cpp_source.html +3 -3
- package/SVF-doxygen/html/SVFFileSystem_8cpp_source.html +13 -13
- package/SVF-doxygen/html/SVFFileSystem_8h_source.html +11 -11
- package/SVF-doxygen/html/SVFIR2ConsExeState_8cpp_source.html +273 -272
- package/SVF-doxygen/html/SVFIR2ConsExeState_8h_source.html +28 -28
- package/SVF-doxygen/html/SVFIR2ItvExeState_8cpp_source.html +980 -973
- package/SVF-doxygen/html/SVFIR2ItvExeState_8h_source.html +169 -169
- package/SVF-doxygen/html/SVFIR2Relation_8cpp_source.html +33 -33
- package/SVF-doxygen/html/SVFIRBuilder_8cpp_source.html +4 -4
- package/SVF-doxygen/html/SVFIRBuilder_8h_source.html +11 -11
- package/SVF-doxygen/html/SVFIR_8cpp_source.html +14 -14
- package/SVF-doxygen/html/SVFIR_8h_source.html +11 -11
- package/SVF-doxygen/html/SVFStatements_8cpp_source.html +19 -19
- package/SVF-doxygen/html/SVFStatements_8h_source.html +829 -830
- package/SVF-doxygen/html/SaberCondAllocator_8cpp_source.html +7 -7
- package/SVF-doxygen/html/SaberCondAllocator_8h_source.html +2 -2
- package/SVF-doxygen/html/SymState_8h_source.html +1 -1
- package/SVF-doxygen/html/VFGNode_8h_source.html +7 -7
- package/SVF-doxygen/html/VFG_8cpp_source.html +15 -15
- package/SVF-doxygen/html/VFG_8h_source.html +10 -10
- package/SVF-doxygen/html/classSVF_1_1AccessPath-members.html +18 -17
- package/SVF-doxygen/html/classSVF_1_1AccessPath.html +206 -153
- package/SVF-doxygen/html/classSVF_1_1BinaryOPStmt.html +68 -68
- package/SVF-doxygen/html/classSVF_1_1BranchStmt.html +51 -51
- package/SVF-doxygen/html/classSVF_1_1BranchVFGNode.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1CallPE.html +35 -35
- package/SVF-doxygen/html/classSVF_1_1CmpStmt.html +97 -97
- 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_1ConstraintGraph.html +8 -8
- package/SVF-doxygen/html/classSVF_1_1ContextDDA.html +1 -1
- 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_1FlowDDA.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1FlowSensitive.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1GepStmt-members.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1GepStmt.html +37 -37
- package/SVF-doxygen/html/classSVF_1_1ICFG.html +2 -2
- 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_1MultiOpndStmt.html +48 -48
- package/SVF-doxygen/html/classSVF_1_1PAGBuilderFromFile.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1PhiStmt.html +46 -46
- package/SVF-doxygen/html/classSVF_1_1RelationSolver.html +3 -3
- package/SVF-doxygen/html/classSVF_1_1RetPE.html +35 -35
- package/SVF-doxygen/html/classSVF_1_1SVFIR.html +13 -13
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ConsExeState-members.html +28 -28
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ConsExeState.html +296 -295
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState-members.html +15 -16
- package/SVF-doxygen/html/classSVF_1_1SVFIR2ItvExeState.html +1087 -1128
- package/SVF-doxygen/html/classSVF_1_1SVFIRBuilder.html +4 -4
- package/SVF-doxygen/html/classSVF_1_1SVFIRReader.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1SVFIRWriter.html +1 -1
- package/SVF-doxygen/html/classSVF_1_1SaberCondAllocator.html +7 -7
- package/SVF-doxygen/html/classSVF_1_1SelectStmt.html +38 -38
- package/SVF-doxygen/html/classSVF_1_1SymState.html +2 -2
- package/SVF-doxygen/html/classSVF_1_1TDForkPE.html +22 -22
- package/SVF-doxygen/html/classSVF_1_1TDJoinPE.html +21 -21
- package/SVF-doxygen/html/classSVF_1_1UnaryOPStmt.html +44 -44
- package/SVF-doxygen/html/classSVF_1_1VFG.html +15 -15
- 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 +44 -45
- package/SVF-doxygen/html/functions_func_i.html +12 -22
- 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 +1 -1
- 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 +42 -43
- package/SVF-doxygen/html/functions_i.html +30 -37
- 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 +20 -21
- package/SVF-doxygen/html/functions_p.html +12 -12
- package/SVF-doxygen/html/functions_r.html +3 -1
- package/SVF-doxygen/html/functions_s.html +18 -20
- package/SVF-doxygen/html/functions_t.html +10 -10
- package/SVF-doxygen/html/functions_type.html +5 -0
- package/SVF-doxygen/html/functions_type_i.html +4 -4
- package/SVF-doxygen/html/functions_type_v.html +3 -8
- package/SVF-doxygen/html/functions_v.html +10 -13
- package/SVF-doxygen/html/functions_vars.html +6 -6
- package/SVF-doxygen/html/functions_vars_g.html +2 -2
- package/SVF-doxygen/html/functions_vars_i.html +3 -0
- package/SVF-doxygen/html/functions_vars_o.html +0 -3
- package/SVF-doxygen/html/functions_w.html +11 -11
- 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 +868 -868
- package/SVF-doxygen/html/search/all_8.js +197 -197
- package/SVF-doxygen/html/search/all_9.js +606 -611
- 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 -116
- 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 -852
- 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 -77
- 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 -30
- package/SVF-doxygen/html/structSVF_1_1DOTGraphTraits_3_01IRGraph_01_5_01_4.html +2 -2
- package/SVF-doxygen/html/structstd_1_1hash_3_01SVF_1_1AccessPath_01_4.html +9 -9
- 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 +17 -17
- package/SVF-doxygen/html/svf-ex_8cpp_source.html +17 -17
- 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 +22 -19
- package/svf/include/MemoryModel/AccessPath.h +13 -11
- package/svf/include/SVFIR/SVFStatements.h +2 -3
- 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 +38 -37
- package/svf/lib/AbstractExecution/SVFIR2ItvExeState.cpp +273 -287
- package/svf/lib/MemoryModel/AccessPath.cpp +39 -17
- package/svf/lib/SVFIR/SVFFileSystem.cpp +2 -2
|
@@ -101,12 +101,12 @@ Public Types</h2></td></tr>
|
|
|
101
101
|
<tr class="memitem:a259b93247e06141077b2c1ae15efcbb8 inherit pub_types_classSVF_1_1ExeState"><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>,
|
|
102
102
|
<a class="el" href="classSVF_1_1ExeState.html#a259b93247e06141077b2c1ae15efcbb8acb163848414937d2331958216330a20e">SingleValueK</a>
|
|
103
103
|
}</td></tr>
|
|
104
|
-
<tr class="memdesc:a259b93247e06141077b2c1ae15efcbb8"><td class="mdescLeft"> </td><td class="mdescRight">Execution state
|
|
104
|
+
<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>
|
|
105
105
|
<tr class="separator:a259b93247e06141077b2c1ae15efcbb8 inherit pub_types_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
106
|
-
<tr class="memitem:
|
|
107
|
-
<tr class="separator:
|
|
108
|
-
<tr class="memitem:
|
|
109
|
-
<tr class="separator:
|
|
106
|
+
<tr class="memitem:a78038dd4884a501cfc94f073021eac96 inherit pub_types_classSVF_1_1ExeState"><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>
|
|
107
|
+
<tr class="separator:a78038dd4884a501cfc94f073021eac96 inherit pub_types_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
108
|
+
<tr class="memitem:a09f34aca79479221305769cae307feef inherit pub_types_classSVF_1_1ExeState"><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>
|
|
109
|
+
<tr class="separator:a09f34aca79479221305769cae307feef inherit pub_types_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
110
110
|
</table><table class="memberdecls">
|
|
111
111
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
112
112
|
Public Member Functions</h2></td></tr>
|
|
@@ -131,7 +131,6 @@ Public Member Functions</h2></td></tr>
|
|
|
131
131
|
<tr class="memdesc:a3926d9161520350852791c697a28130f"><td class="mdescLeft"> </td><td class="mdescRight">Move operator. <a href="classSVF_1_1ConsExeState.html#a3926d9161520350852791c697a28130f">More...</a><br /></td></tr>
|
|
132
132
|
<tr class="separator:a3926d9161520350852791c697a28130f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
133
133
|
<tr class="memitem:ae708165c762328232dab128e27a62f30"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#ae708165c762328232dab128e27a62f30">operator==</a> (const <a class="el" href="classSVF_1_1ConsExeState.html">ConsExeState</a> &rhs) const</td></tr>
|
|
134
|
-
<tr class="memdesc:ae708165c762328232dab128e27a62f30"><td class="mdescLeft"> </td><td class="mdescRight">Exposed APIs. <a href="classSVF_1_1ConsExeState.html#ae708165c762328232dab128e27a62f30">More...</a><br /></td></tr>
|
|
135
134
|
<tr class="separator:ae708165c762328232dab128e27a62f30"><td class="memSeparator" colspan="2"> </td></tr>
|
|
136
135
|
<tr class="memitem:a24e9becca0339056ba900ee35ab882f3"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a24e9becca0339056ba900ee35ab882f3">operator!=</a> (const <a class="el" href="classSVF_1_1ConsExeState.html">ConsExeState</a> &other) const</td></tr>
|
|
137
136
|
<tr class="separator:a24e9becca0339056ba900ee35ab882f3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -139,6 +138,34 @@ Public Member Functions</h2></td></tr>
|
|
|
139
138
|
<tr class="separator:a312954e26e384366f0ce2e99df918eda"><td class="memSeparator" colspan="2"> </td></tr>
|
|
140
139
|
<tr class="memitem:a374e087ef40804ed00a631ed22e91590"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a374e087ef40804ed00a631ed22e91590">hash</a> () const override</td></tr>
|
|
141
140
|
<tr class="separator:a374e087ef40804ed00a631ed22e91590"><td class="memSeparator" colspan="2"> </td></tr>
|
|
141
|
+
<tr class="memitem:a17ba209c5045d53c7df66d5cf031f8a4"><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_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">getAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) override</td></tr>
|
|
142
|
+
<tr class="memdesc:a17ba209c5045d53c7df66d5cf031f8a4"><td class="mdescLeft"> </td><td class="mdescRight">get memory addresses of variable <a href="classSVF_1_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">More...</a><br /></td></tr>
|
|
143
|
+
<tr class="separator:a17ba209c5045d53c7df66d5cf031f8a4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
144
|
+
<tr class="memitem:a22e7ec17139695a1ae73bd058aa78e36"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a22e7ec17139695a1ae73bd058aa78e36">operator[]</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> varId)</td></tr>
|
|
145
|
+
<tr class="memdesc:a22e7ec17139695a1ae73bd058aa78e36"><td class="mdescLeft"> </td><td class="mdescRight">get constant value of variable <a href="classSVF_1_1ConsExeState.html#a22e7ec17139695a1ae73bd058aa78e36">More...</a><br /></td></tr>
|
|
146
|
+
<tr class="separator:a22e7ec17139695a1ae73bd058aa78e36"><td class="memSeparator" colspan="2"> </td></tr>
|
|
147
|
+
<tr class="memitem:a755fbe99c6d02b6a7897dad86f46c580"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">inVarToAddrsTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const override</td></tr>
|
|
148
|
+
<tr class="memdesc:a755fbe99c6d02b6a7897dad86f46c580"><td class="mdescLeft"> </td><td class="mdescRight">whether the variable is in varToAddrs table <a href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">More...</a><br /></td></tr>
|
|
149
|
+
<tr class="separator:a755fbe99c6d02b6a7897dad86f46c580"><td class="memSeparator" colspan="2"> </td></tr>
|
|
150
|
+
<tr class="memitem:ad42a15421be927dbb4eb7efb10548850"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">inVarToValTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> varId) const</td></tr>
|
|
151
|
+
<tr class="memdesc:ad42a15421be927dbb4eb7efb10548850"><td class="mdescLeft"> </td><td class="mdescRight">whether the variable is in varToVal table <a href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">More...</a><br /></td></tr>
|
|
152
|
+
<tr class="separator:ad42a15421be927dbb4eb7efb10548850"><td class="memSeparator" colspan="2"> </td></tr>
|
|
153
|
+
<tr class="memitem:a1effca0f87f2180e160600ee5528b12f"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a1effca0f87f2180e160600ee5528b12f">inLocToAddrsTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const override</td></tr>
|
|
154
|
+
<tr class="memdesc:a1effca0f87f2180e160600ee5528b12f"><td class="mdescLeft"> </td><td class="mdescRight">whether the memory address stores memory addresses <a href="classSVF_1_1ConsExeState.html#a1effca0f87f2180e160600ee5528b12f">More...</a><br /></td></tr>
|
|
155
|
+
<tr class="separator:a1effca0f87f2180e160600ee5528b12f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
156
|
+
<tr class="memitem:a4481c80fcf9c64f23e8a216dfc01869a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a4481c80fcf9c64f23e8a216dfc01869a">inLocToValTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> varId) const</td></tr>
|
|
157
|
+
<tr class="memdesc:a4481c80fcf9c64f23e8a216dfc01869a"><td class="mdescLeft"> </td><td class="mdescRight">whether the memory address stores constant value <a href="classSVF_1_1ConsExeState.html#a4481c80fcf9c64f23e8a216dfc01869a">More...</a><br /></td></tr>
|
|
158
|
+
<tr class="separator:a4481c80fcf9c64f23e8a216dfc01869a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
159
|
+
<tr class="memitem:a990f50ae338a2e332d333bb3fc04c520"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1ConsExeState.html#a64a755f61886ef3f43f48c47eb76e9cc">VarToValMap</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a990f50ae338a2e332d333bb3fc04c520">getVarToVal</a> () const</td></tr>
|
|
160
|
+
<tr class="separator:a990f50ae338a2e332d333bb3fc04c520"><td class="memSeparator" colspan="2"> </td></tr>
|
|
161
|
+
<tr class="memitem:adf45b2d4b73220e80a1265f4e1b1ee35"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1ConsExeState.html#a559fb9ebd9c5ca18bb0b9ea062cd27db">LocToValMap</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#adf45b2d4b73220e80a1265f4e1b1ee35">getLocToVal</a> () const</td></tr>
|
|
162
|
+
<tr class="separator:adf45b2d4b73220e80a1265f4e1b1ee35"><td class="memSeparator" colspan="2"> </td></tr>
|
|
163
|
+
<tr class="memitem:af8f2b698dd97793b0124cd5a4ac4d035"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#af8f2b698dd97793b0124cd5a4ac4d035">inLocalLocToAddrsTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const</td></tr>
|
|
164
|
+
<tr class="separator:af8f2b698dd97793b0124cd5a4ac4d035"><td class="memSeparator" colspan="2"> </td></tr>
|
|
165
|
+
<tr class="memitem:a8da7bf977911ca6d3bd27f38ef852321"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a8da7bf977911ca6d3bd27f38ef852321">inLocalLocToValTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> varId) const</td></tr>
|
|
166
|
+
<tr class="separator:a8da7bf977911ca6d3bd27f38ef852321"><td class="memSeparator" colspan="2"> </td></tr>
|
|
167
|
+
<tr class="memitem:aa4a3abdc9a7fe9af0b82190bf7827efa"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#aa4a3abdc9a7fe9af0b82190bf7827efa">inLocalLocToValTable</a> (const <a class="el" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> &addr) const</td></tr>
|
|
168
|
+
<tr class="separator:aa4a3abdc9a7fe9af0b82190bf7827efa"><td class="memSeparator" colspan="2"> </td></tr>
|
|
142
169
|
<tr class="memitem:a8f2668196be5ecbc061d5b43caa43cae"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a8f2668196be5ecbc061d5b43caa43cae">joinWith</a> (const <a class="el" href="classSVF_1_1ConsExeState.html">ConsExeState</a> &rhs)</td></tr>
|
|
143
170
|
<tr class="memdesc:a8f2668196be5ecbc061d5b43caa43cae"><td class="mdescLeft"> </td><td class="mdescRight">Merge rhs into this. <a href="classSVF_1_1ConsExeState.html#a8f2668196be5ecbc061d5b43caa43cae">More...</a><br /></td></tr>
|
|
144
171
|
<tr class="separator:a8f2668196be5ecbc061d5b43caa43cae"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -148,6 +175,8 @@ Public Member Functions</h2></td></tr>
|
|
|
148
175
|
<tr class="memitem:a600317df0db3e813b952727884111cdd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a600317df0db3e813b952727884111cdd">applySummary</a> (const <a class="el" href="classSVF_1_1ConsExeState.html">ConsExeState</a> &summary)</td></tr>
|
|
149
176
|
<tr class="memdesc:a600317df0db3e813b952727884111cdd"><td class="mdescLeft"> </td><td class="mdescRight">Update symbolic states based on the summary/side-effect of callee. <a href="classSVF_1_1ConsExeState.html#a600317df0db3e813b952727884111cdd">More...</a><br /></td></tr>
|
|
150
177
|
<tr class="separator:a600317df0db3e813b952727884111cdd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
178
|
+
<tr class="memitem:ad3914ce88b680803d7744c4fa63fa93b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#ad3914ce88b680803d7744c4fa63fa93b">equalVar</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> lhs, <a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> rhs)</td></tr>
|
|
179
|
+
<tr class="separator:ad3914ce88b680803d7744c4fa63fa93b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
151
180
|
<tr class="memitem:a08f64cf55802c4ddbc1e01b06ce55dec"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a08f64cf55802c4ddbc1e01b06ce55dec">isNullState</a> () const</td></tr>
|
|
152
181
|
<tr class="memdesc:a08f64cf55802c4ddbc1e01b06ce55dec"><td class="mdescLeft"> </td><td class="mdescRight">Whether state is null state (uninitialized state) <a href="classSVF_1_1ConsExeState.html#a08f64cf55802c4ddbc1e01b06ce55dec">More...</a><br /></td></tr>
|
|
153
182
|
<tr class="separator:a08f64cf55802c4ddbc1e01b06ce55dec"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -169,38 +198,14 @@ Public Member Functions</h2></td></tr>
|
|
|
169
198
|
<tr class="separator:a3f5fa4efdd0f45b375f18596734f3d07"><td class="memSeparator" colspan="2"> </td></tr>
|
|
170
199
|
<tr class="memitem:a6304348363989dde61754ae161756f0f"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a6304348363989dde61754ae161756f0f">applyPhi</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> res, std::vector< <a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> > &ops)</td></tr>
|
|
171
200
|
<tr class="separator:a6304348363989dde61754ae161756f0f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
172
|
-
<tr class="memitem:
|
|
173
|
-
<tr class="separator:
|
|
174
|
-
<tr class="memitem:a22eb7b0b38d8df8efae757f4c76b5328"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a22eb7b0b38d8df8efae757f4c76b5328">inLocalLocToVal</a> (const <a class="el" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> &loc) const</td></tr>
|
|
175
|
-
<tr class="separator:a22eb7b0b38d8df8efae757f4c76b5328"><td class="memSeparator" colspan="2"> </td></tr>
|
|
176
|
-
<tr class="memitem:a77fc570e6ee986c50cecaa20f06e6f77"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a77fc570e6ee986c50cecaa20f06e6f77">inLocalLocToVal</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> varId) const</td></tr>
|
|
177
|
-
<tr class="separator:a77fc570e6ee986c50cecaa20f06e6f77"><td class="memSeparator" colspan="2"> </td></tr>
|
|
178
|
-
<tr class="memitem:a6cf5a55374178b2d538b79c3efed3f34"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a6cf5a55374178b2d538b79c3efed3f34">inLocToVal</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> varId) const</td></tr>
|
|
179
|
-
<tr class="separator:a6cf5a55374178b2d538b79c3efed3f34"><td class="memSeparator" colspan="2"> </td></tr>
|
|
180
|
-
<tr class="memitem:ad3914ce88b680803d7744c4fa63fa93b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#ad3914ce88b680803d7744c4fa63fa93b">equalVar</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> lhs, <a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> rhs)</td></tr>
|
|
181
|
-
<tr class="separator:ad3914ce88b680803d7744c4fa63fa93b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
182
|
-
<tr class="memitem:a755fbe99c6d02b6a7897dad86f46c580"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">inVarToAddrsTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const override</td></tr>
|
|
183
|
-
<tr class="separator:a755fbe99c6d02b6a7897dad86f46c580"><td class="memSeparator" colspan="2"> </td></tr>
|
|
184
|
-
<tr class="memitem:a1effca0f87f2180e160600ee5528b12f"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a1effca0f87f2180e160600ee5528b12f">inLocToAddrsTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const override</td></tr>
|
|
185
|
-
<tr class="separator:a1effca0f87f2180e160600ee5528b12f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
186
|
-
<tr class="memitem:af8f2b698dd97793b0124cd5a4ac4d035"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#af8f2b698dd97793b0124cd5a4ac4d035">inLocalLocToAddrsTable</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) const</td></tr>
|
|
187
|
-
<tr class="separator:af8f2b698dd97793b0124cd5a4ac4d035"><td class="memSeparator" colspan="2"> </td></tr>
|
|
188
|
-
<tr class="memitem:a6205eb8ceaba400a2ad5a554abaed096"><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_1ConsExeState.html#a6205eb8ceaba400a2ad5a554abaed096">getVAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> id) override</td></tr>
|
|
189
|
-
<tr class="separator:a6205eb8ceaba400a2ad5a554abaed096"><td class="memSeparator" colspan="2"> </td></tr>
|
|
190
|
-
<tr class="memitem:a6d954f4aef6af30852bdc7ddb67a9d55"><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_1ConsExeState.html#a6d954f4aef6af30852bdc7ddb67a9d55">loadVAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> addr) override</td></tr>
|
|
191
|
-
<tr class="separator:a6d954f4aef6af30852bdc7ddb67a9d55"><td class="memSeparator" colspan="2"> </td></tr>
|
|
201
|
+
<tr class="memitem:a865998aed7e292ebd15532506eadea55"><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_1ConsExeState.html#a865998aed7e292ebd15532506eadea55">loadAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> addr) override</td></tr>
|
|
202
|
+
<tr class="separator:a865998aed7e292ebd15532506eadea55"><td class="memSeparator" colspan="2"> </td></tr>
|
|
192
203
|
<tr class="memitem:aa3f16fb06541184e49ef4f4ea95d894c"><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_1ConsExeState.html#aa3f16fb06541184e49ef4f4ea95d894c">varToAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> varId) const override</td></tr>
|
|
193
204
|
<tr class="separator:aa3f16fb06541184e49ef4f4ea95d894c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
194
205
|
<tr class="memitem:a4136ad2172772347e8d6aedc2f8b811e"><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_1ConsExeState.html#a4136ad2172772347e8d6aedc2f8b811e">locToAddrs</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> objId) const override</td></tr>
|
|
195
206
|
<tr class="separator:a4136ad2172772347e8d6aedc2f8b811e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
196
|
-
<tr class="memitem:a990f50ae338a2e332d333bb3fc04c520"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1ConsExeState.html#a64a755f61886ef3f43f48c47eb76e9cc">VarToValMap</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a990f50ae338a2e332d333bb3fc04c520">getVarToVal</a> () const</td></tr>
|
|
197
|
-
<tr class="separator:a990f50ae338a2e332d333bb3fc04c520"><td class="memSeparator" colspan="2"> </td></tr>
|
|
198
|
-
<tr class="memitem:adf45b2d4b73220e80a1265f4e1b1ee35"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSVF_1_1ConsExeState.html#a559fb9ebd9c5ca18bb0b9ea062cd27db">LocToValMap</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#adf45b2d4b73220e80a1265f4e1b1ee35">getLocToVal</a> () const</td></tr>
|
|
199
|
-
<tr class="separator:adf45b2d4b73220e80a1265f4e1b1ee35"><td class="memSeparator" colspan="2"> </td></tr>
|
|
200
207
|
<tr class="memitem:a3efeeb8311b868c4a7fc2df69f061317"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#ad781b0b14e89773e774072b280658ef3">s64_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a3efeeb8311b868c4a7fc2df69f061317">getNumber</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> lhs)</td></tr>
|
|
201
208
|
<tr class="separator:a3efeeb8311b868c4a7fc2df69f061317"><td class="memSeparator" colspan="2"> </td></tr>
|
|
202
|
-
<tr class="memitem:a22e7ec17139695a1ae73bd058aa78e36"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a22e7ec17139695a1ae73bd058aa78e36">operator[]</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> varId)</td></tr>
|
|
203
|
-
<tr class="separator:a22e7ec17139695a1ae73bd058aa78e36"><td class="memSeparator" colspan="2"> </td></tr>
|
|
204
209
|
<tr class="memitem:adbf80e78f27a30f257fa8790f1cb78f5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#adbf80e78f27a30f257fa8790f1cb78f5">store</a> (const <a class="el" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> &loc, const <a class="el" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> &value)</td></tr>
|
|
205
210
|
<tr class="memdesc:adbf80e78f27a30f257fa8790f1cb78f5"><td class="mdescLeft"> </td><td class="mdescRight">Store value to location. <a href="classSVF_1_1ConsExeState.html#adbf80e78f27a30f257fa8790f1cb78f5">More...</a><br /></td></tr>
|
|
206
211
|
<tr class="separator:adbf80e78f27a30f257fa8790f1cb78f5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -224,12 +229,10 @@ Public Member Functions</h2></td></tr>
|
|
|
224
229
|
<tr class="separator:aebeb2054a8118fd33df9fef31bacda03 inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
225
230
|
<tr class="memitem:ad706a7c5d1e4b198a74a0b5a8a89be8f inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
226
231
|
<tr class="separator:ad706a7c5d1e4b198a74a0b5a8a89be8f inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
227
|
-
<tr class="memitem:
|
|
228
|
-
<tr class="separator:
|
|
229
|
-
<tr class="memitem:
|
|
230
|
-
<tr class="separator:
|
|
231
|
-
<tr class="memitem:a45be8c439528b7560024fa51f36a8ffb inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
232
|
-
<tr class="separator:a45be8c439528b7560024fa51f36a8ffb inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
232
|
+
<tr class="memitem:a0710c9cc1a3c40c95cd362d49bea459b inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
233
|
+
<tr class="separator:a0710c9cc1a3c40c95cd362d49bea459b inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
234
|
+
<tr class="memitem:aa7b897b107d722909f9de9dcbabad7cf inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
235
|
+
<tr class="separator:aa7b897b107d722909f9de9dcbabad7cf inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
233
236
|
<tr class="memitem:a60464bebe5f257bbe1356eee149524c0 inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
234
237
|
<tr class="memdesc:a60464bebe5f257bbe1356eee149524c0 inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
235
238
|
<tr class="separator:a60464bebe5f257bbe1356eee149524c0 inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -238,14 +241,16 @@ Public Member Functions</h2></td></tr>
|
|
|
238
241
|
<tr class="separator:a80bcce9b4303d651b27332c2fc0d3bdc inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
239
242
|
<tr class="memitem:ab7f7de02202838bb9e3da5410983cfb1 inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
240
243
|
<tr class="separator:ab7f7de02202838bb9e3da5410983cfb1 inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
241
|
-
<tr class="memitem:
|
|
242
|
-
<tr class="separator:
|
|
243
|
-
<tr class="memitem:afcb9e71dc8686d5c125d63596bd4f442 inherit pub_methods_classSVF_1_1ExeState"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classSVF_1_1ExeState.html#aab6dfbae3f5d743d5fff6bba3327f231">VarToVAddrs</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ExeState.html#afcb9e71dc8686d5c125d63596bd4f442">getLocToVAddrs</a> () const</td></tr>
|
|
244
|
-
<tr class="separator:afcb9e71dc8686d5c125d63596bd4f442 inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
245
|
-
<tr class="memitem:aad0556739ce5b173054c81cbbfff4b72 inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
246
|
-
<tr class="separator:aad0556739ce5b173054c81cbbfff4b72 inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
244
|
+
<tr class="memitem:a99f4437a7e350fec131d48f52082d672 inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
245
|
+
<tr class="separator:a99f4437a7e350fec131d48f52082d672 inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
247
246
|
<tr class="memitem:a8edd5f30ab971ce893ffdb39d8b6a265 inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
248
247
|
<tr class="separator:a8edd5f30ab971ce893ffdb39d8b6a265 inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
248
|
+
<tr class="memitem:a0e4c8a41aa861ff2862d8b620c902f21 inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
249
|
+
<tr class="separator:a0e4c8a41aa861ff2862d8b620c902f21 inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
250
|
+
<tr class="memitem:ab828094e1026046814c1e3d44d3f084c inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
251
|
+
<tr class="separator:ab828094e1026046814c1e3d44d3f084c inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
252
|
+
<tr class="memitem:a45be8c439528b7560024fa51f36a8ffb inherit pub_methods_classSVF_1_1ExeState"><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>
|
|
253
|
+
<tr class="separator:a45be8c439528b7560024fa51f36a8ffb inherit pub_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
249
254
|
</table><table class="memberdecls">
|
|
250
255
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
|
|
251
256
|
Static Public Member Functions</h2></td></tr>
|
|
@@ -296,14 +301,18 @@ Static Public Attributes</h2></td></tr>
|
|
|
296
301
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
|
|
297
302
|
Protected Attributes</h2></td></tr>
|
|
298
303
|
<tr class="memitem:a07b135c218f56fdab8ef8504190563df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1ConsExeState.html#a64a755f61886ef3f43f48c47eb76e9cc">VarToValMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a></td></tr>
|
|
304
|
+
<tr class="memdesc:a07b135c218f56fdab8ef8504190563df"><td class="mdescLeft"> </td><td class="mdescRight">Map a variable (symbol) to its constant value. <a href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">More...</a><br /></td></tr>
|
|
299
305
|
<tr class="separator:a07b135c218f56fdab8ef8504190563df"><td class="memSeparator" colspan="2"> </td></tr>
|
|
300
306
|
<tr class="memitem:a987e69694742dafb49eb697bfde5cd19"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1ConsExeState.html#a559fb9ebd9c5ca18bb0b9ea062cd27db">LocToValMap</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a></td></tr>
|
|
307
|
+
<tr class="memdesc:a987e69694742dafb49eb697bfde5cd19"><td class="mdescLeft"> </td><td class="mdescRight">Map a memory address to its stored constant value. <a href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">More...</a><br /></td></tr>
|
|
301
308
|
<tr class="separator:a987e69694742dafb49eb697bfde5cd19"><td class="memSeparator" colspan="2"> </td></tr>
|
|
302
309
|
<tr class="inherit_header pro_attribs_classSVF_1_1ExeState"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classSVF_1_1ExeState')"><img src="closed.png" alt="-"/> Protected Attributes inherited from <a class="el" href="classSVF_1_1ExeState.html">SVF::ExeState</a></td></tr>
|
|
303
|
-
<tr class="memitem:
|
|
304
|
-
<tr class="
|
|
305
|
-
<tr class="
|
|
306
|
-
<tr class="
|
|
310
|
+
<tr class="memitem:ad317f2ae2e599a131a6fd9f415f5d712 inherit pro_attribs_classSVF_1_1ExeState"><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>
|
|
311
|
+
<tr class="memdesc:ad317f2ae2e599a131a6fd9f415f5d712 inherit pro_attribs_classSVF_1_1ExeState"><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>
|
|
312
|
+
<tr class="separator:ad317f2ae2e599a131a6fd9f415f5d712 inherit pro_attribs_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
313
|
+
<tr class="memitem:a79866a547dc4805d3fefdfd528d2df2a inherit pro_attribs_classSVF_1_1ExeState"><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>
|
|
314
|
+
<tr class="memdesc:a79866a547dc4805d3fefdfd528d2df2a inherit pro_attribs_classSVF_1_1ExeState"><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>
|
|
315
|
+
<tr class="separator:a79866a547dc4805d3fefdfd528d2df2a inherit pro_attribs_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
307
316
|
</table><table class="memberdecls">
|
|
308
317
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
|
|
309
318
|
Private Member Functions</h2></td></tr>
|
|
@@ -325,8 +334,8 @@ Friends</h2></td></tr>
|
|
|
325
334
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
|
|
326
335
|
Additional Inherited Members</h2></td></tr>
|
|
327
336
|
<tr class="inherit_header pro_static_methods_classSVF_1_1ExeState"><td colspan="2" onclick="javascript:toggleInherit('pro_static_methods_classSVF_1_1ExeState')"><img src="closed.png" alt="-"/> Static Protected Member Functions inherited from <a class="el" href="classSVF_1_1ExeState.html">SVF::ExeState</a></td></tr>
|
|
328
|
-
<tr class="memitem:
|
|
329
|
-
<tr class="separator:
|
|
337
|
+
<tr class="memitem:a0a24ad3ced48b6755b7fc917d0f0fbb9 inherit pro_static_methods_classSVF_1_1ExeState"><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>
|
|
338
|
+
<tr class="separator:a0a24ad3ced48b6755b7fc917d0f0fbb9 inherit pro_static_methods_classSVF_1_1ExeState"><td class="memSeparator" colspan="2"> </td></tr>
|
|
330
339
|
</table>
|
|
331
340
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
332
341
|
<div class="textblock"><p>Constant Expr Execution State</p>
|
|
@@ -391,8 +400,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
391
400
|
</table>
|
|
392
401
|
</div><div class="memdoc">
|
|
393
402
|
|
|
394
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
395
|
-
<div class="fragment"><div class="line"><a name="
|
|
403
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00058">58</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
404
|
+
<div class="fragment"><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> : <a class="code" href="classSVF_1_1ExeState.html#af1b6335e3ca95d491b0d8dfb95cf3c9b">ExeState</a>(<a class="code" href="classSVF_1_1ExeState.html#a259b93247e06141077b2c1ae15efcbb8acb163848414937d2331958216330a20e">ExeState::SingleValueK</a>) {}</div>
|
|
396
405
|
</div><!-- fragment -->
|
|
397
406
|
</div>
|
|
398
407
|
</div>
|
|
@@ -432,9 +441,9 @@ Additional Inherited Members</h2></td></tr>
|
|
|
432
441
|
|
|
433
442
|
<p>Constructor. </p>
|
|
434
443
|
|
|
435
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
436
|
-
<div class="fragment"><div class="line"><a name="
|
|
437
|
-
<div class="line"><a name="
|
|
444
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00062">62</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
445
|
+
<div class="fragment"><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  : <a class="code" href="classSVF_1_1ExeState.html#af1b6335e3ca95d491b0d8dfb95cf3c9b">ExeState</a>(<a class="code" href="classSVF_1_1ExeState.html#a259b93247e06141077b2c1ae15efcbb8acb163848414937d2331958216330a20e">ExeState::SingleValueK</a>), <a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>(</div>
|
|
446
|
+
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(varToValMap)), <a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(locToValMap)) {}</div>
|
|
438
447
|
</div><!-- fragment -->
|
|
439
448
|
</div>
|
|
440
449
|
</div>
|
|
@@ -464,12 +473,12 @@ Additional Inherited Members</h2></td></tr>
|
|
|
464
473
|
|
|
465
474
|
<p>Copy Constructor. </p>
|
|
466
475
|
|
|
467
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
468
|
-
<div class="fragment"><div class="line"><a name="
|
|
469
|
-
<div class="line"><a name="
|
|
470
|
-
<div class="line"><a name="
|
|
471
|
-
<div class="line"><a name="
|
|
472
|
-
<div class="line"><a name="
|
|
476
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00066">66</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
477
|
+
<div class="fragment"><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  : <a class="code" href="classSVF_1_1ExeState.html#af1b6335e3ca95d491b0d8dfb95cf3c9b">ExeState</a>(rhs), <a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>(rhs.getVarToVal()),</div>
|
|
478
|
+
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>(rhs.getLocToVal())</div>
|
|
479
|
+
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  {</div>
|
|
480
|
+
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  </div>
|
|
481
|
+
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  }</div>
|
|
473
482
|
</div><!-- fragment -->
|
|
474
483
|
</div>
|
|
475
484
|
</div>
|
|
@@ -498,11 +507,11 @@ Additional Inherited Members</h2></td></tr>
|
|
|
498
507
|
|
|
499
508
|
<p>Destructor. </p>
|
|
500
509
|
|
|
501
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
502
|
-
<div class="fragment"><div class="line"><a name="
|
|
503
|
-
<div class="line"><a name="
|
|
504
|
-
<div class="line"><a name="
|
|
505
|
-
<div class="line"><a name="
|
|
510
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00073">73</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
511
|
+
<div class="fragment"><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  {</div>
|
|
512
|
+
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>.clear();</div>
|
|
513
|
+
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>.clear();</div>
|
|
514
|
+
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  }</div>
|
|
506
515
|
</div><!-- fragment -->
|
|
507
516
|
</div>
|
|
508
517
|
</div>
|
|
@@ -532,12 +541,12 @@ Additional Inherited Members</h2></td></tr>
|
|
|
532
541
|
|
|
533
542
|
<p>Move Constructor. </p>
|
|
534
543
|
|
|
535
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
536
|
-
<div class="fragment"><div class="line"><a name="
|
|
537
|
-
<div class="line"><a name="
|
|
538
|
-
<div class="line"><a name="
|
|
539
|
-
<div class="line"><a name="
|
|
540
|
-
<div class="line"><a name="
|
|
544
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00083">83</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
545
|
+
<div class="fragment"><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  : <a class="code" href="classSVF_1_1ExeState.html#af1b6335e3ca95d491b0d8dfb95cf3c9b">ExeState</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">std::move</a>(rhs)),</div>
|
|
546
|
+
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(rhs._varToVal)), <a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>(<a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(rhs._locToVal))</div>
|
|
547
|
+
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  {</div>
|
|
548
|
+
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  </div>
|
|
549
|
+
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  }</div>
|
|
541
550
|
</div><!-- fragment -->
|
|
542
551
|
</div>
|
|
543
552
|
</div>
|
|
@@ -573,10 +582,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
573
582
|
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  <span class="keywordflow">for</span> (<a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> i = 0; i < ops.size(); i++)</div>
|
|
574
583
|
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  {</div>
|
|
575
584
|
<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> curId = ops[i];</div>
|
|
576
|
-
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1ConsExeState.html#
|
|
585
|
+
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">inVarToValTable</a>(curId))</div>
|
|
577
586
|
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  {</div>
|
|
578
587
|
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> &cur = (*this)[curId];</div>
|
|
579
|
-
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>  <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1ConsExeState.html#
|
|
588
|
+
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>  <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">inVarToValTable</a>(res))</div>
|
|
580
589
|
<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>  {</div>
|
|
581
590
|
<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>  (*this)[res] = cur;</div>
|
|
582
591
|
<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>  }</div>
|
|
@@ -587,14 +596,14 @@ Additional Inherited Members</h2></td></tr>
|
|
|
587
596
|
<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>  }</div>
|
|
588
597
|
<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">inVarToAddrsTable</a>(curId))</div>
|
|
589
598
|
<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>  {</div>
|
|
590
|
-
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#
|
|
599
|
+
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> &cur = <a class="code" href="classSVF_1_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">getAddrs</a>(curId);</div>
|
|
591
600
|
<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>  <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">inVarToAddrsTable</a>(res))</div>
|
|
592
601
|
<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>  {</div>
|
|
593
|
-
<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>  <a class="code" href="classSVF_1_1ConsExeState.html#
|
|
602
|
+
<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>  <a class="code" href="classSVF_1_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">getAddrs</a>(res) = cur;</div>
|
|
594
603
|
<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>  }</div>
|
|
595
604
|
<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>  <span class="keywordflow">else</span></div>
|
|
596
605
|
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>  {</div>
|
|
597
|
-
<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>  <a class="code" href="classSVF_1_1ConsExeState.html#
|
|
606
|
+
<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>  <a class="code" href="classSVF_1_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">getAddrs</a>(res).<a class="code" href="classSVF_1_1AddressValue.html#acad5216bdc02a234d57abfe9ae72a12a">join_with</a>(cur);</div>
|
|
598
607
|
<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>  }</div>
|
|
599
608
|
<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>  }</div>
|
|
600
609
|
<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>  }</div>
|
|
@@ -643,18 +652,18 @@ Additional Inherited Members</h2></td></tr>
|
|
|
643
652
|
|
|
644
653
|
<p class="definition">Definition at line <a class="el" href="ConsExeState_8cpp_source.html#l00446">446</a> of file <a class="el" href="ConsExeState_8cpp_source.html">ConsExeState.cpp</a>.</p>
|
|
645
654
|
<div class="fragment"><div class="line"><a name="l00447"></a><span class="lineno"> 447</span> {</div>
|
|
646
|
-
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1ConsExeState.html#
|
|
655
|
+
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>  <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">inVarToValTable</a>(top) && <a class="code" href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">inVarToValTable</a>(fop) && <a class="code" href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">inVarToValTable</a>(cond))</div>
|
|
647
656
|
<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>  {</div>
|
|
648
657
|
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>  <a class="code" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> &tExpr = (*this)[top], &fExpr = (*this)[fop], &condExpr = (*this)[cond];</div>
|
|
649
658
|
<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  </div>
|
|
650
659
|
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a673a2b823a1c3ea46f38e3956ca143e8">assign</a>((*<span class="keyword">this</span>)[res], ite(condExpr == 1, tExpr, fExpr));</div>
|
|
651
660
|
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>  }</div>
|
|
652
|
-
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">inVarToAddrsTable</a>(top) && <a class="code" href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">inVarToAddrsTable</a>(fop) && <a class="code" href="classSVF_1_1ConsExeState.html#
|
|
661
|
+
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">inVarToAddrsTable</a>(top) && <a class="code" href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">inVarToAddrsTable</a>(fop) && <a class="code" href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">inVarToValTable</a>(cond))</div>
|
|
653
662
|
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>  {</div>
|
|
654
663
|
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>  <a class="code" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> &condExpr = (*this)[cond];</div>
|
|
655
664
|
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>  <span class="keywordflow">if</span> (condExpr.<a class="code" href="classSVF_1_1Z3Expr.html#ad1802109545427278e3a8bde52e016b0">is_numeral</a>())</div>
|
|
656
665
|
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>  {</div>
|
|
657
|
-
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <a class="code" href="classSVF_1_1ConsExeState.html#
|
|
666
|
+
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <a class="code" href="classSVF_1_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">getAddrs</a>(res) = condExpr.<a class="code" href="classSVF_1_1BoundedZ3Expr.html#ae1a0bc98b18563c87136dea2a60f67be">is_zero</a>() ? <a class="code" href="classSVF_1_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">getAddrs</a>(fop) : <a class="code" href="classSVF_1_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">getAddrs</a>(top);</div>
|
|
658
667
|
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  }</div>
|
|
659
668
|
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  }</div>
|
|
660
669
|
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
@@ -696,13 +705,13 @@ Additional Inherited Members</h2></td></tr>
|
|
|
696
705
|
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  {</div>
|
|
697
706
|
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  <a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>[<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first] = <a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second;</div>
|
|
698
707
|
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  }</div>
|
|
699
|
-
<div class="line"><a name="l00239"></a><span class="lineno"> 239</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>: summary.<a class="code" href="classSVF_1_1ExeState.html#
|
|
708
|
+
<div class="line"><a name="l00239"></a><span class="lineno"> 239</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>: summary.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>)</div>
|
|
700
709
|
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  {</div>
|
|
701
|
-
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  <a class="code" href="classSVF_1_1ExeState.html#
|
|
710
|
+
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>[<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first] = <a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second;</div>
|
|
702
711
|
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  }</div>
|
|
703
|
-
<div class="line"><a name="l00243"></a><span class="lineno"> 243</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>: summary.<a class="code" href="classSVF_1_1ExeState.html#
|
|
712
|
+
<div class="line"><a name="l00243"></a><span class="lineno"> 243</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>: summary.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>)</div>
|
|
704
713
|
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  {</div>
|
|
705
|
-
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  <a class="code" href="classSVF_1_1ExeState.html#
|
|
714
|
+
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>[<a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.first] = <a class="code" href="cJSON_8h.html#ac76cea59d438ba893d2f82aabb367d14">item</a>.second;</div>
|
|
706
715
|
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  }</div>
|
|
707
716
|
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> }</div>
|
|
708
717
|
</div><!-- fragment -->
|
|
@@ -799,7 +808,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
799
808
|
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  <a class="code" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> &expr = globES[varId];</div>
|
|
800
809
|
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  <span class="keywordflow">if</span> (expr.<a class="code" href="classSVF_1_1Z3Expr.html#ad1802109545427278e3a8bde52e016b0">is_numeral</a>() && <a class="code" href="classSVF_1_1ExeState.html#abfaad70395d9f4416f297887c84f7df4">isVirtualMemAddress</a>(expr.<a class="code" href="classSVF_1_1Z3Expr.html#aa6c7fee4f418817dfa7458d830303f6e">get_numeral_int</a>()))</div>
|
|
801
810
|
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  {</div>
|
|
802
|
-
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keywordflow">if</span> (globES.<a class="code" href="classSVF_1_1ConsExeState.html#
|
|
811
|
+
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keywordflow">if</span> (globES.<a class="code" href="classSVF_1_1ConsExeState.html#a8da7bf977911ca6d3bd27f38ef852321">inLocalLocToValTable</a>(expr))</div>
|
|
803
812
|
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  {</div>
|
|
804
813
|
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <a class="code" href="classSVF_1_1ConsExeState.html#adbf80e78f27a30f257fa8790f1cb78f5">store</a>(expr, globES.<a class="code" href="classSVF_1_1ConsExeState.html#a2fa6360da2149684a9771fdbfae71a66">load</a>(expr));</div>
|
|
805
814
|
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  }</div>
|
|
@@ -843,11 +852,11 @@ Additional Inherited Members</h2></td></tr>
|
|
|
843
852
|
</table>
|
|
844
853
|
</div><div class="memdoc">
|
|
845
854
|
|
|
846
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
847
|
-
<div class="fragment"><div class="line"><a name="
|
|
848
|
-
<div class="line"><a name="
|
|
849
|
-
<div class="line"><a name="
|
|
850
|
-
<div class="line"><a name="
|
|
855
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00198">198</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
856
|
+
<div class="fragment"><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  {</div>
|
|
857
|
+
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <span class="keywordflow">if</span> (!<a class="code" href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">inVarToValTable</a>(lhs) || !<a class="code" href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">inVarToValTable</a>(rhs)) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
858
|
+
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  <span class="keywordflow">return</span> eq((*<span class="keyword">this</span>)[lhs], (*<span class="keyword">this</span>)[rhs]);</div>
|
|
859
|
+
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  }</div>
|
|
851
860
|
</div><!-- fragment -->
|
|
852
861
|
</div>
|
|
853
862
|
</div>
|
|
@@ -912,6 +921,43 @@ Additional Inherited Members</h2></td></tr>
|
|
|
912
921
|
</div><!-- fragment -->
|
|
913
922
|
</div>
|
|
914
923
|
</div>
|
|
924
|
+
<a id="a17ba209c5045d53c7df66d5cf031f8a4"></a>
|
|
925
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a17ba209c5045d53c7df66d5cf031f8a4">◆ </a></span>getAddrs()</h2>
|
|
926
|
+
|
|
927
|
+
<div class="memitem">
|
|
928
|
+
<div class="memproto">
|
|
929
|
+
<table class="mlabels">
|
|
930
|
+
<tr>
|
|
931
|
+
<td class="mlabels-left">
|
|
932
|
+
<table class="memname">
|
|
933
|
+
<tr>
|
|
934
|
+
<td class="memname">virtual <a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a>& SVF::ConsExeState::getAddrs </td>
|
|
935
|
+
<td>(</td>
|
|
936
|
+
<td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td>
|
|
937
|
+
<td class="paramname"><em>id</em></td><td>)</td>
|
|
938
|
+
<td></td>
|
|
939
|
+
</tr>
|
|
940
|
+
</table>
|
|
941
|
+
</td>
|
|
942
|
+
<td class="mlabels-right">
|
|
943
|
+
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
|
|
944
|
+
</tr>
|
|
945
|
+
</table>
|
|
946
|
+
</div><div class="memdoc">
|
|
947
|
+
|
|
948
|
+
<p>get memory addresses of variable </p>
|
|
949
|
+
|
|
950
|
+
<p>Reimplemented from <a class="el" href="classSVF_1_1ExeState.html#a3b340ae2aad86f6125d24b42ec8901d0">SVF::ExeState</a>.</p>
|
|
951
|
+
|
|
952
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00120">120</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
953
|
+
<div class="fragment"><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  {</div>
|
|
954
|
+
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.find(<span class="keywordtype">id</span>);</div>
|
|
955
|
+
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.end()) <span class="keywordflow">return</span> it->second;</div>
|
|
956
|
+
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>[id];</div>
|
|
957
|
+
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  }</div>
|
|
958
|
+
</div><!-- fragment -->
|
|
959
|
+
</div>
|
|
960
|
+
</div>
|
|
915
961
|
<a id="a4997055a5a0a87db5420c569a43a9376"></a>
|
|
916
962
|
<h2 class="memtitle"><span class="permalink"><a href="#a4997055a5a0a87db5420c569a43a9376">◆ </a></span>getFalseZ3Expr()</h2>
|
|
917
963
|
|
|
@@ -935,10 +981,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
935
981
|
</table>
|
|
936
982
|
</div><div class="memdoc">
|
|
937
983
|
|
|
938
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
939
|
-
<div class="fragment"><div class="line"><a name="
|
|
940
|
-
<div class="line"><a name="
|
|
941
|
-
<div class="line"><a name="
|
|
984
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00383">383</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
985
|
+
<div class="fragment"><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  {</div>
|
|
986
|
+
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a35a28ef0a8acd14f44e6755eff424d9d">getContext</a>().bool_val(<span class="keyword">false</span>);</div>
|
|
987
|
+
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>  }</div>
|
|
942
988
|
</div><!-- fragment -->
|
|
943
989
|
</div>
|
|
944
990
|
</div>
|
|
@@ -965,10 +1011,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
965
1011
|
</table>
|
|
966
1012
|
</div><div class="memdoc">
|
|
967
1013
|
|
|
968
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
969
|
-
<div class="fragment"><div class="line"><a name="
|
|
970
|
-
<div class="line"><a name="
|
|
971
|
-
<div class="line"><a name="
|
|
1014
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00368">368</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1015
|
+
<div class="fragment"><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  {</div>
|
|
1016
|
+
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a35a28ef0a8acd14f44e6755eff424d9d">getContext</a>().int_val(1);</div>
|
|
1017
|
+
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  }</div>
|
|
972
1018
|
</div><!-- fragment -->
|
|
973
1019
|
</div>
|
|
974
1020
|
</div>
|
|
@@ -995,10 +1041,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
995
1041
|
</table>
|
|
996
1042
|
</div><div class="memdoc">
|
|
997
1043
|
|
|
998
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
999
|
-
<div class="fragment"><div class="line"><a name="
|
|
1000
|
-
<div class="line"><a name="
|
|
1001
|
-
<div class="line"><a name="
|
|
1044
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00373">373</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1045
|
+
<div class="fragment"><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  {</div>
|
|
1046
|
+
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a35a28ef0a8acd14f44e6755eff424d9d">getContext</a>().int_val(0);</div>
|
|
1047
|
+
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  }</div>
|
|
1002
1048
|
</div><!-- fragment -->
|
|
1003
1049
|
</div>
|
|
1004
1050
|
</div>
|
|
@@ -1025,10 +1071,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1025
1071
|
</table>
|
|
1026
1072
|
</div><div class="memdoc">
|
|
1027
1073
|
|
|
1028
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1029
|
-
<div class="fragment"><div class="line"><a name="
|
|
1030
|
-
<div class="line"><a name="
|
|
1031
|
-
<div class="line"><a name="
|
|
1074
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00167">167</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1075
|
+
<div class="fragment"><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  {</div>
|
|
1076
|
+
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>;</div>
|
|
1077
|
+
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  }</div>
|
|
1032
1078
|
</div><!-- fragment -->
|
|
1033
1079
|
</div>
|
|
1034
1080
|
</div>
|
|
@@ -1078,45 +1124,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1078
1124
|
</table>
|
|
1079
1125
|
</div><div class="memdoc">
|
|
1080
1126
|
|
|
1081
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1082
|
-
<div class="fragment"><div class="line"><a name="
|
|
1083
|
-
<div class="line"><a name="
|
|
1084
|
-
<div class="line"><a name="
|
|
1085
|
-
</div><!-- fragment -->
|
|
1086
|
-
</div>
|
|
1087
|
-
</div>
|
|
1088
|
-
<a id="a6205eb8ceaba400a2ad5a554abaed096"></a>
|
|
1089
|
-
<h2 class="memtitle"><span class="permalink"><a href="#a6205eb8ceaba400a2ad5a554abaed096">◆ </a></span>getVAddrs()</h2>
|
|
1090
|
-
|
|
1091
|
-
<div class="memitem">
|
|
1092
|
-
<div class="memproto">
|
|
1093
|
-
<table class="mlabels">
|
|
1094
|
-
<tr>
|
|
1095
|
-
<td class="mlabels-left">
|
|
1096
|
-
<table class="memname">
|
|
1097
|
-
<tr>
|
|
1098
|
-
<td class="memname">virtual <a class="el" href="classSVF_1_1ExeState.html#aa1355e828af78b55b5d23f2dffa330f1">VAddrs</a>& SVF::ConsExeState::getVAddrs </td>
|
|
1099
|
-
<td>(</td>
|
|
1100
|
-
<td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td>
|
|
1101
|
-
<td class="paramname"><em>id</em></td><td>)</td>
|
|
1102
|
-
<td></td>
|
|
1103
|
-
</tr>
|
|
1104
|
-
</table>
|
|
1105
|
-
</td>
|
|
1106
|
-
<td class="mlabels-right">
|
|
1107
|
-
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
|
|
1108
|
-
</tr>
|
|
1109
|
-
</table>
|
|
1110
|
-
</div><div class="memdoc">
|
|
1111
|
-
|
|
1112
|
-
<p>Reimplemented from <a class="el" href="classSVF_1_1ExeState.html#a789f023e4b5938324993b37021265f53">SVF::ExeState</a>.</p>
|
|
1113
|
-
|
|
1114
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00198">198</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1115
|
-
<div class="fragment"><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  {</div>
|
|
1116
|
-
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#a69895af213955ea1ba29812bfddcea66">_varToVAddrs</a>.find(<span class="keywordtype">id</span>);</div>
|
|
1117
|
-
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#a69895af213955ea1ba29812bfddcea66">_varToVAddrs</a>.end()) <span class="keywordflow">return</span> it->second;</div>
|
|
1118
|
-
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a69895af213955ea1ba29812bfddcea66">_varToVAddrs</a>[id];</div>
|
|
1119
|
-
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  }</div>
|
|
1127
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00378">378</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1128
|
+
<div class="fragment"><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  {</div>
|
|
1129
|
+
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ExeState.html#a35a28ef0a8acd14f44e6755eff424d9d">getContext</a>().bool_val(<span class="keyword">true</span>);</div>
|
|
1130
|
+
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  }</div>
|
|
1120
1131
|
</div><!-- fragment -->
|
|
1121
1132
|
</div>
|
|
1122
1133
|
</div>
|
|
@@ -1143,10 +1154,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1143
1154
|
</table>
|
|
1144
1155
|
</div><div class="memdoc">
|
|
1145
1156
|
|
|
1146
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1147
|
-
<div class="fragment"><div class="line"><a name="
|
|
1148
|
-
<div class="line"><a name="
|
|
1149
|
-
<div class="line"><a name="
|
|
1157
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00162">162</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1158
|
+
<div class="fragment"><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  {</div>
|
|
1159
|
+
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>;</div>
|
|
1160
|
+
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  }</div>
|
|
1150
1161
|
</div><!-- fragment -->
|
|
1151
1162
|
</div>
|
|
1152
1163
|
</div>
|
|
@@ -1225,12 +1236,12 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1225
1236
|
|
|
1226
1237
|
<p>Empty execution state with a true path constraint. </p>
|
|
1227
1238
|
|
|
1228
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1229
|
-
<div class="fragment"><div class="line"><a name="
|
|
1230
|
-
<div class="line"><a name="
|
|
1231
|
-
<div class="line"><a name="
|
|
1232
|
-
<div class="line"><a name="
|
|
1233
|
-
<div class="line"><a name="
|
|
1239
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00346">346</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1240
|
+
<div class="fragment"><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  {</div>
|
|
1241
|
+
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  <a class="code" href="classSVF_1_1ConsExeState.html#a64a755f61886ef3f43f48c47eb76e9cc">VarToValMap</a> mp;</div>
|
|
1242
|
+
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  <a class="code" href="classSVF_1_1ConsExeState.html#ae2868bff69d249ff28daff28fd3c86ea">ConsExeState</a> exeState(mp, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(mp));</div>
|
|
1243
|
+
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(exeState);</div>
|
|
1244
|
+
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  }</div>
|
|
1234
1245
|
</div><!-- fragment -->
|
|
1235
1246
|
</div>
|
|
1236
1247
|
</div>
|
|
@@ -1258,15 +1269,15 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1258
1269
|
</table>
|
|
1259
1270
|
</div><div class="memdoc">
|
|
1260
1271
|
|
|
1261
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1262
|
-
<div class="fragment"><div class="line"><a name="
|
|
1263
|
-
<div class="line"><a name="
|
|
1264
|
-
<div class="line"><a name="
|
|
1272
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00172">172</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1273
|
+
<div class="fragment"><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  {</div>
|
|
1274
|
+
<div class="line"><a name="l00174"></a><span class="lineno"> 174</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>
|
|
1275
|
+
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  }</div>
|
|
1265
1276
|
</div><!-- fragment -->
|
|
1266
1277
|
</div>
|
|
1267
1278
|
</div>
|
|
1268
|
-
<a id="
|
|
1269
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
1279
|
+
<a id="aa4a3abdc9a7fe9af0b82190bf7827efa"></a>
|
|
1280
|
+
<h2 class="memtitle"><span class="permalink"><a href="#aa4a3abdc9a7fe9af0b82190bf7827efa">◆ </a></span>inLocalLocToValTable() <span class="overload">[1/2]</span></h2>
|
|
1270
1281
|
|
|
1271
1282
|
<div class="memitem">
|
|
1272
1283
|
<div class="memproto">
|
|
@@ -1275,10 +1286,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1275
1286
|
<td class="mlabels-left">
|
|
1276
1287
|
<table class="memname">
|
|
1277
1288
|
<tr>
|
|
1278
|
-
<td class="memname">bool SVF::ConsExeState::
|
|
1289
|
+
<td class="memname">bool SVF::ConsExeState::inLocalLocToValTable </td>
|
|
1279
1290
|
<td>(</td>
|
|
1280
1291
|
<td class="paramtype">const <a class="el" href="classSVF_1_1SingleAbsValue.html">SingleAbsValue</a> & </td>
|
|
1281
|
-
<td class="paramname"><em>
|
|
1292
|
+
<td class="paramname"><em>addr</em></td><td>)</td>
|
|
1282
1293
|
<td> const</td>
|
|
1283
1294
|
</tr>
|
|
1284
1295
|
</table>
|
|
@@ -1289,20 +1300,15 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1289
1300
|
</table>
|
|
1290
1301
|
</div><div class="memdoc">
|
|
1291
1302
|
|
|
1292
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1293
|
-
<div class="fragment"><div class="line"><a name="
|
|
1294
|
-
<div class="line"><a name="
|
|
1295
|
-
<div class="line"><a name="
|
|
1296
|
-
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  assert(<a class="code" href="classSVF_1_1ExeState.html#abfaad70395d9f4416f297887c84f7df4">isVirtualMemAddress</a>(virAddr) && <span class="stringliteral">"Pointer operand is not a physical address?"</span>);</div>
|
|
1297
|
-
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  <a class="code" href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a> objId = <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(virAddr);</div>
|
|
1298
|
-
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  assert(<a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(objId) == objId && <span class="stringliteral">"SVFVar idx overflow > 0x7f000000?"</span>);</div>
|
|
1299
|
-
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a22eb7b0b38d8df8efae757f4c76b5328">inLocalLocToVal</a>(objId);</div>
|
|
1300
|
-
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  }</div>
|
|
1303
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00182">182</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1304
|
+
<div class="fragment"><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  {</div>
|
|
1305
|
+
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>.count(<a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr.getNumeral()));</div>
|
|
1306
|
+
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  }</div>
|
|
1301
1307
|
</div><!-- fragment -->
|
|
1302
1308
|
</div>
|
|
1303
1309
|
</div>
|
|
1304
|
-
<a id="
|
|
1305
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
1310
|
+
<a id="a8da7bf977911ca6d3bd27f38ef852321"></a>
|
|
1311
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a8da7bf977911ca6d3bd27f38ef852321">◆ </a></span>inLocalLocToValTable() <span class="overload">[2/2]</span></h2>
|
|
1306
1312
|
|
|
1307
1313
|
<div class="memitem">
|
|
1308
1314
|
<div class="memproto">
|
|
@@ -1311,7 +1317,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1311
1317
|
<td class="mlabels-left">
|
|
1312
1318
|
<table class="memname">
|
|
1313
1319
|
<tr>
|
|
1314
|
-
<td class="memname">bool SVF::ConsExeState::
|
|
1320
|
+
<td class="memname">bool SVF::ConsExeState::inLocalLocToValTable </td>
|
|
1315
1321
|
<td>(</td>
|
|
1316
1322
|
<td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td>
|
|
1317
1323
|
<td class="paramname"><em>varId</em></td><td>)</td>
|
|
@@ -1325,10 +1331,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1325
1331
|
</table>
|
|
1326
1332
|
</div><div class="memdoc">
|
|
1327
1333
|
|
|
1328
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1329
|
-
<div class="fragment"><div class="line"><a name="
|
|
1330
|
-
<div class="line"><a name="
|
|
1331
|
-
<div class="line"><a name="
|
|
1334
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00177">177</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1335
|
+
<div class="fragment"><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  {</div>
|
|
1336
|
+
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>.count(varId);</div>
|
|
1337
|
+
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  }</div>
|
|
1332
1338
|
</div><!-- fragment -->
|
|
1333
1339
|
</div>
|
|
1334
1340
|
</div>
|
|
@@ -1356,17 +1362,19 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1356
1362
|
</table>
|
|
1357
1363
|
</div><div class="memdoc">
|
|
1358
1364
|
|
|
1365
|
+
<p>whether the memory address stores memory addresses </p>
|
|
1366
|
+
|
|
1359
1367
|
<p>Reimplemented from <a class="el" href="classSVF_1_1ExeState.html#a54168f48a6c1fe983d20efce06a35710">SVF::ExeState</a>.</p>
|
|
1360
1368
|
|
|
1361
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1362
|
-
<div class="fragment"><div class="line"><a name="
|
|
1363
|
-
<div class="line"><a name="
|
|
1364
|
-
<div class="line"><a name="
|
|
1369
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00151">151</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1370
|
+
<div class="fragment"><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  {</div>
|
|
1371
|
+
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.find(<span class="keywordtype">id</span>) != <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end() || <a class="code" href="classSVF_1_1ConsExeState.html#af8f2b698dd97793b0124cd5a4ac4d035">inLocalLocToAddrsTable</a>(<span class="keywordtype">id</span>);</div>
|
|
1372
|
+
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  }</div>
|
|
1365
1373
|
</div><!-- fragment -->
|
|
1366
1374
|
</div>
|
|
1367
1375
|
</div>
|
|
1368
|
-
<a id="
|
|
1369
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
1376
|
+
<a id="a4481c80fcf9c64f23e8a216dfc01869a"></a>
|
|
1377
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a4481c80fcf9c64f23e8a216dfc01869a">◆ </a></span>inLocToValTable()</h2>
|
|
1370
1378
|
|
|
1371
1379
|
<div class="memitem">
|
|
1372
1380
|
<div class="memproto">
|
|
@@ -1375,7 +1383,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1375
1383
|
<td class="mlabels-left">
|
|
1376
1384
|
<table class="memname">
|
|
1377
1385
|
<tr>
|
|
1378
|
-
<td class="memname">bool SVF::ConsExeState::
|
|
1386
|
+
<td class="memname">bool SVF::ConsExeState::inLocToValTable </td>
|
|
1379
1387
|
<td>(</td>
|
|
1380
1388
|
<td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td>
|
|
1381
1389
|
<td class="paramname"><em>varId</em></td><td>)</td>
|
|
@@ -1389,10 +1397,12 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1389
1397
|
</table>
|
|
1390
1398
|
</div><div class="memdoc">
|
|
1391
1399
|
|
|
1392
|
-
<p
|
|
1393
|
-
|
|
1394
|
-
<
|
|
1395
|
-
<div class="line"><a name="
|
|
1400
|
+
<p>whether the memory address stores constant value </p>
|
|
1401
|
+
|
|
1402
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00157">157</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1403
|
+
<div class="fragment"><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  {</div>
|
|
1404
|
+
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a8da7bf977911ca6d3bd27f38ef852321">inLocalLocToValTable</a>(varId) || <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>.count(varId);</div>
|
|
1405
|
+
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  }</div>
|
|
1396
1406
|
</div><!-- fragment -->
|
|
1397
1407
|
</div>
|
|
1398
1408
|
</div>
|
|
@@ -1420,18 +1430,20 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1420
1430
|
</table>
|
|
1421
1431
|
</div><div class="memdoc">
|
|
1422
1432
|
|
|
1433
|
+
<p>whether the variable is in varToAddrs table </p>
|
|
1434
|
+
|
|
1423
1435
|
<p>Reimplemented from <a class="el" href="classSVF_1_1ExeState.html#a6dfff6d4302faeb80c78a512f32b529f">SVF::ExeState</a>.</p>
|
|
1424
1436
|
|
|
1425
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1426
|
-
<div class="fragment"><div class="line"><a name="
|
|
1427
|
-
<div class="line"><a name="
|
|
1428
|
-
<div class="line"><a name="
|
|
1429
|
-
<div class="line"><a name="
|
|
1437
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00138">138</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1438
|
+
<div class="fragment"><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  {</div>
|
|
1439
|
+
<div class="line"><a name="l00140"></a><span class="lineno"> 140</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>
|
|
1440
|
+
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.find(<span class="keywordtype">id</span>) != <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.end();</div>
|
|
1441
|
+
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  }</div>
|
|
1430
1442
|
</div><!-- fragment -->
|
|
1431
1443
|
</div>
|
|
1432
1444
|
</div>
|
|
1433
|
-
<a id="
|
|
1434
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
1445
|
+
<a id="ad42a15421be927dbb4eb7efb10548850"></a>
|
|
1446
|
+
<h2 class="memtitle"><span class="permalink"><a href="#ad42a15421be927dbb4eb7efb10548850">◆ </a></span>inVarToValTable()</h2>
|
|
1435
1447
|
|
|
1436
1448
|
<div class="memitem">
|
|
1437
1449
|
<div class="memproto">
|
|
@@ -1440,7 +1452,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1440
1452
|
<td class="mlabels-left">
|
|
1441
1453
|
<table class="memname">
|
|
1442
1454
|
<tr>
|
|
1443
|
-
<td class="memname">bool SVF::ConsExeState::
|
|
1455
|
+
<td class="memname">bool SVF::ConsExeState::inVarToValTable </td>
|
|
1444
1456
|
<td>(</td>
|
|
1445
1457
|
<td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td>
|
|
1446
1458
|
<td class="paramname"><em>varId</em></td><td>)</td>
|
|
@@ -1454,10 +1466,12 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1454
1466
|
</table>
|
|
1455
1467
|
</div><div class="memdoc">
|
|
1456
1468
|
|
|
1457
|
-
<p
|
|
1458
|
-
|
|
1459
|
-
<
|
|
1460
|
-
<div class="line"><a name="
|
|
1469
|
+
<p>whether the variable is in varToVal table </p>
|
|
1470
|
+
|
|
1471
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00145">145</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1472
|
+
<div class="fragment"><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  {</div>
|
|
1473
|
+
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>.count(varId) || <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>.count(varId);</div>
|
|
1474
|
+
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  }</div>
|
|
1461
1475
|
</div><!-- fragment -->
|
|
1462
1476
|
</div>
|
|
1463
1477
|
</div>
|
|
@@ -1486,10 +1500,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1486
1500
|
|
|
1487
1501
|
<p>Whether state is null state (uninitialized state) </p>
|
|
1488
1502
|
|
|
1489
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1490
|
-
<div class="fragment"><div class="line"><a name="
|
|
1491
|
-
<div class="line"><a name="
|
|
1492
|
-
<div class="line"><a name="
|
|
1503
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00205">205</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1504
|
+
<div class="fragment"><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  {</div>
|
|
1505
|
+
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>.size() == 1 && eq((*<a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>.begin()).second, -1) && <a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>.empty();</div>
|
|
1506
|
+
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  }</div>
|
|
1493
1507
|
</div><!-- fragment -->
|
|
1494
1508
|
</div>
|
|
1495
1509
|
</div>
|
|
@@ -1742,8 +1756,8 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1742
1756
|
</div><!-- fragment -->
|
|
1743
1757
|
</div>
|
|
1744
1758
|
</div>
|
|
1745
|
-
<a id="
|
|
1746
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
1759
|
+
<a id="a865998aed7e292ebd15532506eadea55"></a>
|
|
1760
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a865998aed7e292ebd15532506eadea55">◆ </a></span>loadAddrs()</h2>
|
|
1747
1761
|
|
|
1748
1762
|
<div class="memitem">
|
|
1749
1763
|
<div class="memproto">
|
|
@@ -1752,7 +1766,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1752
1766
|
<td class="mlabels-left">
|
|
1753
1767
|
<table class="memname">
|
|
1754
1768
|
<tr>
|
|
1755
|
-
<td class="memname">virtual <a class="el" href="classSVF_1_1ExeState.html#
|
|
1769
|
+
<td class="memname">virtual <a class="el" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a>& SVF::ConsExeState::loadAddrs </td>
|
|
1756
1770
|
<td>(</td>
|
|
1757
1771
|
<td class="paramtype"><a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> </td>
|
|
1758
1772
|
<td class="paramname"><em>addr</em></td><td>)</td>
|
|
@@ -1766,30 +1780,30 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1766
1780
|
</table>
|
|
1767
1781
|
</div><div class="memdoc">
|
|
1768
1782
|
|
|
1769
|
-
<p>Reimplemented from <a class="el" href="classSVF_1_1ExeState.html#
|
|
1783
|
+
<p>Reimplemented from <a class="el" href="classSVF_1_1ExeState.html#a9e0fd700bea1ac741d96b4f52fd4756f">SVF::ExeState</a>.</p>
|
|
1770
1784
|
|
|
1771
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1772
|
-
<div class="fragment"><div class="line"><a name="
|
|
1773
|
-
<div class="line"><a name="
|
|
1774
|
-
<div class="line"><a name="
|
|
1775
|
-
<div class="line"><a name="
|
|
1776
|
-
<div class="line"><a name="
|
|
1777
|
-
<div class="line"><a name="
|
|
1778
|
-
<div class="line"><a name="
|
|
1779
|
-
<div class="line"><a name="
|
|
1780
|
-
<div class="line"><a name="
|
|
1781
|
-
<div class="line"><a name="
|
|
1782
|
-
<div class="line"><a name="
|
|
1783
|
-
<div class="line"><a name="
|
|
1784
|
-
<div class="line"><a name="
|
|
1785
|
-
<div class="line"><a name="
|
|
1786
|
-
<div class="line"><a name="
|
|
1787
|
-
<div class="line"><a name="
|
|
1788
|
-
<div class="line"><a name="
|
|
1789
|
-
<div class="line"><a name="
|
|
1790
|
-
<div class="line"><a name="
|
|
1791
|
-
<div class="line"><a name="
|
|
1792
|
-
<div class="line"><a name="
|
|
1785
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00228">228</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1786
|
+
<div class="fragment"><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  {</div>
|
|
1787
|
+
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  assert(<a class="code" href="classSVF_1_1ExeState.html#abfaad70395d9f4416f297887c84f7df4">isVirtualMemAddress</a>(addr) && <span class="stringliteral">"not virtual address?"</span>);</div>
|
|
1788
|
+
<div class="line"><a name="l00231"></a><span class="lineno"> 231</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>
|
|
1789
|
+
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  <span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.find(objId);</div>
|
|
1790
|
+
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end())</div>
|
|
1791
|
+
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  {</div>
|
|
1792
|
+
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  <span class="keywordflow">return</span> it->second;</div>
|
|
1793
|
+
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  }</div>
|
|
1794
|
+
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  <span class="keywordflow">else</span></div>
|
|
1795
|
+
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  {</div>
|
|
1796
|
+
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  <span class="keyword">auto</span> globIt = <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.find(objId);</div>
|
|
1797
|
+
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <span class="keywordflow">if</span> (globIt != <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end())</div>
|
|
1798
|
+
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  {</div>
|
|
1799
|
+
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  <span class="keywordflow">return</span> globIt->second;</div>
|
|
1800
|
+
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  }</div>
|
|
1801
|
+
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <span class="keywordflow">else</span></div>
|
|
1802
|
+
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  {</div>
|
|
1803
|
+
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">getAddrs</a>(0);</div>
|
|
1804
|
+
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  }</div>
|
|
1805
|
+
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  }</div>
|
|
1806
|
+
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  }</div>
|
|
1793
1807
|
</div><!-- fragment -->
|
|
1794
1808
|
</div>
|
|
1795
1809
|
</div>
|
|
@@ -1819,52 +1833,52 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1819
1833
|
|
|
1820
1834
|
<p>Reimplemented from <a class="el" href="classSVF_1_1ExeState.html#ad2f921623e41209c6702534c98431403">SVF::ExeState</a>.</p>
|
|
1821
1835
|
|
|
1822
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1823
|
-
<div class="fragment"><div class="line"><a name="
|
|
1824
|
-
<div class="line"><a name="
|
|
1825
|
-
<div class="line"><a name="
|
|
1826
|
-
<div class="line"><a name="
|
|
1827
|
-
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  {</div>
|
|
1828
|
-
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  <span class="keyword">auto</span> git = <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#adb724bd1c3154368c629f4972c503d72">_locToVAddrs</a>.find(objId);</div>
|
|
1829
|
-
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  <span class="keywordflow">if</span> (git == <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#adb724bd1c3154368c629f4972c503d72">_locToVAddrs</a>.end())</div>
|
|
1830
|
-
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  exprName << <span class="stringliteral">"Obj not in locToVal!\n"</span>;</div>
|
|
1831
|
-
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  <span class="keywordflow">else</span></div>
|
|
1832
|
-
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  {</div>
|
|
1833
|
-
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#aa1355e828af78b55b5d23f2dffa330f1">VAddrs</a> &vaddrs = git->second;</div>
|
|
1834
|
-
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  <span class="keywordflow">if</span> (vaddrs.size() == 1)</div>
|
|
1835
|
-
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>  {</div>
|
|
1836
|
-
<div class="line"><a name="l00289"></a><span class="lineno"> 289</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>
|
|
1837
|
-
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  }</div>
|
|
1838
|
-
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  <span class="keywordflow">else</span></div>
|
|
1839
|
-
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  {</div>
|
|
1840
|
-
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  exprName << <span class="stringliteral">"addr: {"</span>;</div>
|
|
1841
|
-
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &addr: vaddrs)</div>
|
|
1842
|
-
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  {</div>
|
|
1843
|
-
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  exprName << std::dec << <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr) << <span class="stringliteral">", "</span>;</div>
|
|
1844
|
-
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  }</div>
|
|
1845
|
-
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  exprName << <span class="stringliteral">"}\n"</span>;</div>
|
|
1846
|
-
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  }</div>
|
|
1847
|
-
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>  }</div>
|
|
1848
|
-
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>  }</div>
|
|
1849
|
-
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  <span class="keywordflow">else</span></div>
|
|
1836
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00298">298</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1837
|
+
<div class="fragment"><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  {</div>
|
|
1838
|
+
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>  std::stringstream exprName;</div>
|
|
1839
|
+
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>  <span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.find(objId);</div>
|
|
1840
|
+
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  <span class="keywordflow">if</span> (it == <a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end())</div>
|
|
1850
1841
|
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  {</div>
|
|
1851
|
-
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <span class="keyword">
|
|
1852
|
-
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <span class="keywordflow">if</span> (
|
|
1853
|
-
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> 
|
|
1854
|
-
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> 
|
|
1855
|
-
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> 
|
|
1856
|
-
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> 
|
|
1857
|
-
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> 
|
|
1858
|
-
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> 
|
|
1859
|
-
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> 
|
|
1860
|
-
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> 
|
|
1861
|
-
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> 
|
|
1862
|
-
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> 
|
|
1863
|
-
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> 
|
|
1864
|
-
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> 
|
|
1865
|
-
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> 
|
|
1866
|
-
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> 
|
|
1867
|
-
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> 
|
|
1842
|
+
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <span class="keyword">auto</span> git = <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.find(objId);</div>
|
|
1843
|
+
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <span class="keywordflow">if</span> (git == <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>.end())</div>
|
|
1844
|
+
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  exprName << <span class="stringliteral">"Obj not in locToVal!\n"</span>;</div>
|
|
1845
|
+
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  <span class="keywordflow">else</span></div>
|
|
1846
|
+
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>  {</div>
|
|
1847
|
+
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> &vaddrs = git->second;</div>
|
|
1848
|
+
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>  <span class="keywordflow">if</span> (vaddrs.size() == 1)</div>
|
|
1849
|
+
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>  {</div>
|
|
1850
|
+
<div class="line"><a name="l00312"></a><span class="lineno"> 312</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>
|
|
1851
|
+
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  }</div>
|
|
1852
|
+
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  <span class="keywordflow">else</span></div>
|
|
1853
|
+
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  {</div>
|
|
1854
|
+
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  exprName << <span class="stringliteral">"addr: {"</span>;</div>
|
|
1855
|
+
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &addr: vaddrs)</div>
|
|
1856
|
+
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>  {</div>
|
|
1857
|
+
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  exprName << std::dec << <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr) << <span class="stringliteral">", "</span>;</div>
|
|
1858
|
+
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  }</div>
|
|
1859
|
+
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  exprName << <span class="stringliteral">"}\n"</span>;</div>
|
|
1860
|
+
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  }</div>
|
|
1861
|
+
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  }</div>
|
|
1862
|
+
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  }</div>
|
|
1863
|
+
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  <span class="keywordflow">else</span></div>
|
|
1864
|
+
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  {</div>
|
|
1865
|
+
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> &vaddrs = it->second;</div>
|
|
1866
|
+
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  <span class="keywordflow">if</span> (vaddrs.size() == 1)</div>
|
|
1867
|
+
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>  {</div>
|
|
1868
|
+
<div class="line"><a name="l00330"></a><span class="lineno"> 330</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>
|
|
1869
|
+
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  }</div>
|
|
1870
|
+
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>  <span class="keywordflow">else</span></div>
|
|
1871
|
+
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>  {</div>
|
|
1872
|
+
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>  exprName << <span class="stringliteral">"addr: {"</span>;</div>
|
|
1873
|
+
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &addr: vaddrs)</div>
|
|
1874
|
+
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  {</div>
|
|
1875
|
+
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  exprName << std::dec << <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr) << <span class="stringliteral">", "</span>;</div>
|
|
1876
|
+
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  }</div>
|
|
1877
|
+
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  exprName << <span class="stringliteral">"}\n"</span>;</div>
|
|
1878
|
+
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  }</div>
|
|
1879
|
+
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  }</div>
|
|
1880
|
+
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(exprName.str());</div>
|
|
1881
|
+
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  }</div>
|
|
1868
1882
|
</div><!-- fragment -->
|
|
1869
1883
|
</div>
|
|
1870
1884
|
</div>
|
|
@@ -1937,10 +1951,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1937
1951
|
|
|
1938
1952
|
<p>Name. </p>
|
|
1939
1953
|
|
|
1940
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1941
|
-
<div class="fragment"><div class="line"><a name="
|
|
1942
|
-
<div class="line"><a name="
|
|
1943
|
-
<div class="line"><a name="
|
|
1954
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00093">93</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1955
|
+
<div class="fragment"><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  {</div>
|
|
1956
|
+
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <span class="keywordflow">return</span> <span class="stringliteral">"ConstantExpr"</span>;</div>
|
|
1957
|
+
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  }</div>
|
|
1944
1958
|
</div><!-- fragment -->
|
|
1945
1959
|
</div>
|
|
1946
1960
|
</div>
|
|
@@ -1969,13 +1983,13 @@ Additional Inherited Members</h2></td></tr>
|
|
|
1969
1983
|
|
|
1970
1984
|
<p>Empty execution state with a null expr. </p>
|
|
1971
1985
|
|
|
1972
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
1973
|
-
<div class="fragment"><div class="line"><a name="
|
|
1974
|
-
<div class="line"><a name="
|
|
1975
|
-
<div class="line"><a name="
|
|
1976
|
-
<div class="line"><a name="
|
|
1977
|
-
<div class="line"><a name="
|
|
1978
|
-
<div class="line"><a name="
|
|
1986
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00354">354</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
1987
|
+
<div class="fragment"><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  {</div>
|
|
1988
|
+
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <a class="code" href="classSVF_1_1ConsExeState.html#a64a755f61886ef3f43f48c47eb76e9cc">VarToValMap</a> mp;</div>
|
|
1989
|
+
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  <a class="code" href="classSVF_1_1ConsExeState.html#ae2868bff69d249ff28daff28fd3c86ea">ConsExeState</a> exeState(mp, <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(mp));</div>
|
|
1990
|
+
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  exeState._varToVal[<a class="code" href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">PAG::getPAG</a>()-><a class="code" href="classSVF_1_1IRGraph.html#a3de9a2a565c303f68a90c32dc59febd5">getNullPtr</a>()] = -1;</div>
|
|
1991
|
+
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(exeState);</div>
|
|
1992
|
+
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  }</div>
|
|
1979
1993
|
</div><!-- fragment -->
|
|
1980
1994
|
</div>
|
|
1981
1995
|
</div>
|
|
@@ -2003,10 +2017,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2003
2017
|
</table>
|
|
2004
2018
|
</div><div class="memdoc">
|
|
2005
2019
|
|
|
2006
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
2007
|
-
<div class="fragment"><div class="line"><a name="
|
|
2008
|
-
<div class="line"><a name="
|
|
2009
|
-
<div class="line"><a name="
|
|
2020
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00103">103</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
2021
|
+
<div class="fragment"><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  {</div>
|
|
2022
|
+
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == other);</div>
|
|
2023
|
+
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  }</div>
|
|
2010
2024
|
</div><!-- fragment -->
|
|
2011
2025
|
</div>
|
|
2012
2026
|
</div>
|
|
@@ -2030,10 +2044,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2030
2044
|
</table>
|
|
2031
2045
|
</div><div class="memdoc">
|
|
2032
2046
|
|
|
2033
|
-
<p class="definition">Definition at line <a class="el" href="ExeState_8h_source.html#
|
|
2034
|
-
<div class="fragment"><div class="line"><a name="
|
|
2035
|
-
<div class="line"><a name="
|
|
2036
|
-
<div class="line"><a name="
|
|
2047
|
+
<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>
|
|
2048
|
+
<div class="fragment"><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  {</div>
|
|
2049
|
+
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <span class="keywordflow">return</span> !(*<span class="keyword">this</span> == rhs);</div>
|
|
2050
|
+
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  }</div>
|
|
2037
2051
|
</div><!-- fragment -->
|
|
2038
2052
|
</div>
|
|
2039
2053
|
</div>
|
|
@@ -2169,8 +2183,6 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2169
2183
|
</tr>
|
|
2170
2184
|
</table>
|
|
2171
2185
|
</div><div class="memdoc">
|
|
2172
|
-
|
|
2173
|
-
<p>Exposed APIs. </p>
|
|
2174
2186
|
<p>Overloading Operator== </p><dl class="params"><dt>Parameters</dt><dd>
|
|
2175
2187
|
<table class="params">
|
|
2176
2188
|
<tr><td class="paramname">rhs</td><td></td></tr>
|
|
@@ -2202,7 +2214,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2202
2214
|
|
|
2203
2215
|
<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>
|
|
2204
2216
|
<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> {</div>
|
|
2205
|
-
<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#
|
|
2217
|
+
<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._varToAddrs) && <a class="code" href="classSVF_1_1ExeState.html#a0a24ad3ced48b6755b7fc917d0f0fbb9">eqVarToAddrs</a>(<a class="code" href="classSVF_1_1ExeState.html#a79866a547dc4805d3fefdfd528d2df2a">_locToAddrs</a>, rhs._locToAddrs);</div>
|
|
2206
2218
|
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> }</div>
|
|
2207
2219
|
</div><!-- fragment -->
|
|
2208
2220
|
</div>
|
|
@@ -2231,14 +2243,16 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2231
2243
|
</table>
|
|
2232
2244
|
</div><div class="memdoc">
|
|
2233
2245
|
|
|
2234
|
-
<p
|
|
2235
|
-
|
|
2236
|
-
<
|
|
2237
|
-
<div class="line"><a name="
|
|
2238
|
-
<div class="line"><a name="
|
|
2239
|
-
<div class="line"><a name="
|
|
2240
|
-
<div class="line"><a name="
|
|
2241
|
-
<div class="line"><a name="
|
|
2246
|
+
<p>get constant value of variable </p>
|
|
2247
|
+
|
|
2248
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00128">128</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
2249
|
+
<div class="fragment"><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  {</div>
|
|
2250
|
+
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  <span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>.find(varId);</div>
|
|
2251
|
+
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>  <span class="keywordflow">if</span> (it != <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>.end())</div>
|
|
2252
|
+
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keywordflow">return</span> it->second;</div>
|
|
2253
|
+
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  <span class="keywordflow">else</span></div>
|
|
2254
|
+
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">_varToVal</a>[varId];</div>
|
|
2255
|
+
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  }</div>
|
|
2242
2256
|
</div><!-- fragment -->
|
|
2243
2257
|
</div>
|
|
2244
2258
|
</div>
|
|
@@ -2475,17 +2489,17 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2475
2489
|
</table>
|
|
2476
2490
|
</div><div class="memdoc">
|
|
2477
2491
|
|
|
2478
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
2479
|
-
<div class="fragment"><div class="line"><a name="
|
|
2480
|
-
<div class="line"><a name="
|
|
2481
|
-
<div class="line"><a name="
|
|
2482
|
-
<div class="line"><a name="
|
|
2483
|
-
<div class="line"><a name="
|
|
2484
|
-
<div class="line"><a name="
|
|
2485
|
-
<div class="line"><a name="
|
|
2486
|
-
<div class="line"><a name="
|
|
2487
|
-
<div class="line"><a name="
|
|
2488
|
-
<div class="line"><a name="
|
|
2492
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00422">422</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
2493
|
+
<div class="fragment"><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  {</div>
|
|
2494
|
+
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  SingleAbsValue &lhs = <a class="code" href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">_locToVal</a>[objId];</div>
|
|
2495
|
+
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <span class="keywordflow">if</span> (!eq(lhs, z3Expr.simplify()))</div>
|
|
2496
|
+
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  {</div>
|
|
2497
|
+
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  lhs = z3Expr.simplify();</div>
|
|
2498
|
+
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
|
|
2499
|
+
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  }</div>
|
|
2500
|
+
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  <span class="keywordflow">else</span></div>
|
|
2501
|
+
<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
|
|
2502
|
+
<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  }</div>
|
|
2489
2503
|
</div><!-- fragment -->
|
|
2490
2504
|
</div>
|
|
2491
2505
|
</div>
|
|
@@ -2578,52 +2592,52 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2578
2592
|
|
|
2579
2593
|
<p>Reimplemented from <a class="el" href="classSVF_1_1ExeState.html#aa01e978f41f4134257b380994e3b8409">SVF::ExeState</a>.</p>
|
|
2580
2594
|
|
|
2581
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
2582
|
-
<div class="fragment"><div class="line"><a name="
|
|
2583
|
-
<div class="line"><a name="
|
|
2584
|
-
<div class="line"><a name="
|
|
2585
|
-
<div class="line"><a name="
|
|
2586
|
-
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  {</div>
|
|
2587
|
-
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  <span class="keyword">auto</span> git = <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#a69895af213955ea1ba29812bfddcea66">_varToVAddrs</a>.find(varId);</div>
|
|
2588
|
-
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  <span class="keywordflow">if</span> (git == <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#a69895af213955ea1ba29812bfddcea66">_varToVAddrs</a>.end())</div>
|
|
2589
|
-
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  exprName << <span class="stringliteral">"Var not in varToAddrs!\n"</span>;</div>
|
|
2590
|
-
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  <span class="keywordflow">else</span></div>
|
|
2591
|
-
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  {</div>
|
|
2592
|
-
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#aa1355e828af78b55b5d23f2dffa330f1">VAddrs</a> &vaddrs = git->second;</div>
|
|
2593
|
-
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <span class="keywordflow">if</span> (vaddrs.size() == 1)</div>
|
|
2594
|
-
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  {</div>
|
|
2595
|
-
<div class="line"><a name="l00242"></a><span class="lineno"> 242</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>
|
|
2596
|
-
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  }</div>
|
|
2597
|
-
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  <span class="keywordflow">else</span></div>
|
|
2598
|
-
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  {</div>
|
|
2599
|
-
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  exprName << <span class="stringliteral">"addr: {"</span>;</div>
|
|
2600
|
-
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &addr: vaddrs)</div>
|
|
2601
|
-
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  {</div>
|
|
2602
|
-
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  exprName << std::dec << <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr) << <span class="stringliteral">", "</span>;</div>
|
|
2603
|
-
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  }</div>
|
|
2604
|
-
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>  exprName << <span class="stringliteral">"}\n"</span>;</div>
|
|
2605
|
-
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  }</div>
|
|
2606
|
-
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  }</div>
|
|
2607
|
-
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  }</div>
|
|
2608
|
-
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  <span class="keywordflow">else</span></div>
|
|
2595
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00251">251</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
2596
|
+
<div class="fragment"><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  {</div>
|
|
2597
|
+
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  std::stringstream exprName;</div>
|
|
2598
|
+
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  <span class="keyword">auto</span> it = <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.find(varId);</div>
|
|
2599
|
+
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  <span class="keywordflow">if</span> (it == <a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.end())</div>
|
|
2609
2600
|
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  {</div>
|
|
2610
|
-
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  <span class="keyword">
|
|
2611
|
-
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  <span class="keywordflow">if</span> (
|
|
2612
|
-
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> 
|
|
2613
|
-
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> 
|
|
2614
|
-
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> 
|
|
2615
|
-
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> 
|
|
2616
|
-
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> 
|
|
2617
|
-
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> 
|
|
2618
|
-
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> 
|
|
2619
|
-
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> 
|
|
2620
|
-
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> 
|
|
2621
|
-
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> 
|
|
2622
|
-
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> 
|
|
2623
|
-
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> 
|
|
2624
|
-
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> 
|
|
2625
|
-
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> 
|
|
2626
|
-
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> 
|
|
2601
|
+
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  <span class="keyword">auto</span> git = <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.find(varId);</div>
|
|
2602
|
+
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  <span class="keywordflow">if</span> (git == <a class="code" href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">globalConsES</a>.<a class="code" href="classSVF_1_1ExeState.html#ad317f2ae2e599a131a6fd9f415f5d712">_varToAddrs</a>.end())</div>
|
|
2603
|
+
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  exprName << <span class="stringliteral">"Var not in varToAddrs!\n"</span>;</div>
|
|
2604
|
+
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  <span class="keywordflow">else</span></div>
|
|
2605
|
+
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  {</div>
|
|
2606
|
+
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> &vaddrs = git->second;</div>
|
|
2607
|
+
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  <span class="keywordflow">if</span> (vaddrs.size() == 1)</div>
|
|
2608
|
+
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  {</div>
|
|
2609
|
+
<div class="line"><a name="l00265"></a><span class="lineno"> 265</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>
|
|
2610
|
+
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  }</div>
|
|
2611
|
+
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  <span class="keywordflow">else</span></div>
|
|
2612
|
+
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  {</div>
|
|
2613
|
+
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  exprName << <span class="stringliteral">"addr: {"</span>;</div>
|
|
2614
|
+
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &addr: vaddrs)</div>
|
|
2615
|
+
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  {</div>
|
|
2616
|
+
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>  exprName << std::dec << <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr) << <span class="stringliteral">", "</span>;</div>
|
|
2617
|
+
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  }</div>
|
|
2618
|
+
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  exprName << <span class="stringliteral">"}\n"</span>;</div>
|
|
2619
|
+
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  }</div>
|
|
2620
|
+
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  }</div>
|
|
2621
|
+
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  }</div>
|
|
2622
|
+
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <span class="keywordflow">else</span></div>
|
|
2623
|
+
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  {</div>
|
|
2624
|
+
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  <span class="keyword">const</span> <a class="code" href="classSVF_1_1ExeState.html#a78038dd4884a501cfc94f073021eac96">Addrs</a> &vaddrs = it->second;</div>
|
|
2625
|
+
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  <span class="keywordflow">if</span> (vaddrs.size() == 1)</div>
|
|
2626
|
+
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  {</div>
|
|
2627
|
+
<div class="line"><a name="l00283"></a><span class="lineno"> 283</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>
|
|
2628
|
+
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  }</div>
|
|
2629
|
+
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  <span class="keywordflow">else</span></div>
|
|
2630
|
+
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  {</div>
|
|
2631
|
+
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  exprName << <span class="stringliteral">"addr: {"</span>;</div>
|
|
2632
|
+
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>  <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span> &addr: vaddrs)</div>
|
|
2633
|
+
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  {</div>
|
|
2634
|
+
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  exprName << std::dec << <a class="code" href="classSVF_1_1ExeState.html#ab72f3bc855feeda75e11768ab03ad84e">getInternalID</a>(addr) << <span class="stringliteral">", "</span>;</div>
|
|
2635
|
+
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  }</div>
|
|
2636
|
+
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  exprName << <span class="stringliteral">"}\n"</span>;</div>
|
|
2637
|
+
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  }</div>
|
|
2638
|
+
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  }</div>
|
|
2639
|
+
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF_1_1SVFUtil.html#a72502f7f536418621485e90ab98c2016">SVFUtil::move</a>(exprName.str());</div>
|
|
2640
|
+
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  }</div>
|
|
2627
2641
|
</div><!-- fragment -->
|
|
2628
2642
|
</div>
|
|
2629
2643
|
</div>
|
|
@@ -2716,17 +2730,17 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2716
2730
|
|
|
2717
2731
|
<p>Return int value from an expression if it is a numeral, otherwise return an approximate value. </p>
|
|
2718
2732
|
|
|
2719
|
-
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#
|
|
2720
|
-
<div class="fragment"><div class="line"><a name="
|
|
2721
|
-
<div class="line"><a name="
|
|
2722
|
-
<div class="line"><a name="
|
|
2723
|
-
<div class="line"><a name="
|
|
2724
|
-
<div class="line"><a name="
|
|
2725
|
-
<div class="line"><a name="
|
|
2726
|
-
<div class="line"><a name="
|
|
2727
|
-
<div class="line"><a name="
|
|
2728
|
-
<div class="line"><a name="
|
|
2729
|
-
<div class="line"><a name="
|
|
2733
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00397">397</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
2734
|
+
<div class="fragment"><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  {</div>
|
|
2735
|
+
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  assert(e.is_numeral() && <span class="stringliteral">"not numeral?"</span>);</div>
|
|
2736
|
+
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  int64_t i;</div>
|
|
2737
|
+
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <span class="keywordflow">if</span>(e.getExpr().is_numeral_i64(i))</div>
|
|
2738
|
+
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  <span class="keywordflow">return</span> e.get_numeral_int64();</div>
|
|
2739
|
+
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <span class="keywordflow">else</span></div>
|
|
2740
|
+
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  {</div>
|
|
2741
|
+
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  <span class="keywordflow">return</span> e.leq(0) ? INT32_MIN : INT32_MAX;</div>
|
|
2742
|
+
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  }</div>
|
|
2743
|
+
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>  }</div>
|
|
2730
2744
|
</div><!-- fragment -->
|
|
2731
2745
|
</div>
|
|
2732
2746
|
</div>
|
|
@@ -2776,7 +2790,9 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2776
2790
|
</table>
|
|
2777
2791
|
</div><div class="memdoc">
|
|
2778
2792
|
|
|
2779
|
-
<p
|
|
2793
|
+
<p>Map a memory address to its stored constant value. </p>
|
|
2794
|
+
|
|
2795
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00115">115</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
2780
2796
|
|
|
2781
2797
|
</div>
|
|
2782
2798
|
</div>
|
|
@@ -2800,7 +2816,9 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2800
2816
|
</table>
|
|
2801
2817
|
</div><div class="memdoc">
|
|
2802
2818
|
|
|
2803
|
-
<p
|
|
2819
|
+
<p>Map a variable (symbol) to its constant value. </p>
|
|
2820
|
+
|
|
2821
|
+
<p class="definition">Definition at line <a class="el" href="ConsExeState_8h_source.html#l00114">114</a> of file <a class="el" href="ConsExeState_8h_source.html">ConsExeState.h</a>.</p>
|
|
2804
2822
|
|
|
2805
2823
|
</div>
|
|
2806
2824
|
</div>
|
|
@@ -2834,56 +2852,56 @@ Additional Inherited Members</h2></td></tr>
|
|
|
2834
2852
|
</ul>
|
|
2835
2853
|
</div><!-- contents -->
|
|
2836
2854
|
<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>
|
|
2837
|
-
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_af8f2b698dd97793b0124cd5a4ac4d035"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#af8f2b698dd97793b0124cd5a4ac4d035">SVF::ConsExeState::inLocalLocToAddrsTable</a></div><div class="ttdeci">virtual bool inLocalLocToAddrsTable(u32_t id) const</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#
|
|
2855
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_af8f2b698dd97793b0124cd5a4ac4d035"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#af8f2b698dd97793b0124cd5a4ac4d035">SVF::ConsExeState::inLocalLocToAddrsTable</a></div><div class="ttdeci">virtual bool inLocalLocToAddrsTable(u32_t id) const</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00172">ConsExeState.h:172</a></div></div>
|
|
2856
|
+
<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>
|
|
2838
2857
|
<div class="ttc" id="aclassSVF_1_1ExeState_html_a60464bebe5f257bbe1356eee149524c0"><div class="ttname"><a href="classSVF_1_1ExeState.html#a60464bebe5f257bbe1356eee149524c0">SVF::ExeState::joinWith</a></div><div class="ttdeci">bool joinWith(const ExeState &other)</div><div class="ttdoc">Make all value join with the other.</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8cpp_source.html#l00040">ExeState.cpp:40</a></div></div>
|
|
2839
|
-
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a07b135c218f56fdab8ef8504190563df"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">SVF::ConsExeState::_varToVal</a></div><div class="ttdeci">VarToValMap _varToVal</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#
|
|
2858
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a07b135c218f56fdab8ef8504190563df"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a07b135c218f56fdab8ef8504190563df">SVF::ConsExeState::_varToVal</a></div><div class="ttdeci">VarToValMap _varToVal</div><div class="ttdoc">Map a variable (symbol) to its constant value.</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00114">ConsExeState.h:114</a></div></div>
|
|
2840
2859
|
<div class="ttc" id="aclassSVF_1_1AddressValue_html_acad5216bdc02a234d57abfe9ae72a12a"><div class="ttname"><a href="classSVF_1_1AddressValue.html#acad5216bdc02a234d57abfe9ae72a12a">SVF::AddressValue::join_with</a></div><div class="ttdeci">bool join_with(const AddressValue &other)</div><div class="ttdoc">Current AddressValue joins with another AddressValue.</div><div class="ttdef"><b>Definition:</b> <a href="AddressValue_8h_source.html#l00139">AddressValue.h:139</a></div></div>
|
|
2841
|
-
<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#
|
|
2842
|
-
<div class="ttc" id="aclassSVF_1_1ExeState_html_a35a28ef0a8acd14f44e6755eff424d9d"><div class="ttname"><a href="classSVF_1_1ExeState.html#a35a28ef0a8acd14f44e6755eff424d9d">SVF::ExeState::getContext</a></div><div class="ttdeci">static z3::context & getContext()</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#
|
|
2860
|
+
<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>
|
|
2861
|
+
<div class="ttc" id="aclassSVF_1_1ExeState_html_a35a28ef0a8acd14f44e6755eff424d9d"><div class="ttname"><a href="classSVF_1_1ExeState.html#a35a28ef0a8acd14f44e6755eff424d9d">SVF::ExeState::getContext</a></div><div class="ttdeci">static z3::context & getContext()</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00265">ExeState.h:265</a></div></div>
|
|
2843
2862
|
<div class="ttc" id="aclassSVF_1_1SingleAbsValue_html_a7009d1a2517b29dda0bb58e5676687c2"><div class="ttname"><a href="classSVF_1_1SingleAbsValue.html#a7009d1a2517b29dda0bb58e5676687c2">SVF::SingleAbsValue::simplify</a></div><div class="ttdeci">SingleAbsValue simplify() const</div><div class="ttdef"><b>Definition:</b> <a href="SingleAbsValue_8h_source.html#l00458">SingleAbsValue.h:458</a></div></div>
|
|
2844
2863
|
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a2fa6360da2149684a9771fdbfae71a66"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a2fa6360da2149684a9771fdbfae71a66">SVF::ConsExeState::load</a></div><div class="ttdeci">SingleAbsValue load(const SingleAbsValue &loc)</div><div class="ttdoc">Load value at location.</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8cpp_source.html#l00521">ConsExeState.cpp:521</a></div></div>
|
|
2845
2864
|
<div class="ttc" id="aclassSVF_1_1ExeState_html_a2e63af0f29d04484c09cca217b799986"><div class="ttname"><a href="classSVF_1_1ExeState.html#a2e63af0f29d04484c09cca217b799986">SVF::ExeState::hash</a></div><div class="ttdeci">virtual u32_t hash() const</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8cpp_source.html#l00102">ExeState.cpp:102</a></div></div>
|
|
2846
2865
|
<div class="ttc" id="aclassSVF_1_1ExeState_html_af1b6335e3ca95d491b0d8dfb95cf3c9b"><div class="ttname"><a href="classSVF_1_1ExeState.html#af1b6335e3ca95d491b0d8dfb95cf3c9b">SVF::ExeState::ExeState</a></div><div class="ttdeci">ExeState(ExeState_TYPE kind)</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00063">ExeState.h:63</a></div></div>
|
|
2847
|
-
<div class="ttc" id="aclassSVF_1_1ExeState_html_a69895af213955ea1ba29812bfddcea66"><div class="ttname"><a href="classSVF_1_1ExeState.html#a69895af213955ea1ba29812bfddcea66">SVF::ExeState::_varToVAddrs</a></div><div class="ttdeci">VarToVAddrs _varToVAddrs</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00172">ExeState.h:172</a></div></div>
|
|
2848
2866
|
<div class="ttc" id="aclassSVF_1_1Z3Expr_html_a1da8e647e12c0e105271eadbd72f437e"><div class="ttname"><a href="classSVF_1_1Z3Expr.html#a1da8e647e12c0e105271eadbd72f437e">SVF::Z3Expr::to_string</a></div><div class="ttdeci">const std::string to_string() const</div><div class="ttdef"><b>Definition:</b> <a href="Z3Expr_8h_source.html#l00115">Z3Expr.h:115</a></div></div>
|
|
2849
2867
|
<div class="ttc" id="aclassSVF_1_1SingleAbsValue_html_aee10058065f8c8be04b6e27fb18b4a00"><div class="ttname"><a href="classSVF_1_1SingleAbsValue.html#aee10058065f8c8be04b6e27fb18b4a00">SVF::SingleAbsValue::join_with</a></div><div class="ttdeci">void join_with(const SingleAbsValue &other)</div><div class="ttdef"><b>Definition:</b> <a href="SingleAbsValue_8h_source.html#l00063">SingleAbsValue.h:63</a></div></div>
|
|
2850
2868
|
<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>
|
|
2851
|
-
<div class="ttc" id="aclassSVF_1_1ExeState_html_adb724bd1c3154368c629f4972c503d72"><div class="ttname"><a href="classSVF_1_1ExeState.html#adb724bd1c3154368c629f4972c503d72">SVF::ExeState::_locToVAddrs</a></div><div class="ttdeci">VarToVAddrs _locToVAddrs</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00173">ExeState.h:173</a></div></div>
|
|
2852
|
-
<div class="ttc" id="aclassSVF_1_1ExeState_html_ab809f545610434737c048dd005f9cd25"><div class="ttname"><a href="classSVF_1_1ExeState.html#ab809f545610434737c048dd005f9cd25">SVF::ExeState::eqVarToVAddrs</a></div><div class="ttdeci">static bool eqVarToVAddrs(const VarToVAddrs &lhs, const VarToVAddrs &rhs)</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00177">ExeState.h:177</a></div></div>
|
|
2853
|
-
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a6205eb8ceaba400a2ad5a554abaed096"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a6205eb8ceaba400a2ad5a554abaed096">SVF::ConsExeState::getVAddrs</a></div><div class="ttdeci">virtual VAddrs & getVAddrs(u32_t id) override</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00198">ConsExeState.h:198</a></div></div>
|
|
2854
2869
|
<div class="ttc" id="aclassSVF_1_1SingleAbsValue_html_a70528ca5e4ad67b593104a7b2bba17c6"><div class="ttname"><a href="classSVF_1_1SingleAbsValue.html#a70528ca5e4ad67b593104a7b2bba17c6">SVF::SingleAbsValue::topConstant</a></div><div class="ttdeci">static SingleAbsValue topConstant()</div><div class="ttdef"><b>Definition:</b> <a href="SingleAbsValue_8h_source.html#l00053">SingleAbsValue.h:53</a></div></div>
|
|
2855
|
-
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a990f50ae338a2e332d333bb3fc04c520"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a990f50ae338a2e332d333bb3fc04c520">SVF::ConsExeState::getVarToVal</a></div><div class="ttdeci">const VarToValMap & getVarToVal() const</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#
|
|
2870
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a990f50ae338a2e332d333bb3fc04c520"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a990f50ae338a2e332d333bb3fc04c520">SVF::ConsExeState::getVarToVal</a></div><div class="ttdeci">const VarToValMap & getVarToVal() const</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00162">ConsExeState.h:162</a></div></div>
|
|
2856
2871
|
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_ac3ea5c4d65fac8934276a1ad12c97d06"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#ac3ea5c4d65fac8934276a1ad12c97d06">SVF::ConsExeState::globalConsES</a></div><div class="ttdeci">static ConsExeState globalConsES</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00055">ConsExeState.h:55</a></div></div>
|
|
2857
2872
|
<div class="ttc" id="aclassSVF_1_1BoundedZ3Expr_html_ae1a0bc98b18563c87136dea2a60f67be"><div class="ttname"><a href="classSVF_1_1BoundedZ3Expr.html#ae1a0bc98b18563c87136dea2a60f67be">SVF::BoundedZ3Expr::is_zero</a></div><div class="ttdeci">bool is_zero() const</div><div class="ttdef"><b>Definition:</b> <a href="BoundedZ3Expr_8h_source.html#l00113">BoundedZ3Expr.h:113</a></div></div>
|
|
2873
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a8da7bf977911ca6d3bd27f38ef852321"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a8da7bf977911ca6d3bd27f38ef852321">SVF::ConsExeState::inLocalLocToValTable</a></div><div class="ttdeci">bool inLocalLocToValTable(u32_t varId) const</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00177">ConsExeState.h:177</a></div></div>
|
|
2858
2874
|
<div class="ttc" id="aclassSVF_1_1SVFIR_html_a37cfa2aa4e7b98ef9dc8179f581a2362"><div class="ttname"><a href="classSVF_1_1SVFIR.html#a37cfa2aa4e7b98ef9dc8179f581a2362">SVF::SVFIR::getPAG</a></div><div class="ttdeci">static SVFIR * getPAG(bool buildFromFile=false)</div><div class="ttdoc">Singleton design here to make sure we only have one instance during any analysis.</div><div class="ttdef"><b>Definition:</b> <a href="SVFIR_8h_source.html#l00114">SVFIR.h:114</a></div></div>
|
|
2875
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_ad42a15421be927dbb4eb7efb10548850"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#ad42a15421be927dbb4eb7efb10548850">SVF::ConsExeState::inVarToValTable</a></div><div class="ttdeci">bool inVarToValTable(u32_t varId) const</div><div class="ttdoc">whether the variable is in varToVal table</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00145">ConsExeState.h:145</a></div></div>
|
|
2859
2876
|
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a4878ea0f5c2cc014ac2f5ecbc6534466"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a4878ea0f5c2cc014ac2f5ecbc6534466">SVF::ConsExeState::lessThanVarToValMap</a></div><div class="ttdeci">static bool lessThanVarToValMap(const VarToValMap &lhs, const VarToValMap &rhs)</div><div class="ttdoc">Whether lhs is less than rhs.</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8cpp_source.html#l00559">ConsExeState.cpp:559</a></div></div>
|
|
2877
|
+
<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>
|
|
2860
2878
|
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_adbf80e78f27a30f257fa8790f1cb78f5"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#adbf80e78f27a30f257fa8790f1cb78f5">SVF::ConsExeState::store</a></div><div class="ttdeci">bool store(const SingleAbsValue &loc, const SingleAbsValue &value)</div><div class="ttdoc">Store value to location.</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8cpp_source.html#l00508">ConsExeState.cpp:508</a></div></div>
|
|
2861
2879
|
<div class="ttc" id="aclassSVF_1_1Z3Expr_html_aa6c7fee4f418817dfa7458d830303f6e"><div class="ttname"><a href="classSVF_1_1Z3Expr.html#aa6c7fee4f418817dfa7458d830303f6e">SVF::Z3Expr::get_numeral_int</a></div><div class="ttdeci">int get_numeral_int() const</div><div class="ttdef"><b>Definition:</b> <a href="Z3Expr_8h_source.html#l00140">Z3Expr.h:140</a></div></div>
|
|
2862
2880
|
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a673a2b823a1c3ea46f38e3956ca143e8"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a673a2b823a1c3ea46f38e3956ca143e8">SVF::ConsExeState::assign</a></div><div class="ttdeci">static bool assign(SingleAbsValue &lhs, const SingleAbsValue &rhs)</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8cpp_source.html#l00595">ConsExeState.cpp:595</a></div></div>
|
|
2863
2881
|
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a64a755f61886ef3f43f48c47eb76e9cc"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a64a755f61886ef3f43f48c47eb76e9cc">SVF::ConsExeState::VarToValMap</a></div><div class="ttdeci">Map< u32_t, SingleAbsValue > VarToValMap</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00052">ConsExeState.h:52</a></div></div>
|
|
2864
|
-
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_ad8cd07a607743e8cbbf59bd5882c5043"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#ad8cd07a607743e8cbbf59bd5882c5043">SVF::ConsExeState::z3Expr2NumValue</a></div><div class="ttdeci">static s32_t z3Expr2NumValue(const SingleAbsValue &e)</div><div class="ttdoc">Return int value from an expression if it is a numeral, otherwise return an approximate value.</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#
|
|
2882
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_ad8cd07a607743e8cbbf59bd5882c5043"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#ad8cd07a607743e8cbbf59bd5882c5043">SVF::ConsExeState::z3Expr2NumValue</a></div><div class="ttdeci">static s32_t z3Expr2NumValue(const SingleAbsValue &e)</div><div class="ttdoc">Return int value from an expression if it is a numeral, otherwise return an approximate value.</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00397">ConsExeState.h:397</a></div></div>
|
|
2865
2883
|
<div class="ttc" id="aclassSVF_1_1ExeState_html_a0e4c8a41aa861ff2862d8b620c902f21"><div class="ttname"><a href="classSVF_1_1ExeState.html#a0e4c8a41aa861ff2862d8b620c902f21">SVF::ExeState::operator==</a></div><div class="ttdeci">virtual bool operator==(const ExeState &rhs) const</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8cpp_source.html#l00035">ExeState.cpp:35</a></div></div>
|
|
2884
|
+
<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>
|
|
2866
2885
|
<div class="ttc" id="anamespaceSVF_html_a9b707002523ece2ac54ca893ee9a2d4e"><div class="ttname"><a href="namespaceSVF.html#a9b707002523ece2ac54ca893ee9a2d4e">SVF::s32_t</a></div><div class="ttdeci">signed s32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00052">SVFType.h:52</a></div></div>
|
|
2867
2886
|
<div class="ttc" id="aclassSVF_1_1IRGraph_html_a3de9a2a565c303f68a90c32dc59febd5"><div class="ttname"><a href="classSVF_1_1IRGraph.html#a3de9a2a565c303f68a90c32dc59febd5">SVF::IRGraph::getNullPtr</a></div><div class="ttdeci">NodeID getNullPtr() const</div><div class="ttdef"><b>Definition:</b> <a href="IRGraph_8h_source.html#l00174">IRGraph.h:174</a></div></div>
|
|
2868
|
-
<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#
|
|
2887
|
+
<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>
|
|
2869
2888
|
<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>
|
|
2870
|
-
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_ae2868bff69d249ff28daff28fd3c86ea"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#ae2868bff69d249ff28daff28fd3c86ea">SVF::ConsExeState::ConsExeState</a></div><div class="ttdeci">ConsExeState()</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#
|
|
2871
|
-
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a22eb7b0b38d8df8efae757f4c76b5328"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a22eb7b0b38d8df8efae757f4c76b5328">SVF::ConsExeState::inLocalLocToVal</a></div><div class="ttdeci">bool inLocalLocToVal(const SingleAbsValue &loc) const</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00155">ConsExeState.h:155</a></div></div>
|
|
2889
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_ae2868bff69d249ff28daff28fd3c86ea"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#ae2868bff69d249ff28daff28fd3c86ea">SVF::ConsExeState::ConsExeState</a></div><div class="ttdeci">ConsExeState()</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00058">ConsExeState.h:58</a></div></div>
|
|
2872
2890
|
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a3905e71e489f8caf29e378364ea6e593"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a3905e71e489f8caf29e378364ea6e593">SVF::ConsExeState::pcToString</a></div><div class="ttdeci">std::string pcToString() const</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8cpp_source.html#l00332">ConsExeState.cpp:332</a></div></div>
|
|
2873
2891
|
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_ae024143db76c3350ed581db661393052"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#ae024143db76c3350ed581db661393052">SVF::ConsExeState::eqVarToValMap</a></div><div class="ttdeci">static bool eqVarToValMap(const VarToValMap &pre, const VarToValMap &nxt)</div><div class="ttdoc">Whether two var to value map is equivalent.</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8cpp_source.html#l00538">ConsExeState.cpp:538</a></div></div>
|
|
2874
2892
|
<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>
|
|
2875
|
-
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a987e69694742dafb49eb697bfde5cd19"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">SVF::ConsExeState::_locToVal</a></div><div class="ttdeci">LocToValMap _locToVal</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#
|
|
2876
|
-
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a755fbe99c6d02b6a7897dad86f46c580"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">SVF::ConsExeState::inVarToAddrsTable</a></div><div class="ttdeci">virtual bool inVarToAddrsTable(u32_t id) const override</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#
|
|
2893
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a987e69694742dafb49eb697bfde5cd19"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a987e69694742dafb49eb697bfde5cd19">SVF::ConsExeState::_locToVal</a></div><div class="ttdeci">LocToValMap _locToVal</div><div class="ttdoc">Map a memory address to its stored constant value.</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00115">ConsExeState.h:115</a></div></div>
|
|
2894
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a755fbe99c6d02b6a7897dad86f46c580"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a755fbe99c6d02b6a7897dad86f46c580">SVF::ConsExeState::inVarToAddrsTable</a></div><div class="ttdeci">virtual bool inVarToAddrsTable(u32_t id) const override</div><div class="ttdoc">whether the variable is in varToAddrs table</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00138">ConsExeState.h:138</a></div></div>
|
|
2877
2895
|
<div class="ttc" id="aclassSVF_1_1Z3Expr_html_ad1802109545427278e3a8bde52e016b0"><div class="ttname"><a href="classSVF_1_1Z3Expr.html#ad1802109545427278e3a8bde52e016b0">SVF::Z3Expr::is_numeral</a></div><div class="ttdeci">bool is_numeral() const</div><div class="ttdef"><b>Definition:</b> <a href="Z3Expr_8h_source.html#l00120">Z3Expr.h:120</a></div></div>
|
|
2878
2896
|
<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>
|
|
2897
|
+
<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>
|
|
2879
2898
|
<div class="ttc" id="aclassSVF_1_1ExeState_html_aebeb2054a8118fd33df9fef31bacda03"><div class="ttname"><a href="classSVF_1_1ExeState.html#aebeb2054a8118fd33df9fef31bacda03">SVF::ExeState::operator=</a></div><div class="ttdeci">ExeState & operator=(const ExeState &rhs)</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00073">ExeState.h:73</a></div></div>
|
|
2880
|
-
<div class="ttc" id="aclassSVF_1_1ExeState_html_aa1355e828af78b55b5d23f2dffa330f1"><div class="ttname"><a href="classSVF_1_1ExeState.html#aa1355e828af78b55b5d23f2dffa330f1">SVF::ExeState::VAddrs</a></div><div class="ttdeci">AddressValue VAddrs</div><div class="ttdef"><b>Definition:</b> <a href="ExeState_8h_source.html#l00052">ExeState.h:52</a></div></div>
|
|
2881
2899
|
<div class="ttc" id="anamespaceSVF_html_a43a65e0d33af3c743294f7a1139d2301"><div class="ttname"><a href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">SVF::NodeID</a></div><div class="ttdeci">unsigned NodeID</div><div class="ttdef"><b>Definition:</b> <a href="svf-llvm_2tools_2MTA_2MTAResultValidator_8h_source.html#l00020">MTAResultValidator.h:20</a></div></div>
|
|
2882
|
-
<div class="ttc" id="
|
|
2900
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_a17ba209c5045d53c7df66d5cf031f8a4"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#a17ba209c5045d53c7df66d5cf031f8a4">SVF::ConsExeState::getAddrs</a></div><div class="ttdeci">virtual Addrs & getAddrs(u32_t id) override</div><div class="ttdoc">get memory addresses of variable</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00120">ConsExeState.h:120</a></div></div>
|
|
2883
2901
|
<div class="ttc" id="aclassSVF_1_1SingleAbsValue_html"><div class="ttname"><a href="classSVF_1_1SingleAbsValue.html">SVF::SingleAbsValue</a></div><div class="ttdef"><b>Definition:</b> <a href="SingleAbsValue_8h_source.html#l00016">SingleAbsValue.h:16</a></div></div>
|
|
2884
2902
|
<div class="ttc" id="anamespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00051">SVFType.h:51</a></div></div>
|
|
2885
2903
|
<div class="ttc" id="anamespaceSVF_1_1SVFUtil_html_ab2e0196e0ce547ab4a483cc6d2646b24"><div class="ttname"><a href="namespaceSVF_1_1SVFUtil.html#ab2e0196e0ce547ab4a483cc6d2646b24">SVF::SVFUtil::writeWrnMsg</a></div><div class="ttdeci">void writeWrnMsg(const std::string &msg)</div><div class="ttdoc">Writes a message run through wrnMsg.</div><div class="ttdef"><b>Definition:</b> <a href="SVFUtil_8cpp_source.html#l00066">SVFUtil.cpp:66</a></div></div>
|
|
2886
|
-
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_adf45b2d4b73220e80a1265f4e1b1ee35"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#adf45b2d4b73220e80a1265f4e1b1ee35">SVF::ConsExeState::getLocToVal</a></div><div class="ttdeci">const LocToValMap & getLocToVal() const</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#
|
|
2904
|
+
<div class="ttc" id="aclassSVF_1_1ConsExeState_html_adf45b2d4b73220e80a1265f4e1b1ee35"><div class="ttname"><a href="classSVF_1_1ConsExeState.html#adf45b2d4b73220e80a1265f4e1b1ee35">SVF::ConsExeState::getLocToVal</a></div><div class="ttdeci">const LocToValMap & getLocToVal() const</div><div class="ttdef"><b>Definition:</b> <a href="ConsExeState_8h_source.html#l00167">ConsExeState.h:167</a></div></div>
|
|
2887
2905
|
<!-- start footer part -->
|
|
2888
2906
|
<hr class="footer"/><address class="footer"><small>
|
|
2889
2907
|
Generated by  <a href="http://www.doxygen.org/index.html">
|