svf-tools 1.0.752 → 1.0.754
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SVF-doxygen/html/html/BoundedZ3Expr_8cpp_source.html +3 -3
- package/SVF-doxygen/html/html/BoundedZ3Expr_8h.html +24 -1
- package/SVF-doxygen/html/html/BoundedZ3Expr_8h_source.html +373 -376
- package/SVF-doxygen/html/html/CFGNormalizer_8cpp_source.html +76 -76
- package/SVF-doxygen/html/html/CFGNormalizer_8h.html +1 -1
- package/SVF-doxygen/html/html/CFGNormalizer_8h_source.html +29 -29
- package/SVF-doxygen/html/html/CFGrammar_8cpp.html +88 -0
- package/SVF-doxygen/html/html/CFGrammar_8cpp_source.html +568 -0
- package/SVF-doxygen/html/html/CFGrammar_8h.html +108 -0
- package/SVF-doxygen/html/html/CFGrammar_8h_source.html +643 -0
- package/SVF-doxygen/html/html/CFLAlias_8h_source.html +5 -5
- package/SVF-doxygen/html/html/CFLBase_8cpp_source.html +120 -127
- package/SVF-doxygen/html/html/CFLBase_8h_source.html +14 -14
- package/SVF-doxygen/html/html/CFLGramGraphChecker_8h.html +1 -1
- package/SVF-doxygen/html/html/CFLGramGraphChecker_8h_source.html +12 -12
- package/SVF-doxygen/html/html/CFLGraphBuilder_8cpp_source.html +464 -409
- package/SVF-doxygen/html/html/CFLGraphBuilder_8h.html +10 -2
- package/SVF-doxygen/html/html/CFLGraphBuilder_8h_source.html +120 -175
- package/SVF-doxygen/html/html/CFLGraph_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CFLGraph_8h.html +1 -1
- package/SVF-doxygen/html/html/CFLGraph_8h_source.html +11 -11
- package/SVF-doxygen/html/html/CFLSolver_8cpp_source.html +60 -60
- package/SVF-doxygen/html/html/CFLSolver_8h.html +1 -1
- package/SVF-doxygen/html/html/CFLSolver_8h_source.html +19 -19
- package/SVF-doxygen/html/html/CFLStat_8cpp_source.html +2 -2
- package/SVF-doxygen/html/html/CFLVF_8cpp_source.html +5 -5
- package/SVF-doxygen/html/html/ConsExeState_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/ConsG_8cpp_source.html +4 -4
- package/SVF-doxygen/html/html/GrammarBuilder_8cpp_source.html +7 -7
- package/SVF-doxygen/html/html/GrammarBuilder_8h.html +1 -1
- package/SVF-doxygen/html/html/GrammarBuilder_8h_source.html +3 -3
- package/SVF-doxygen/html/html/GraphWriter_8cpp_source.html +1 -1
- package/SVF-doxygen/html/html/GraphWriter_8h_source.html +1 -1
- package/SVF-doxygen/html/html/NumericLiteral_8h_source.html +12 -12
- package/SVF-doxygen/html/html/PAGGrammar_8txt.html +209 -0
- package/SVF-doxygen/html/html/PEGGrammar_8txt.html +11 -11
- package/SVF-doxygen/html/html/SingleAbsValue_8h_source.html +4 -4
- package/SVF-doxygen/html/html/VFGGrammar_8txt.html +119 -0
- package/SVF-doxygen/html/html/annotated.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder-members.html +21 -20
- package/SVF-doxygen/html/html/classSVF_1_1AliasCFLGraphBuilder.html +223 -220
- package/SVF-doxygen/html/html/classSVF_1_1BoundedZ3Expr.html +291 -296
- package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer-members.html +10 -10
- package/SVF-doxygen/html/html/classSVF_1_1CFGNormalizer.html +119 -119
- package/SVF-doxygen/html/html/classSVF_1_1CFGrammar-members.html +158 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFGrammar.html +1051 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFGrammar.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CFLAlias.html +13 -13
- package/SVF-doxygen/html/html/classSVF_1_1CFLBase-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CFLBase.html +108 -114
- package/SVF-doxygen/html/html/classSVF_1_1CFLFIFOWorkList.html +17 -17
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraph-members.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraph.html +16 -16
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraphBuilder-members.html +17 -16
- package/SVF-doxygen/html/html/classSVF_1_1CFLGraphBuilder.html +333 -280
- package/SVF-doxygen/html/html/classSVF_1_1CFLSolver-members.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1CFLSolver.html +56 -56
- package/SVF-doxygen/html/html/classSVF_1_1CFLStat.html +2 -2
- package/SVF-doxygen/html/html/classSVF_1_1CFLVF-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1CFLVF.html +14 -14
- package/SVF-doxygen/html/html/classSVF_1_1ConsExeState.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1ConstraintGraph.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBase.html +76 -76
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBase.png +0 -0
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBase_1_1SymbolHash.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1GrammarBuilder.html +5 -5
- package/SVF-doxygen/html/html/classSVF_1_1NumericLiteral.html +11 -11
- package/SVF-doxygen/html/html/classSVF_1_1POCRAlias-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1POCRAlias.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1POCRHybrid-members.html +1 -1
- package/SVF-doxygen/html/html/classSVF_1_1POCRHybrid.html +4 -4
- package/SVF-doxygen/html/html/classSVF_1_1POCRHybridSolver-members.html +7 -7
- package/SVF-doxygen/html/html/classSVF_1_1POCRHybridSolver.html +53 -53
- package/SVF-doxygen/html/html/classSVF_1_1POCRSolver-members.html +6 -6
- package/SVF-doxygen/html/html/classSVF_1_1POCRSolver.html +47 -47
- package/SVF-doxygen/html/html/classSVF_1_1SingleAbsValue.html +3 -3
- package/SVF-doxygen/html/html/classSVF_1_1VFCFLGraphBuilder-members.html +21 -20
- package/SVF-doxygen/html/html/classSVF_1_1VFCFLGraphBuilder.html +148 -145
- package/SVF-doxygen/html/html/classes.html +6 -6
- package/SVF-doxygen/html/html/dir_1b8e404556d3e8597ae60437f0a084bf.html +7 -2
- package/SVF-doxygen/html/html/dir_7de7f3d0ab1cbd78bc64b135e4cd18be.html +80 -0
- package/SVF-doxygen/html/html/dir_8a9c8659eb68b9cbd3fead4690588a47.html +2 -2
- package/SVF-doxygen/html/html/files.html +14 -13
- package/SVF-doxygen/html/html/functions_a.html +5 -5
- package/SVF-doxygen/html/html/functions_b.html +9 -7
- package/SVF-doxygen/html/html/functions_c.html +5 -5
- package/SVF-doxygen/html/html/functions_d.html +1 -1
- package/SVF-doxygen/html/html/functions_e.html +4 -4
- package/SVF-doxygen/html/html/functions_f.html +2 -2
- package/SVF-doxygen/html/html/functions_func.html +5 -5
- package/SVF-doxygen/html/html/functions_func_b.html +9 -7
- package/SVF-doxygen/html/html/functions_func_c.html +5 -5
- package/SVF-doxygen/html/html/functions_func_d.html +1 -1
- package/SVF-doxygen/html/html/functions_func_e.html +3 -3
- package/SVF-doxygen/html/html/functions_func_f.html +1 -1
- package/SVF-doxygen/html/html/functions_func_g.html +13 -13
- package/SVF-doxygen/html/html/functions_func_h.html +3 -3
- package/SVF-doxygen/html/html/functions_func_i.html +1 -1
- package/SVF-doxygen/html/html/functions_func_n.html +2 -2
- package/SVF-doxygen/html/html/functions_func_p.html +2 -2
- package/SVF-doxygen/html/html/functions_func_r.html +1 -1
- package/SVF-doxygen/html/html/functions_func_s.html +1 -1
- package/SVF-doxygen/html/html/functions_g.html +15 -15
- package/SVF-doxygen/html/html/functions_h.html +3 -3
- package/SVF-doxygen/html/html/functions_i.html +2 -2
- package/SVF-doxygen/html/html/functions_k.html +3 -3
- package/SVF-doxygen/html/html/functions_l.html +5 -5
- package/SVF-doxygen/html/html/functions_n.html +3 -3
- package/SVF-doxygen/html/html/functions_o.html +13 -13
- package/SVF-doxygen/html/html/functions_p.html +16 -12
- package/SVF-doxygen/html/html/functions_r.html +1 -1
- package/SVF-doxygen/html/html/functions_s.html +17 -19
- package/SVF-doxygen/html/html/functions_t.html +3 -3
- package/SVF-doxygen/html/html/functions_type_k.html +2 -2
- package/SVF-doxygen/html/html/functions_type_p.html +1 -1
- package/SVF-doxygen/html/html/functions_type_s.html +3 -3
- package/SVF-doxygen/html/html/functions_v.html +6 -6
- package/SVF-doxygen/html/html/functions_vars_e.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_f.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_g.html +2 -2
- package/SVF-doxygen/html/html/functions_vars_k.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_n.html +1 -1
- package/SVF-doxygen/html/html/functions_vars_s.html +2 -2
- package/SVF-doxygen/html/html/functions_w.html +9 -9
- package/SVF-doxygen/html/html/globals.html +6 -4
- package/SVF-doxygen/html/html/globals_defs.html +7 -0
- package/SVF-doxygen/html/html/globals_e.html +1 -1
- package/SVF-doxygen/html/html/globals_g.html +3 -3
- package/SVF-doxygen/html/html/globals_m.html +4 -1
- package/SVF-doxygen/html/html/globals_s.html +1 -1
- package/SVF-doxygen/html/html/globals_v.html +2 -2
- package/SVF-doxygen/html/html/globals_vars.html +12 -10
- package/SVF-doxygen/html/html/hierarchy.html +1 -1
- package/SVF-doxygen/html/html/menudata.js +1 -0
- package/SVF-doxygen/html/html/namespaceSVF.html +40 -2
- package/SVF-doxygen/html/html/namespacemembers_b.html +3 -0
- package/SVF-doxygen/html/html/namespacemembers_enum.html +3 -0
- package/SVF-doxygen/html/html/search/all_0.js +147 -146
- package/SVF-doxygen/html/html/search/all_1.js +478 -478
- package/SVF-doxygen/html/html/search/all_10.js +327 -325
- package/SVF-doxygen/html/html/search/all_11.js +208 -208
- package/SVF-doxygen/html/html/search/all_12.js +545 -545
- package/SVF-doxygen/html/html/search/all_13.js +189 -189
- package/SVF-doxygen/html/html/search/all_14.js +66 -66
- package/SVF-doxygen/html/html/search/all_15.js +170 -170
- package/SVF-doxygen/html/html/search/all_16.js +60 -60
- package/SVF-doxygen/html/html/search/all_17.js +1 -1
- package/SVF-doxygen/html/html/search/all_18.js +1 -1
- package/SVF-doxygen/html/html/search/all_19.js +10 -10
- package/SVF-doxygen/html/html/search/all_1a.js +169 -169
- package/SVF-doxygen/html/html/search/all_2.js +159 -156
- package/SVF-doxygen/html/html/search/all_3.js +637 -638
- package/SVF-doxygen/html/html/search/all_4.js +227 -227
- package/SVF-doxygen/html/html/search/all_5.js +156 -156
- package/SVF-doxygen/html/html/search/all_6.js +223 -223
- package/SVF-doxygen/html/html/search/all_7.js +1012 -1012
- package/SVF-doxygen/html/html/search/all_8.js +192 -192
- package/SVF-doxygen/html/html/search/all_9.js +597 -597
- package/SVF-doxygen/html/html/search/all_a.js +47 -47
- package/SVF-doxygen/html/html/search/all_b.js +26 -26
- package/SVF-doxygen/html/html/search/all_c.js +113 -113
- package/SVF-doxygen/html/html/search/all_d.js +196 -196
- package/SVF-doxygen/html/html/search/all_e.js +206 -206
- package/SVF-doxygen/html/html/search/all_f.js +122 -122
- package/SVF-doxygen/html/html/search/classes_0.js +26 -26
- package/SVF-doxygen/html/html/search/classes_1.js +9 -9
- package/SVF-doxygen/html/html/search/classes_10.js +73 -73
- package/SVF-doxygen/html/html/search/classes_11.js +15 -15
- package/SVF-doxygen/html/html/search/classes_12.js +2 -2
- package/SVF-doxygen/html/html/search/classes_13.js +10 -10
- package/SVF-doxygen/html/html/search/classes_14.js +14 -14
- package/SVF-doxygen/html/html/search/classes_15.js +1 -1
- package/SVF-doxygen/html/html/search/classes_2.js +76 -76
- package/SVF-doxygen/html/html/search/classes_3.js +35 -35
- package/SVF-doxygen/html/html/search/classes_4.js +10 -10
- package/SVF-doxygen/html/html/search/classes_5.js +28 -28
- package/SVF-doxygen/html/html/search/classes_6.js +98 -98
- package/SVF-doxygen/html/html/search/classes_7.js +33 -33
- package/SVF-doxygen/html/html/search/classes_8.js +56 -56
- package/SVF-doxygen/html/html/search/classes_9.js +1 -1
- package/SVF-doxygen/html/html/search/classes_a.js +12 -12
- package/SVF-doxygen/html/html/search/classes_b.js +29 -29
- package/SVF-doxygen/html/html/search/classes_c.js +6 -6
- package/SVF-doxygen/html/html/search/classes_d.js +19 -19
- package/SVF-doxygen/html/html/search/classes_e.js +36 -36
- package/SVF-doxygen/html/html/search/classes_f.js +25 -25
- package/SVF-doxygen/html/html/search/defines_0.js +3 -3
- package/SVF-doxygen/html/html/search/defines_1.js +2 -2
- package/SVF-doxygen/html/html/search/defines_2.js +30 -30
- package/SVF-doxygen/html/html/search/defines_3.js +20 -20
- package/SVF-doxygen/html/html/search/defines_4.js +3 -3
- package/SVF-doxygen/html/html/search/defines_5.js +4 -4
- package/SVF-doxygen/html/html/search/defines_6.js +2 -2
- package/SVF-doxygen/html/html/search/defines_7.js +5 -5
- package/SVF-doxygen/html/html/search/defines_8.js +13 -13
- package/SVF-doxygen/html/html/search/defines_9.js +9 -9
- package/SVF-doxygen/html/html/search/defines_a.js +2 -2
- package/SVF-doxygen/html/html/search/defines_b.js +1 -2
- package/SVF-doxygen/html/html/search/defines_c.js +2 -2
- package/SVF-doxygen/html/html/search/defines_d.js +2 -6
- package/SVF-doxygen/html/html/search/defines_e.js +6 -3
- package/SVF-doxygen/html/html/search/defines_f.html +6 -2
- package/SVF-doxygen/html/html/search/defines_f.js +3 -26
- package/SVF-doxygen/html/html/search/enums_0.js +3 -3
- package/SVF-doxygen/html/html/search/enums_1.js +2 -1
- package/SVF-doxygen/html/html/search/enums_10.js +1 -1
- package/SVF-doxygen/html/html/search/enums_11.js +1 -1
- package/SVF-doxygen/html/html/search/enums_2.js +8 -8
- package/SVF-doxygen/html/html/search/enums_3.js +1 -1
- package/SVF-doxygen/html/html/search/enums_4.js +4 -4
- package/SVF-doxygen/html/html/search/enums_5.js +1 -1
- package/SVF-doxygen/html/html/search/enums_6.js +2 -2
- package/SVF-doxygen/html/html/search/enums_7.js +2 -2
- package/SVF-doxygen/html/html/search/enums_8.js +4 -4
- package/SVF-doxygen/html/html/search/enums_9.js +1 -1
- package/SVF-doxygen/html/html/search/enums_a.js +2 -2
- package/SVF-doxygen/html/html/search/enums_b.js +7 -7
- package/SVF-doxygen/html/html/search/enums_c.js +1 -1
- package/SVF-doxygen/html/html/search/enums_d.js +4 -4
- package/SVF-doxygen/html/html/search/enums_e.js +2 -2
- package/SVF-doxygen/html/html/search/enums_f.js +4 -4
- package/SVF-doxygen/html/html/search/enumvalues_0.js +14 -14
- package/SVF-doxygen/html/html/search/enumvalues_1.js +14 -13
- package/SVF-doxygen/html/html/search/enumvalues_10.js +35 -35
- package/SVF-doxygen/html/html/search/enumvalues_11.js +3 -3
- package/SVF-doxygen/html/html/search/enumvalues_12.js +10 -10
- package/SVF-doxygen/html/html/search/enumvalues_13.js +1 -1
- package/SVF-doxygen/html/html/search/enumvalues_14.js +1 -1
- package/SVF-doxygen/html/html/search/enumvalues_15.js +3 -3
- package/SVF-doxygen/html/html/search/enumvalues_2.js +40 -40
- package/SVF-doxygen/html/html/search/enumvalues_3.js +13 -13
- package/SVF-doxygen/html/html/search/enumvalues_4.js +34 -34
- package/SVF-doxygen/html/html/search/enumvalues_5.js +48 -48
- package/SVF-doxygen/html/html/search/enumvalues_6.js +6 -6
- package/SVF-doxygen/html/html/search/enumvalues_7.js +9 -9
- package/SVF-doxygen/html/html/search/enumvalues_8.js +23 -23
- package/SVF-doxygen/html/html/search/enumvalues_9.js +6 -6
- package/SVF-doxygen/html/html/search/enumvalues_a.js +17 -17
- package/SVF-doxygen/html/html/search/enumvalues_b.js +11 -11
- package/SVF-doxygen/html/html/search/enumvalues_c.js +6 -6
- package/SVF-doxygen/html/html/search/enumvalues_d.js +18 -17
- package/SVF-doxygen/html/html/search/enumvalues_e.js +11 -11
- package/SVF-doxygen/html/html/search/enumvalues_f.js +45 -45
- package/SVF-doxygen/html/html/search/files_0.js +13 -13
- package/SVF-doxygen/html/html/search/files_1.js +7 -7
- package/SVF-doxygen/html/html/search/files_10.js +8 -8
- package/SVF-doxygen/html/html/search/files_11.js +8 -8
- package/SVF-doxygen/html/html/search/files_12.js +2 -2
- package/SVF-doxygen/html/html/search/files_2.js +49 -50
- package/SVF-doxygen/html/html/search/files_3.js +14 -14
- package/SVF-doxygen/html/html/search/files_4.js +4 -4
- package/SVF-doxygen/html/html/search/files_5.js +13 -13
- package/SVF-doxygen/html/html/search/files_6.js +9 -9
- package/SVF-doxygen/html/html/search/files_7.js +14 -14
- package/SVF-doxygen/html/html/search/files_8.js +13 -13
- package/SVF-doxygen/html/html/search/files_9.js +18 -18
- package/SVF-doxygen/html/html/search/files_a.js +3 -3
- package/SVF-doxygen/html/html/search/files_b.js +2 -2
- package/SVF-doxygen/html/html/search/files_c.js +20 -19
- package/SVF-doxygen/html/html/search/files_d.js +4 -4
- package/SVF-doxygen/html/html/search/files_e.js +62 -62
- package/SVF-doxygen/html/html/search/files_f.js +8 -8
- package/SVF-doxygen/html/html/search/functions_0.js +351 -351
- package/SVF-doxygen/html/html/search/functions_1.js +81 -80
- package/SVF-doxygen/html/html/search/functions_10.js +121 -121
- package/SVF-doxygen/html/html/search/functions_11.js +281 -281
- package/SVF-doxygen/html/html/search/functions_12.js +55 -55
- package/SVF-doxygen/html/html/search/functions_13.js +38 -38
- package/SVF-doxygen/html/html/search/functions_14.js +71 -71
- package/SVF-doxygen/html/html/search/functions_15.js +29 -29
- package/SVF-doxygen/html/html/search/functions_16.js +2 -2
- package/SVF-doxygen/html/html/search/functions_17.js +169 -169
- package/SVF-doxygen/html/html/search/functions_2.js +251 -251
- package/SVF-doxygen/html/html/search/functions_3.js +71 -71
- package/SVF-doxygen/html/html/search/functions_4.js +55 -55
- package/SVF-doxygen/html/html/search/functions_5.js +55 -55
- package/SVF-doxygen/html/html/search/functions_6.js +832 -832
- package/SVF-doxygen/html/html/search/functions_7.js +144 -144
- package/SVF-doxygen/html/html/search/functions_8.js +417 -417
- package/SVF-doxygen/html/html/search/functions_9.js +29 -29
- package/SVF-doxygen/html/html/search/functions_a.js +2 -2
- package/SVF-doxygen/html/html/search/functions_b.js +23 -23
- package/SVF-doxygen/html/html/search/functions_c.js +75 -75
- package/SVF-doxygen/html/html/search/functions_d.js +35 -35
- package/SVF-doxygen/html/html/search/functions_e.js +56 -56
- package/SVF-doxygen/html/html/search/functions_f.js +143 -143
- package/SVF-doxygen/html/html/search/namespaces_0.js +1 -1
- package/SVF-doxygen/html/html/search/namespaces_1.js +7 -7
- package/SVF-doxygen/html/html/search/related_0.js +2 -2
- package/SVF-doxygen/html/html/search/related_1.js +1 -1
- package/SVF-doxygen/html/html/search/related_2.js +2 -2
- package/SVF-doxygen/html/html/search/related_3.js +2 -2
- package/SVF-doxygen/html/html/search/related_4.js +2 -2
- package/SVF-doxygen/html/html/search/related_5.js +1 -1
- package/SVF-doxygen/html/html/search/related_6.js +2 -2
- package/SVF-doxygen/html/html/search/related_7.js +4 -4
- package/SVF-doxygen/html/html/search/related_8.js +2 -2
- package/SVF-doxygen/html/html/search/related_9.js +4 -4
- package/SVF-doxygen/html/html/search/related_a.js +19 -19
- package/SVF-doxygen/html/html/search/related_b.js +4 -4
- package/SVF-doxygen/html/html/search/related_c.js +1 -1
- package/SVF-doxygen/html/html/search/related_d.js +11 -11
- package/SVF-doxygen/html/html/search/related_e.js +2 -2
- package/SVF-doxygen/html/html/search/related_f.js +2 -2
- package/SVF-doxygen/html/html/search/searchdata.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_0.js +18 -18
- package/SVF-doxygen/html/html/search/typedefs_1.js +25 -25
- package/SVF-doxygen/html/html/search/typedefs_10.js +60 -60
- package/SVF-doxygen/html/html/search/typedefs_11.js +13 -13
- package/SVF-doxygen/html/html/search/typedefs_12.js +11 -11
- package/SVF-doxygen/html/html/search/typedefs_13.js +35 -35
- package/SVF-doxygen/html/html/search/typedefs_14.js +8 -8
- package/SVF-doxygen/html/html/search/typedefs_2.js +126 -126
- package/SVF-doxygen/html/html/search/typedefs_3.js +39 -39
- package/SVF-doxygen/html/html/search/typedefs_4.js +16 -16
- package/SVF-doxygen/html/html/search/typedefs_5.js +41 -41
- package/SVF-doxygen/html/html/search/typedefs_6.js +52 -52
- package/SVF-doxygen/html/html/search/typedefs_7.js +40 -40
- package/SVF-doxygen/html/html/search/typedefs_8.js +1 -1
- package/SVF-doxygen/html/html/search/typedefs_9.js +6 -6
- package/SVF-doxygen/html/html/search/typedefs_a.js +29 -29
- package/SVF-doxygen/html/html/search/typedefs_b.js +29 -29
- package/SVF-doxygen/html/html/search/typedefs_c.js +40 -40
- package/SVF-doxygen/html/html/search/typedefs_d.js +15 -15
- package/SVF-doxygen/html/html/search/typedefs_e.js +52 -52
- package/SVF-doxygen/html/html/search/typedefs_f.js +14 -14
- package/SVF-doxygen/html/html/search/variables_0.js +147 -146
- package/SVF-doxygen/html/html/search/variables_1.js +74 -74
- package/SVF-doxygen/html/html/search/variables_10.js +97 -97
- package/SVF-doxygen/html/html/search/variables_11.js +46 -46
- package/SVF-doxygen/html/html/search/variables_12.js +93 -93
- package/SVF-doxygen/html/html/search/variables_13.js +77 -77
- package/SVF-doxygen/html/html/search/variables_14.js +14 -14
- package/SVF-doxygen/html/html/search/variables_15.js +48 -48
- package/SVF-doxygen/html/html/search/variables_16.js +9 -9
- package/SVF-doxygen/html/html/search/variables_17.js +1 -1
- package/SVF-doxygen/html/html/search/variables_18.js +2 -2
- package/SVF-doxygen/html/html/search/variables_2.js +35 -35
- package/SVF-doxygen/html/html/search/variables_3.js +148 -148
- package/SVF-doxygen/html/html/search/variables_4.js +56 -56
- package/SVF-doxygen/html/html/search/variables_5.js +40 -40
- package/SVF-doxygen/html/html/search/variables_6.js +67 -67
- package/SVF-doxygen/html/html/search/variables_7.js +33 -33
- package/SVF-doxygen/html/html/search/variables_8.js +7 -7
- package/SVF-doxygen/html/html/search/variables_9.js +77 -77
- package/SVF-doxygen/html/html/search/variables_a.js +4 -4
- package/SVF-doxygen/html/html/search/variables_b.js +10 -10
- package/SVF-doxygen/html/html/search/variables_c.js +45 -45
- package/SVF-doxygen/html/html/search/variables_d.js +56 -56
- package/SVF-doxygen/html/html/search/variables_e.js +123 -123
- package/SVF-doxygen/html/html/search/variables_f.js +33 -33
- package/SVF-doxygen/html/html/structSVF_1_1GrammarBase_1_1Symbol.html +25 -25
- package/SVF-doxygen/html/html/structSVF_1_1GrammarBase_1_1SymbolVectorHash.html +4 -4
- package/SVF-doxygen/html/html/structstd_1_1hash_3_01SVF_1_1BoundedZ3Expr_01_4.html +5 -5
- package/package.json +1 -1
- package/svf/include/AbstractExecution/BoundedZ3Expr.h +8 -12
- package/svf/include/CFL/CFGNormalizer.h +11 -11
- package/svf/include/CFL/{CFLGrammar.h → CFGrammar.h} +5 -5
- package/svf/include/CFL/CFLAlias.h +2 -2
- package/svf/include/CFL/CFLBase.h +2 -2
- package/svf/include/CFL/CFLGramGraphChecker.h +1 -1
- package/svf/include/CFL/CFLGraphBuilder.h +30 -81
- package/svf/include/CFL/CFLSolver.h +8 -8
- package/svf/include/CFL/GrammarBuilder.h +1 -1
- package/svf/include/Graphs/CFLGraph.h +3 -3
- package/svf/lib/CFL/CFGNormalizer.cpp +11 -11
- package/svf/lib/CFL/{CFLGrammar.cpp → CFGrammar.cpp} +7 -7
- package/svf/lib/CFL/CFLBase.cpp +5 -11
- package/svf/lib/CFL/CFLGraphBuilder.cpp +125 -74
- package/svf/lib/CFL/CFLVF.cpp +2 -2
- /package/svf/include/CFL/{CFLGrammar.txt → grammar/PAGGrammar.txt} +0 -0
- /package/svf/include/CFL/{PEGGrammar.txt → grammar/PEGGrammar.txt} +0 -0
- /package/svf/include/CFL/{VFG.txt → grammar/VFGGrammar.txt} +0 -0
|
@@ -90,73 +90,76 @@ Inheritance diagram for SVF::AliasCFLGraphBuilder:</div>
|
|
|
90
90
|
<table class="memberdecls">
|
|
91
91
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
92
92
|
Public Member Functions</h2></td></tr>
|
|
93
|
-
<tr class="memitem:ab19243c4aceffce7b257f3d8cb3050fd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AliasCFLGraphBuilder.html#ab19243c4aceffce7b257f3d8cb3050fd">buildBigraph</a> (<a class="el" href="classSVF_1_1ConstraintGraph.html">ConstraintGraph</a> *graph, <a class="el" href="classSVF_1_1CFLGraphBuilder.html#
|
|
93
|
+
<tr class="memitem:ab19243c4aceffce7b257f3d8cb3050fd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AliasCFLGraphBuilder.html#ab19243c4aceffce7b257f3d8cb3050fd">buildBigraph</a> (<a class="el" href="classSVF_1_1ConstraintGraph.html">ConstraintGraph</a> *graph, <a class="el" href="classSVF_1_1CFLGraphBuilder.html#a41f8cc1264aa99c581e1d6f3150a2d48">Kind</a> startKind, <a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a> *grammar)</td></tr>
|
|
94
94
|
<tr class="memdesc:ab19243c4aceffce7b257f3d8cb3050fd"><td class="mdescLeft"> </td><td class="mdescRight">Builds a bidirectional CFL graph by copying nodes and edges from a const graph that inherits from <a class="el" href="classSVF_1_1GenericGraph.html">GenericGraph</a>. <a href="classSVF_1_1AliasCFLGraphBuilder.html#ab19243c4aceffce7b257f3d8cb3050fd">More...</a><br /></td></tr>
|
|
95
95
|
<tr class="separator:ab19243c4aceffce7b257f3d8cb3050fd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
96
|
-
<tr class="memitem:ac74b55198d73acebb9843fd13c1fd880"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AliasCFLGraphBuilder.html#ac74b55198d73acebb9843fd13c1fd880">buildBiPEGgraph</a> (<a class="el" href="classSVF_1_1ConstraintGraph.html">ConstraintGraph</a> *graph, <a class="el" href="classSVF_1_1CFLGraphBuilder.html#
|
|
96
|
+
<tr class="memitem:ac74b55198d73acebb9843fd13c1fd880"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AliasCFLGraphBuilder.html#ac74b55198d73acebb9843fd13c1fd880">buildBiPEGgraph</a> (<a class="el" href="classSVF_1_1ConstraintGraph.html">ConstraintGraph</a> *graph, <a class="el" href="classSVF_1_1CFLGraphBuilder.html#a41f8cc1264aa99c581e1d6f3150a2d48">Kind</a> startKind, <a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a> *grammar, <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> *pag)</td></tr>
|
|
97
97
|
<tr class="separator:ac74b55198d73acebb9843fd13c1fd880"><td class="memSeparator" colspan="2"> </td></tr>
|
|
98
98
|
<tr class="inherit_header pub_methods_classSVF_1_1CFLGraphBuilder"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classSVF_1_1CFLGraphBuilder')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classSVF_1_1CFLGraphBuilder.html">SVF::CFLGraphBuilder</a></td></tr>
|
|
99
|
-
<tr class="memitem:
|
|
100
|
-
<tr class="memitem:
|
|
101
|
-
<tr class="separator:
|
|
102
|
-
<tr class="memitem:
|
|
103
|
-
<tr class="
|
|
104
|
-
<tr class="separator:
|
|
105
|
-
<tr class="memitem:
|
|
106
|
-
<tr class="memdesc:a6c9fa25204550dc5bea1cae52a61472b inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Method to build a CFL graph from a Dot file. <a href="classSVF_1_1CFLGraphBuilder.html#a6c9fa25204550dc5bea1cae52a61472b">More...</a><br /></td></tr>
|
|
107
|
-
<tr class="separator:a6c9fa25204550dc5bea1cae52a61472b inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
108
|
-
<tr class="memitem:acc19ccb854db14637c97f4ed99810da9 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#acc19ccb854db14637c97f4ed99810da9">buildFromTextFile</a> (<a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> fileName, <a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a> *grammar)</td></tr>
|
|
109
|
-
<tr class="memdesc:acc19ccb854db14637c97f4ed99810da9 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Method to build a CFL graph from a Text file. <a href="classSVF_1_1CFLGraphBuilder.html#acc19ccb854db14637c97f4ed99810da9">More...</a><br /></td></tr>
|
|
110
|
-
<tr class="separator:acc19ccb854db14637c97f4ed99810da9 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
111
|
-
<tr class="memitem:a7e564f2fbaf9b92aab3decaf6cba93c3 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>, <a class="el" href="classSVF_1_1CFLGraphBuilder.html#a20299631d2b85507af6d81861736db5e">Kind</a> > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a7e564f2fbaf9b92aab3decaf6cba93c3">getLabelToKindMap</a> ()</td></tr>
|
|
99
|
+
<tr class="memitem:a27b247b46ce0b467459fcc2d53f50383 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memTemplParams" colspan="2">template<class N , class E > </td></tr>
|
|
100
|
+
<tr class="memitem:a27b247b46ce0b467459fcc2d53f50383 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a27b247b46ce0b467459fcc2d53f50383">build</a> (<a class="el" href="classSVF_1_1GenericGraph.html">GenericGraph</a>< N, E > *graph, <a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a> *grammar, <a class="el" href="namespaceSVF.html#a165cd8904ba9f1ae6e0fa1752ba78caa">BuildDirection</a> direction=<a class="el" href="namespaceSVF.html#a165cd8904ba9f1ae6e0fa1752ba78caaaac7938d40cfc2307e2bf325d28e7884e">BuildDirection::plain</a>)</td></tr>
|
|
101
|
+
<tr class="separator:a27b247b46ce0b467459fcc2d53f50383 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
102
|
+
<tr class="memitem:a2e97c964eb1e187a931f17da9672815f inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a2e97c964eb1e187a931f17da9672815f">build</a> (<a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> fileName, <a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a> *grammar, <a class="el" href="namespaceSVF.html#a165cd8904ba9f1ae6e0fa1752ba78caa">BuildDirection</a> direction=<a class="el" href="namespaceSVF.html#a165cd8904ba9f1ae6e0fa1752ba78caaaac7938d40cfc2307e2bf325d28e7884e">BuildDirection::plain</a>)</td></tr>
|
|
103
|
+
<tr class="memdesc:a2e97c964eb1e187a931f17da9672815f inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Method to build a CFL graph from external file. <a href="classSVF_1_1CFLGraphBuilder.html#a2e97c964eb1e187a931f17da9672815f">More...</a><br /></td></tr>
|
|
104
|
+
<tr class="separator:a2e97c964eb1e187a931f17da9672815f inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
105
|
+
<tr class="memitem:a7e564f2fbaf9b92aab3decaf6cba93c3 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>, <a class="el" href="classSVF_1_1CFLGraphBuilder.html#a41f8cc1264aa99c581e1d6f3150a2d48">Kind</a> > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a7e564f2fbaf9b92aab3decaf6cba93c3">getLabelToKindMap</a> ()</td></tr>
|
|
112
106
|
<tr class="memdesc:a7e564f2fbaf9b92aab3decaf6cba93c3 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Returns a reference to the map that associates string labels with their corresponding Kind. <a href="classSVF_1_1CFLGraphBuilder.html#a7e564f2fbaf9b92aab3decaf6cba93c3">More...</a><br /></td></tr>
|
|
113
107
|
<tr class="separator:a7e564f2fbaf9b92aab3decaf6cba93c3 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
114
|
-
<tr class="memitem:a03686822a9dd7d886f3c41ba79f8b481 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="classSVF_1_1CFLGraphBuilder.html#
|
|
108
|
+
<tr class="memitem:a03686822a9dd7d886f3c41ba79f8b481 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="classSVF_1_1CFLGraphBuilder.html#a41f8cc1264aa99c581e1d6f3150a2d48">Kind</a>, <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a03686822a9dd7d886f3c41ba79f8b481">getKindToLabelMap</a> ()</td></tr>
|
|
115
109
|
<tr class="memdesc:a03686822a9dd7d886f3c41ba79f8b481 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Returns a reference to the map that associates Kinds with their corresponding string labels. <a href="classSVF_1_1CFLGraphBuilder.html#a03686822a9dd7d886f3c41ba79f8b481">More...</a><br /></td></tr>
|
|
116
110
|
<tr class="separator:a03686822a9dd7d886f3c41ba79f8b481 inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
117
|
-
<tr class="memitem:
|
|
118
|
-
<tr class="memdesc:
|
|
119
|
-
<tr class="separator:
|
|
111
|
+
<tr class="memitem:aa3fb91f78b5d9e2c0eb24e4986a5926c inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">CFGrammar::Kind</a>, <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>< <a class="el" href="classSVF_1_1GrammarBase.html#ab070e5449d26e347b957d8b994d0303f">CFGrammar::Attribute</a> > > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#aa3fb91f78b5d9e2c0eb24e4986a5926c">getKindToAttrsMap</a> ()</td></tr>
|
|
112
|
+
<tr class="memdesc:aa3fb91f78b5d9e2c0eb24e4986a5926c inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Returns a reference to the map that associates Kinds with their corresponding attributes. <a href="classSVF_1_1CFLGraphBuilder.html#aa3fb91f78b5d9e2c0eb24e4986a5926c">More...</a><br /></td></tr>
|
|
113
|
+
<tr class="separator:aa3fb91f78b5d9e2c0eb24e4986a5926c inherit pub_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
120
114
|
</table><table class="memberdecls">
|
|
121
115
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
|
|
122
116
|
Private Member Functions</h2></td></tr>
|
|
123
117
|
<tr class="memitem:a9feeeca8a919b19693e48d6a382c8871"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AliasCFLGraphBuilder.html#a9feeeca8a919b19693e48d6a382c8871">connectVGep</a> (<a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> *<a class="el" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>, <a class="el" href="classSVF_1_1ConstraintGraph.html">ConstraintGraph</a> *graph, <a class="el" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a> *src, <a class="el" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a> *dst, <a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> level, <a class="el" href="classSVF_1_1SVFIR.html">SVFIR</a> *pag)</td></tr>
|
|
124
118
|
<tr class="memdesc:a9feeeca8a919b19693e48d6a382c8871"><td class="mdescLeft"> </td><td class="mdescRight">Connects VGep (Variable GEP) <a href="classSVF_1_1AliasCFLGraphBuilder.html#a9feeeca8a919b19693e48d6a382c8871">More...</a><br /></td></tr>
|
|
125
119
|
<tr class="separator:a9feeeca8a919b19693e48d6a382c8871"><td class="memSeparator" colspan="2"> </td></tr>
|
|
126
|
-
<tr class="memitem:
|
|
127
|
-
<tr class="memdesc:
|
|
128
|
-
<tr class="separator:
|
|
129
|
-
<tr class="memitem:
|
|
130
|
-
<tr class="memdesc:
|
|
131
|
-
<tr class="separator:
|
|
120
|
+
<tr class="memitem:a3069f804d6e63c5d74dc0b4d7399d43e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AliasCFLGraphBuilder.html#a3069f804d6e63c5d74dc0b4d7399d43e">addBiCFLEdge</a> (<a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> *<a class="el" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>, <a class="el" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a> *src, <a class="el" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a> *dst, <a class="el" href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">CFGrammar::Kind</a> label)</td></tr>
|
|
121
|
+
<tr class="memdesc:a3069f804d6e63c5d74dc0b4d7399d43e"><td class="mdescLeft"> </td><td class="mdescRight">Handles edges, with the exception of the GEP. <a href="classSVF_1_1AliasCFLGraphBuilder.html#a3069f804d6e63c5d74dc0b4d7399d43e">More...</a><br /></td></tr>
|
|
122
|
+
<tr class="separator:a3069f804d6e63c5d74dc0b4d7399d43e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
123
|
+
<tr class="memitem:aa998adcd267038210c2ed93148d00333"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1AliasCFLGraphBuilder.html#aa998adcd267038210c2ed93148d00333">addBiGepCFLEdge</a> (<a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> *<a class="el" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>, <a class="el" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a> *src, <a class="el" href="classSVF_1_1ConstraintNode.html">ConstraintNode</a> *dst, <a class="el" href="classSVF_1_1GrammarBase.html#ab070e5449d26e347b957d8b994d0303f">CFGrammar::Attribute</a> attri)</td></tr>
|
|
124
|
+
<tr class="memdesc:aa998adcd267038210c2ed93148d00333"><td class="mdescLeft"> </td><td class="mdescRight">Adds bidirectional GEP edges with attributes. <a href="classSVF_1_1AliasCFLGraphBuilder.html#aa998adcd267038210c2ed93148d00333">More...</a><br /></td></tr>
|
|
125
|
+
<tr class="separator:aa998adcd267038210c2ed93148d00333"><td class="memSeparator" colspan="2"> </td></tr>
|
|
132
126
|
</table><table class="memberdecls">
|
|
133
127
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
|
|
134
128
|
Additional Inherited Members</h2></td></tr>
|
|
135
129
|
<tr class="inherit_header pro_types_classSVF_1_1CFLGraphBuilder"><td colspan="2" onclick="javascript:toggleInherit('pro_types_classSVF_1_1CFLGraphBuilder')"><img src="closed.png" alt="-"/> Protected Types inherited from <a class="el" href="classSVF_1_1CFLGraphBuilder.html">SVF::CFLGraphBuilder</a></td></tr>
|
|
136
|
-
<tr class="memitem:
|
|
137
|
-
<tr class="separator:
|
|
138
|
-
<tr class="memitem:
|
|
139
|
-
<tr class="separator:
|
|
130
|
+
<tr class="memitem:a41f8cc1264aa99c581e1d6f3150a2d48 inherit pro_types_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">CFGrammar::Kind</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a41f8cc1264aa99c581e1d6f3150a2d48">Kind</a></td></tr>
|
|
131
|
+
<tr class="separator:a41f8cc1264aa99c581e1d6f3150a2d48 inherit pro_types_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
132
|
+
<tr class="memitem:a2ab271d42ab82aea2adf8b0e641aa39c inherit pro_types_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="structSVF_1_1GrammarBase_1_1Symbol.html">CFGrammar::Symbol</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a2ab271d42ab82aea2adf8b0e641aa39c">Symbol</a></td></tr>
|
|
133
|
+
<tr class="separator:a2ab271d42ab82aea2adf8b0e641aa39c inherit pro_types_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
140
134
|
<tr class="inherit_header pro_methods_classSVF_1_1CFLGraphBuilder"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classSVF_1_1CFLGraphBuilder')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="classSVF_1_1CFLGraphBuilder.html">SVF::CFLGraphBuilder</a></td></tr>
|
|
141
|
-
<tr class="memitem:
|
|
142
|
-
<tr class="memdesc:
|
|
143
|
-
<tr class="separator:
|
|
135
|
+
<tr class="memitem:af05b577fbb64082d80ca4cfa2e2bc4f1 inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#af05b577fbb64082d80ca4cfa2e2bc4f1">addAttribute</a> (<a class="el" href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">CFGrammar::Kind</a> kind, <a class="el" href="classSVF_1_1GrammarBase.html#ab070e5449d26e347b957d8b994d0303f">CFGrammar::Attribute</a> attribute)</td></tr>
|
|
136
|
+
<tr class="memdesc:af05b577fbb64082d80ca4cfa2e2bc4f1 inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Method to add an attribute to a specific kind. <a href="classSVF_1_1CFLGraphBuilder.html#af05b577fbb64082d80ca4cfa2e2bc4f1">More...</a><br /></td></tr>
|
|
137
|
+
<tr class="separator:af05b577fbb64082d80ca4cfa2e2bc4f1 inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
144
138
|
<tr class="memitem:a01e5d31c43d40f8a518aa8d371b085d8 inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a01e5d31c43d40f8a518aa8d371b085d8">buildlabelToKindMap</a> (<a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a> *grammar)</td></tr>
|
|
145
139
|
<tr class="memdesc:a01e5d31c43d40f8a518aa8d371b085d8 inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">build label and kind connect from the grammar <a href="classSVF_1_1CFLGraphBuilder.html#a01e5d31c43d40f8a518aa8d371b085d8">More...</a><br /></td></tr>
|
|
146
140
|
<tr class="separator:a01e5d31c43d40f8a518aa8d371b085d8 inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
147
141
|
<tr class="memitem:aec30ce1ad7be5ac2e41f73ddba356fd9 inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLNode.html">CFLNode</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#aec30ce1ad7be5ac2e41f73ddba356fd9">addGNode</a> (<a class="el" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a> <a class="el" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a>)</td></tr>
|
|
148
142
|
<tr class="memdesc:aec30ce1ad7be5ac2e41f73ddba356fd9 inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">add src and dst node from file <a href="classSVF_1_1CFLGraphBuilder.html#aec30ce1ad7be5ac2e41f73ddba356fd9">More...</a><br /></td></tr>
|
|
149
143
|
<tr class="separator:aec30ce1ad7be5ac2e41f73ddba356fd9 inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
144
|
+
<tr class="memitem:aea046c5f1971069a50100afe7ffed89f inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#aea046c5f1971069a50100afe7ffed89f">buildFromText</a> (<a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> fileName, <a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a> *grammar, <a class="el" href="namespaceSVF.html#a165cd8904ba9f1ae6e0fa1752ba78caa">BuildDirection</a> direction=<a class="el" href="namespaceSVF.html#a165cd8904ba9f1ae6e0fa1752ba78caaaac7938d40cfc2307e2bf325d28e7884e">BuildDirection::plain</a>)</td></tr>
|
|
145
|
+
<tr class="memdesc:aea046c5f1971069a50100afe7ffed89f inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Method to build a CFL graph from a Text file. <a href="classSVF_1_1CFLGraphBuilder.html#aea046c5f1971069a50100afe7ffed89f">More...</a><br /></td></tr>
|
|
146
|
+
<tr class="separator:aea046c5f1971069a50100afe7ffed89f inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
147
|
+
<tr class="memitem:a1e3b5220f536443019ea25262169498a inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a1e3b5220f536443019ea25262169498a">buildFromDot</a> (<a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> filename, <a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a> *grammar, <a class="el" href="namespaceSVF.html#a165cd8904ba9f1ae6e0fa1752ba78caa">BuildDirection</a> direction=<a class="el" href="namespaceSVF.html#a165cd8904ba9f1ae6e0fa1752ba78caaaac7938d40cfc2307e2bf325d28e7884e">BuildDirection::plain</a>)</td></tr>
|
|
148
|
+
<tr class="memdesc:a1e3b5220f536443019ea25262169498a inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Method to build a CFL graph from a Dot file. <a href="classSVF_1_1CFLGraphBuilder.html#a1e3b5220f536443019ea25262169498a">More...</a><br /></td></tr>
|
|
149
|
+
<tr class="separator:a1e3b5220f536443019ea25262169498a inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
150
|
+
<tr class="memitem:aa1a24c858e46b68e9f6a99668d880f6a inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#aa1a24c858e46b68e9f6a99668d880f6a">buildFromJson</a> (<a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> filename, <a class="el" href="classSVF_1_1GrammarBase.html">GrammarBase</a> *grammar, <a class="el" href="namespaceSVF.html#a165cd8904ba9f1ae6e0fa1752ba78caa">BuildDirection</a> direction=<a class="el" href="namespaceSVF.html#a165cd8904ba9f1ae6e0fa1752ba78caaaac7938d40cfc2307e2bf325d28e7884e">BuildDirection::plain</a>)</td></tr>
|
|
151
|
+
<tr class="memdesc:aa1a24c858e46b68e9f6a99668d880f6a inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Method to build a CFL graph from a Json file. <a href="classSVF_1_1CFLGraphBuilder.html#aa1a24c858e46b68e9f6a99668d880f6a">More...</a><br /></td></tr>
|
|
152
|
+
<tr class="separator:aa1a24c858e46b68e9f6a99668d880f6a inherit pro_methods_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
150
153
|
<tr class="inherit_header pro_attribs_classSVF_1_1CFLGraphBuilder"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classSVF_1_1CFLGraphBuilder')"><img src="closed.png" alt="-"/> Protected Attributes inherited from <a class="el" href="classSVF_1_1CFLGraphBuilder.html">SVF::CFLGraphBuilder</a></td></tr>
|
|
151
|
-
<tr class="memitem:a1ecf9cad8707ba07d3e44624ea273f2f inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>, <a class="el" href="classSVF_1_1CFLGraphBuilder.html#
|
|
154
|
+
<tr class="memitem:a1ecf9cad8707ba07d3e44624ea273f2f inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a>, <a class="el" href="classSVF_1_1CFLGraphBuilder.html#a41f8cc1264aa99c581e1d6f3150a2d48">Kind</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a></td></tr>
|
|
152
155
|
<tr class="memdesc:a1ecf9cad8707ba07d3e44624ea273f2f inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Maps to maintain mapping between labels and kinds. <a href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">More...</a><br /></td></tr>
|
|
153
156
|
<tr class="separator:a1ecf9cad8707ba07d3e44624ea273f2f inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
154
|
-
<tr class="memitem:a93b41c2f0eca82e6eaf49895b2b13a1e inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="classSVF_1_1CFLGraphBuilder.html#
|
|
157
|
+
<tr class="memitem:a93b41c2f0eca82e6eaf49895b2b13a1e inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="classSVF_1_1CFLGraphBuilder.html#a41f8cc1264aa99c581e1d6f3150a2d48">Kind</a>, <a class="el" href="cJSON_8cpp.html#ae1adbce218e7a9d09164012443191d24">std::string</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a></td></tr>
|
|
155
158
|
<tr class="separator:a93b41c2f0eca82e6eaf49895b2b13a1e inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
156
|
-
<tr class="memitem:
|
|
157
|
-
<tr class="memdesc:
|
|
158
|
-
<tr class="separator:
|
|
159
|
-
<tr class="memitem:aad408d6ecb776fd763c9b9221a1bed18 inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#
|
|
159
|
+
<tr class="memitem:af34aa7ae71e100d8bbe7c1b17c1f0068 inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceSVF.html#a8234d4b959abc9123993bcff4eee34c1">Map</a>< <a class="el" href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">CFGrammar::Kind</a>, <a class="el" href="namespaceSVF.html#af739db846e47ba6b2fd15eaad31ab7fb">Set</a>< <a class="el" href="classSVF_1_1GrammarBase.html#ab070e5449d26e347b957d8b994d0303f">CFGrammar::Attribute</a> > > </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#af34aa7ae71e100d8bbe7c1b17c1f0068">kindToAttrsMap</a></td></tr>
|
|
160
|
+
<tr class="memdesc:af34aa7ae71e100d8bbe7c1b17c1f0068 inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="mdescLeft"> </td><td class="mdescRight">Map to maintain attributes associated with each kind. <a href="classSVF_1_1CFLGraphBuilder.html#af34aa7ae71e100d8bbe7c1b17c1f0068">More...</a><br /></td></tr>
|
|
161
|
+
<tr class="separator:af34aa7ae71e100d8bbe7c1b17c1f0068 inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
162
|
+
<tr class="memitem:aad408d6ecb776fd763c9b9221a1bed18 inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a41f8cc1264aa99c581e1d6f3150a2d48">Kind</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#aad408d6ecb776fd763c9b9221a1bed18">current</a></td></tr>
|
|
160
163
|
<tr class="separator:aad408d6ecb776fd763c9b9221a1bed18 inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
161
164
|
<tr class="memitem:af034366ce280120e5cd1a5685894e9ac inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSVF_1_1CFLGraph.html">CFLGraph</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a></td></tr>
|
|
162
165
|
<tr class="separator:af034366ce280120e5cd1a5685894e9ac inherit pro_attribs_classSVF_1_1CFLGraphBuilder"><td class="memSeparator" colspan="2"> </td></tr>
|
|
@@ -164,10 +167,10 @@ Additional Inherited Members</h2></td></tr>
|
|
|
164
167
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
165
168
|
<div class="textblock"><p><a class="el" href="classSVF_1_1AliasCFLGraphBuilder.html" title="AliasCFLGraphBuilder: a CFLGraphBuilder specialized for handling aliasing.">AliasCFLGraphBuilder</a>: a <a class="el" href="classSVF_1_1CFLGraphBuilder.html">CFLGraphBuilder</a> specialized for handling aliasing. </p>
|
|
166
169
|
|
|
167
|
-
<p class="definition">Definition at line <a class="el" href="CFLGraphBuilder_8h_source.html#
|
|
170
|
+
<p class="definition">Definition at line <a class="el" href="CFLGraphBuilder_8h_source.html#l00120">120</a> of file <a class="el" href="CFLGraphBuilder_8h_source.html">CFLGraphBuilder.h</a>.</p>
|
|
168
171
|
</div><h2 class="groupheader">Member Function Documentation</h2>
|
|
169
|
-
<a id="
|
|
170
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
172
|
+
<a id="a3069f804d6e63c5d74dc0b4d7399d43e"></a>
|
|
173
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a3069f804d6e63c5d74dc0b4d7399d43e">◆ </a></span>addBiCFLEdge()</h2>
|
|
171
174
|
|
|
172
175
|
<div class="memitem">
|
|
173
176
|
<div class="memproto">
|
|
@@ -196,7 +199,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
196
199
|
<tr>
|
|
197
200
|
<td class="paramkey"></td>
|
|
198
201
|
<td></td>
|
|
199
|
-
<td class="paramtype"><a class="el" href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">
|
|
202
|
+
<td class="paramtype"><a class="el" href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">CFGrammar::Kind</a> </td>
|
|
200
203
|
<td class="paramname"><em>label</em> </td>
|
|
201
204
|
</tr>
|
|
202
205
|
<tr>
|
|
@@ -214,19 +217,19 @@ Additional Inherited Members</h2></td></tr>
|
|
|
214
217
|
|
|
215
218
|
<p>Handles edges, with the exception of the GEP. </p>
|
|
216
219
|
|
|
217
|
-
<p class="definition">Definition at line <a class="el" href="CFLGraphBuilder_8cpp_source.html#
|
|
218
|
-
<div class="fragment"><div class="line"><a name="
|
|
219
|
-
<div class="line"><a name="
|
|
220
|
-
<div class="line"><a name="
|
|
221
|
-
<div class="line"><a name="
|
|
222
|
-
<div class="line"><a name="
|
|
223
|
-
<div class="line"><a name="
|
|
224
|
-
<div class="line"><a name="
|
|
220
|
+
<p class="definition">Definition at line <a class="el" href="CFLGraphBuilder_8cpp_source.html#l00433">433</a> of file <a class="el" href="CFLGraphBuilder_8cpp_source.html">CFLGraphBuilder.cpp</a>.</p>
|
|
221
|
+
<div class="fragment"><div class="line"><a name="l00434"></a><span class="lineno"> 434</span> {</div>
|
|
222
|
+
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(src->getId()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(dst->getId()), kind);</div>
|
|
223
|
+
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> label = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a>[kind];</div>
|
|
224
|
+
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  label.append(<span class="stringliteral">"bar"</span>);</div>
|
|
225
|
+
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(dst->getId()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(src->getId()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label]);</div>
|
|
226
|
+
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>  <span class="keywordflow">return</span>;</div>
|
|
227
|
+
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> }</div>
|
|
225
228
|
</div><!-- fragment -->
|
|
226
229
|
</div>
|
|
227
230
|
</div>
|
|
228
|
-
<a id="
|
|
229
|
-
<h2 class="memtitle"><span class="permalink"><a href="#
|
|
231
|
+
<a id="aa998adcd267038210c2ed93148d00333"></a>
|
|
232
|
+
<h2 class="memtitle"><span class="permalink"><a href="#aa998adcd267038210c2ed93148d00333">◆ </a></span>addBiGepCFLEdge()</h2>
|
|
230
233
|
|
|
231
234
|
<div class="memitem">
|
|
232
235
|
<div class="memproto">
|
|
@@ -255,7 +258,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
255
258
|
<tr>
|
|
256
259
|
<td class="paramkey"></td>
|
|
257
260
|
<td></td>
|
|
258
|
-
<td class="paramtype"><a class="el" href="classSVF_1_1GrammarBase.html#ab070e5449d26e347b957d8b994d0303f">
|
|
261
|
+
<td class="paramtype"><a class="el" href="classSVF_1_1GrammarBase.html#ab070e5449d26e347b957d8b994d0303f">CFGrammar::Attribute</a> </td>
|
|
259
262
|
<td class="paramname"><em>attri</em> </td>
|
|
260
263
|
</tr>
|
|
261
264
|
<tr>
|
|
@@ -273,15 +276,15 @@ Additional Inherited Members</h2></td></tr>
|
|
|
273
276
|
|
|
274
277
|
<p>Adds bidirectional GEP edges with attributes. </p>
|
|
275
278
|
|
|
276
|
-
<p class="definition">Definition at line <a class="el" href="CFLGraphBuilder_8cpp_source.html#
|
|
277
|
-
<div class="fragment"><div class="line"><a name="
|
|
278
|
-
<div class="line"><a name="
|
|
279
|
-
<div class="line"><a name="
|
|
280
|
-
<div class="line"><a name="
|
|
281
|
-
<div class="line"><a name="
|
|
282
|
-
<div class="line"><a name="
|
|
283
|
-
<div class="line"><a name="
|
|
284
|
-
<div class="line"><a name="
|
|
279
|
+
<p class="definition">Definition at line <a class="el" href="CFLGraphBuilder_8cpp_source.html#l00442">442</a> of file <a class="el" href="CFLGraphBuilder_8cpp_source.html">CFLGraphBuilder.cpp</a>.</p>
|
|
280
|
+
<div class="fragment"><div class="line"><a name="l00443"></a><span class="lineno"> 443</span> {</div>
|
|
281
|
+
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>  <a class="code" href="classSVF_1_1GenericEdge.html#aab8892b73370c32b48621cd1d0cce614">CFLEdge::GEdgeFlag</a> edgeLabel = <a class="code" href="classSVF_1_1GrammarBase.html#af418e1033618da75e974a04ee1d7e275">CFGrammar::getAttributedKind</a>(attri, <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375acfd0a194af0da66162545f0089eb4baa">ConstraintEdge::NormalGep</a>);</div>
|
|
282
|
+
<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(src->getId()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(dst->getId()), edgeLabel);</div>
|
|
283
|
+
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> label = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a>[<a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375acfd0a194af0da66162545f0089eb4baa">ConstraintEdge::NormalGep</a>];</div>
|
|
284
|
+
<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>  label.append(<span class="stringliteral">"bar"</span>);</div>
|
|
285
|
+
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(dst->getId()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(src->getId()), <a class="code" href="classSVF_1_1GrammarBase.html#af418e1033618da75e974a04ee1d7e275">CFGrammar::getAttributedKind</a>(attri, <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label]));</div>
|
|
286
|
+
<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>  <span class="keywordflow">return</span>;</div>
|
|
287
|
+
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> }</div>
|
|
285
288
|
</div><!-- fragment -->
|
|
286
289
|
</div>
|
|
287
290
|
</div>
|
|
@@ -300,7 +303,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
300
303
|
<tr>
|
|
301
304
|
<td class="paramkey"></td>
|
|
302
305
|
<td></td>
|
|
303
|
-
<td class="paramtype"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#
|
|
306
|
+
<td class="paramtype"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a41f8cc1264aa99c581e1d6f3150a2d48">Kind</a> </td>
|
|
304
307
|
<td class="paramname"><em>startKind</em>, </td>
|
|
305
308
|
</tr>
|
|
306
309
|
<tr>
|
|
@@ -319,47 +322,47 @@ Additional Inherited Members</h2></td></tr>
|
|
|
319
322
|
|
|
320
323
|
<p>Builds a bidirectional CFL graph by copying nodes and edges from a const graph that inherits from <a class="el" href="classSVF_1_1GenericGraph.html">GenericGraph</a>. </p>
|
|
321
324
|
|
|
322
|
-
<p class="definition">Definition at line <a class="el" href="CFLGraphBuilder_8cpp_source.html#
|
|
323
|
-
<div class="fragment"><div class="line"><a name="
|
|
324
|
-
<div class="line"><a name="
|
|
325
|
-
<div class="line"><a name="
|
|
326
|
-
<div class="line"><a name="
|
|
327
|
-
<div class="line"><a name="
|
|
328
|
-
<div class="line"><a name="
|
|
329
|
-
<div class="line"><a name="
|
|
330
|
-
<div class="line"><a name="
|
|
331
|
-
<div class="line"><a name="
|
|
332
|
-
<div class="line"><a name="
|
|
333
|
-
<div class="line"><a name="
|
|
334
|
-
<div class="line"><a name="
|
|
335
|
-
<div class="line"><a name="
|
|
336
|
-
<div class="line"><a name="
|
|
337
|
-
<div class="line"><a name="
|
|
338
|
-
<div class="line"><a name="
|
|
339
|
-
<div class="line"><a name="
|
|
340
|
-
<div class="line"><a name="
|
|
341
|
-
<div class="line"><a name="
|
|
342
|
-
<div class="line"><a name="
|
|
343
|
-
<div class="line"><a name="
|
|
344
|
-
<div class="line"><a name="
|
|
345
|
-
<div class="line"><a name="
|
|
346
|
-
<div class="line"><a name="
|
|
347
|
-
<div class="line"><a name="
|
|
348
|
-
<div class="line"><a name="
|
|
349
|
-
<div class="line"><a name="
|
|
350
|
-
<div class="line"><a name="
|
|
351
|
-
<div class="line"><a name="
|
|
352
|
-
<div class="line"><a name="
|
|
353
|
-
<div class="line"><a name="
|
|
354
|
-
<div class="line"><a name="
|
|
355
|
-
<div class="line"><a name="
|
|
356
|
-
<div class="line"><a name="
|
|
357
|
-
<div class="line"><a name="
|
|
358
|
-
<div class="line"><a name="
|
|
359
|
-
<div class="line"><a name="
|
|
360
|
-
<div class="line"><a name="
|
|
361
|
-
<div class="line"><a name="
|
|
362
|
-
<div class="line"><a name="
|
|
325
|
+
<p class="definition">Definition at line <a class="el" href="CFLGraphBuilder_8cpp_source.html#l00251">251</a> of file <a class="el" href="CFLGraphBuilder_8cpp_source.html">CFLGraphBuilder.cpp</a>.</p>
|
|
326
|
+
<div class="fragment"><div class="line"><a name="l00252"></a><span class="lineno"> 252</span> {</div>
|
|
327
|
+
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a> = <span class="keyword">new</span> CFLGraph(startKind);</div>
|
|
328
|
+
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  </div>
|
|
329
|
+
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a01e5d31c43d40f8a518aa8d371b085d8">buildlabelToKindMap</a>(grammar);</div>
|
|
330
|
+
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> it = graph->begin(); it!= graph->end(); it++)</div>
|
|
331
|
+
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>  {</div>
|
|
332
|
+
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  CFLNode* node = <span class="keyword">new</span> CFLNode((*it).first);</div>
|
|
333
|
+
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a58b944d0f2c11868e17223acdb35f82c">addCFLNode</a>((*it).first, node);</div>
|
|
334
|
+
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  }</div>
|
|
335
|
+
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> it = graph->begin(); it!= graph->end(); it++)</div>
|
|
336
|
+
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  {</div>
|
|
337
|
+
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  ConstraintNode* node = (*it).second;</div>
|
|
338
|
+
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>  <span class="keywordflow">for</span>(ConstraintEdge* edge : node->getOutEdges())</div>
|
|
339
|
+
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  {</div>
|
|
340
|
+
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  <a class="code" href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">CFGrammar::Kind</a> edgeLabel = edge->getEdgeKind();</div>
|
|
341
|
+
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  <span class="comment">// Need to get the offset from the Const Edge</span></div>
|
|
342
|
+
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  <span class="comment">// The offset present edge is only from Normal Gep CG at moment</span></div>
|
|
343
|
+
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1NormalGepCGEdge.html#a79033645683ead9a7404cd35fd936092">NormalGepCGEdge::classof</a>(edge))</div>
|
|
344
|
+
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  {</div>
|
|
345
|
+
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  NormalGepCGEdge *nGepEdge = SVFUtil::dyn_cast<NormalGepCGEdge>(edge);</div>
|
|
346
|
+
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>  <a class="code" href="classSVF_1_1GrammarBase.html#ab070e5449d26e347b957d8b994d0303f">CFGrammar::Attribute</a> attr = nGepEdge->getConstantFieldIdx();</div>
|
|
347
|
+
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af05b577fbb64082d80ca4cfa2e2bc4f1">addAttribute</a>(edgeLabel, attr);</div>
|
|
348
|
+
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  edgeLabel = <a class="code" href="classSVF_1_1GrammarBase.html#af418e1033618da75e974a04ee1d7e275">CFGrammar::getAttributedKind</a>(attr, edgeLabel);</div>
|
|
349
|
+
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), edgeLabel);</div>
|
|
350
|
+
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> label = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a>[edge->getEdgeKind()];</div>
|
|
351
|
+
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  label.append(<span class="stringliteral">"bar"</span>); <span class="comment">// for example Gep_i should be Gepbar_i, not Gep_ibar</span></div>
|
|
352
|
+
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1GrammarBase.html#af418e1033618da75e974a04ee1d7e275">CFGrammar::getAttributedKind</a>(attr, <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label]));</div>
|
|
353
|
+
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af05b577fbb64082d80ca4cfa2e2bc4f1">addAttribute</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label], attr);</div>
|
|
354
|
+
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  }</div>
|
|
355
|
+
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  <span class="keywordflow">else</span></div>
|
|
356
|
+
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  {</div>
|
|
357
|
+
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), edgeLabel);</div>
|
|
358
|
+
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> label = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a>[edge->getEdgeKind()];</div>
|
|
359
|
+
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  label.append(<span class="stringliteral">"bar"</span>);</div>
|
|
360
|
+
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label]);</div>
|
|
361
|
+
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  }</div>
|
|
362
|
+
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>  }</div>
|
|
363
|
+
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  }</div>
|
|
364
|
+
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>;</div>
|
|
365
|
+
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> }</div>
|
|
363
366
|
</div><!-- fragment -->
|
|
364
367
|
</div>
|
|
365
368
|
</div>
|
|
@@ -378,7 +381,7 @@ Additional Inherited Members</h2></td></tr>
|
|
|
378
381
|
<tr>
|
|
379
382
|
<td class="paramkey"></td>
|
|
380
383
|
<td></td>
|
|
381
|
-
<td class="paramtype"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#
|
|
384
|
+
<td class="paramtype"><a class="el" href="classSVF_1_1CFLGraphBuilder.html#a41f8cc1264aa99c581e1d6f3150a2d48">Kind</a> </td>
|
|
382
385
|
<td class="paramname"><em>startKind</em>, </td>
|
|
383
386
|
</tr>
|
|
384
387
|
<tr>
|
|
@@ -411,114 +414,114 @@ Additional Inherited Members</h2></td></tr>
|
|
|
411
414
|
<p>Add Copy Edge</p>
|
|
412
415
|
<p>Handle VGep normalize to Normal Gep by connecting all geps' srcs to vgep dest Example: In Test Case: Ctest field-ptr-arith-varIdx.c.bc BFS Search the 8 LEVEL up to find the ValueNode, and the number of level search is arbitary the more the level search the more valueNode and the Vgep Dst will possivble connect</p>
|
|
413
416
|
|
|
414
|
-
<p class="definition">Definition at line <a class="el" href="CFLGraphBuilder_8cpp_source.html#
|
|
415
|
-
<div class="fragment"><div class="line"><a name="
|
|
416
|
-
<div class="line"><a name="
|
|
417
|
-
<div class="line"><a name="
|
|
418
|
-
<div class="line"><a name="
|
|
419
|
-
<div class="line"><a name="
|
|
420
|
-
<div class="line"><a name="
|
|
421
|
-
<div class="line"><a name="
|
|
422
|
-
<div class="line"><a name="
|
|
423
|
-
<div class="line"><a name="
|
|
424
|
-
<div class="line"><a name="
|
|
425
|
-
<div class="line"><a name="
|
|
426
|
-
<div class="line"><a name="
|
|
427
|
-
<div class="line"><a name="
|
|
428
|
-
<div class="line"><a name="
|
|
429
|
-
<div class="line"><a name="
|
|
430
|
-
<div class="line"><a name="
|
|
431
|
-
<div class="line"><a name="
|
|
432
|
-
<div class="line"><a name="
|
|
433
|
-
<div class="line"><a name="
|
|
434
|
-
<div class="line"><a name="
|
|
435
|
-
<div class="line"><a name="
|
|
436
|
-
<div class="line"><a name="
|
|
437
|
-
<div class="line"><a name="
|
|
438
|
-
<div class="line"><a name="
|
|
439
|
-
<div class="line"><a name="
|
|
440
|
-
<div class="line"><a name="
|
|
441
|
-
<div class="line"><a name="
|
|
442
|
-
<div class="line"><a name="
|
|
443
|
-
<div class="line"><a name="
|
|
444
|
-
<div class="line"><a name="
|
|
445
|
-
<div class="line"><a name="
|
|
446
|
-
<div class="line"><a name="
|
|
447
|
-
<div class="line"><a name="
|
|
448
|
-
<div class="line"><a name="
|
|
449
|
-
<div class="line"><a name="
|
|
450
|
-
<div class="line"><a name="
|
|
451
|
-
<div class="line"><a name="
|
|
452
|
-
<div class="line"><a name="
|
|
453
|
-
<div class="line"><a name="
|
|
454
|
-
<div class="line"><a name="
|
|
455
|
-
<div class="line"><a name="
|
|
456
|
-
<div class="line"><a name="
|
|
457
|
-
<div class="line"><a name="
|
|
458
|
-
<div class="line"><a name="
|
|
459
|
-
<div class="line"><a name="
|
|
460
|
-
<div class="line"><a name="
|
|
461
|
-
<div class="line"><a name="
|
|
462
|
-
<div class="line"><a name="
|
|
463
|
-
<div class="line"><a name="
|
|
464
|
-
<div class="line"><a name="
|
|
465
|
-
<div class="line"><a name="
|
|
466
|
-
<div class="line"><a name="
|
|
467
|
-
<div class="line"><a name="
|
|
468
|
-
<div class="line"><a name="
|
|
469
|
-
<div class="line"><a name="
|
|
470
|
-
<div class="line"><a name="
|
|
471
|
-
<div class="line"><a name="
|
|
472
|
-
<div class="line"><a name="
|
|
473
|
-
<div class="line"><a name="
|
|
474
|
-
<div class="line"><a name="
|
|
475
|
-
<div class="line"><a name="
|
|
476
|
-
<div class="line"><a name="
|
|
477
|
-
<div class="line"><a name="
|
|
478
|
-
<div class="line"><a name="
|
|
479
|
-
<div class="line"><a name="
|
|
480
|
-
<div class="line"><a name="
|
|
481
|
-
<div class="line"><a name="
|
|
482
|
-
<div class="line"><a name="
|
|
483
|
-
<div class="line"><a name="
|
|
484
|
-
<div class="line"><a name="
|
|
485
|
-
<div class="line"><a name="
|
|
486
|
-
<div class="line"><a name="
|
|
487
|
-
<div class="line"><a name="
|
|
488
|
-
<div class="line"><a name="
|
|
489
|
-
<div class="line"><a name="
|
|
490
|
-
<div class="line"><a name="
|
|
491
|
-
<div class="line"><a name="
|
|
492
|
-
<div class="line"><a name="
|
|
493
|
-
<div class="line"><a name="
|
|
494
|
-
<div class="line"><a name="
|
|
495
|
-
<div class="line"><a name="
|
|
496
|
-
<div class="line"><a name="
|
|
497
|
-
<div class="line"><a name="
|
|
498
|
-
<div class="line"><a name="
|
|
499
|
-
<div class="line"><a name="
|
|
500
|
-
<div class="line"><a name="
|
|
501
|
-
<div class="line"><a name="
|
|
502
|
-
<div class="line"><a name="
|
|
503
|
-
<div class="line"><a name="
|
|
504
|
-
<div class="line"><a name="
|
|
505
|
-
<div class="line"><a name="
|
|
506
|
-
<div class="line"><a name="
|
|
507
|
-
<div class="line"><a name="
|
|
508
|
-
<div class="line"><a name="
|
|
509
|
-
<div class="line"><a name="
|
|
510
|
-
<div class="line"><a name="
|
|
511
|
-
<div class="line"><a name="
|
|
512
|
-
<div class="line"><a name="
|
|
513
|
-
<div class="line"><a name="
|
|
514
|
-
<div class="line"><a name="
|
|
515
|
-
<div class="line"><a name="
|
|
516
|
-
<div class="line"><a name="
|
|
517
|
-
<div class="line"><a name="
|
|
518
|
-
<div class="line"><a name="
|
|
519
|
-
<div class="line"><a name="
|
|
520
|
-
<div class="line"><a name="
|
|
521
|
-
<div class="line"><a name="
|
|
417
|
+
<p class="definition">Definition at line <a class="el" href="CFLGraphBuilder_8cpp_source.html#l00293">293</a> of file <a class="el" href="CFLGraphBuilder_8cpp_source.html">CFLGraphBuilder.cpp</a>.</p>
|
|
418
|
+
<div class="fragment"><div class="line"><a name="l00294"></a><span class="lineno"> 294</span> {</div>
|
|
419
|
+
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a> = <span class="keyword">new</span> CFLGraph(startKind);</div>
|
|
420
|
+
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  </div>
|
|
421
|
+
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a01e5d31c43d40f8a518aa8d371b085d8">buildlabelToKindMap</a>(grammar);</div>
|
|
422
|
+
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> it = graph->begin(); it!= graph->end(); it++)</div>
|
|
423
|
+
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  {</div>
|
|
424
|
+
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>  CFLNode* node = <span class="keyword">new</span> CFLNode((*it).first);</div>
|
|
425
|
+
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a58b944d0f2c11868e17223acdb35f82c">addCFLNode</a>((*it).first, node);</div>
|
|
426
|
+
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  }</div>
|
|
427
|
+
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  <span class="keywordflow">for</span>(<span class="keyword">auto</span> it = graph->begin(); it!= graph->end(); it++)</div>
|
|
428
|
+
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  {</div>
|
|
429
|
+
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  ConstraintNode* node = (*it).second;</div>
|
|
430
|
+
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>  <span class="keywordflow">for</span>(ConstraintEdge* edge : node->getOutEdges())</div>
|
|
431
|
+
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  {</div>
|
|
432
|
+
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>  <span class="keywordflow">if</span> (edge->getEdgeKind() == <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a20d6a102ddc06257a822ffffcc5a3b47">ConstraintEdge::Store</a>)</div>
|
|
433
|
+
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>  {</div>
|
|
434
|
+
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>  <span class="keywordflow">if</span> (pag->isNullPtr(edge->getSrcID()))</div>
|
|
435
|
+
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>  <span class="keywordflow">continue</span>;</div>
|
|
436
|
+
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  ConstraintNode* Dst = edge->getDstNode();</div>
|
|
437
|
+
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  ConstraintNode* DerefNode = <span class="keyword">nullptr</span>;</div>
|
|
438
|
+
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  CFLNode* CFLDerefNode = <span class="keyword">nullptr</span>;</div>
|
|
439
|
+
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  <span class="keywordflow">for</span> (ConstraintEdge* DstInEdge : Dst->getInEdges())</div>
|
|
440
|
+
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>  {</div>
|
|
441
|
+
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  <span class="keywordflow">if</span> (DstInEdge->getEdgeKind() == <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375aed68bc43e8aae49e8590e140eb0ffaf3">ConstraintEdge::Addr</a>)</div>
|
|
442
|
+
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  {</div>
|
|
443
|
+
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  DerefNode = DstInEdge->getSrcNode();</div>
|
|
444
|
+
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  CFLDerefNode = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(DstInEdge->getSrcID());</div>
|
|
445
|
+
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  <span class="keywordflow">break</span>;</div>
|
|
446
|
+
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  }</div>
|
|
447
|
+
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  }</div>
|
|
448
|
+
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>  <span class="keywordflow">if</span> (DerefNode == <span class="keyword">nullptr</span>)</div>
|
|
449
|
+
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  {</div>
|
|
450
|
+
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  </div>
|
|
451
|
+
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>  <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> refId = pag->addDummyValNode();</div>
|
|
452
|
+
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>  CFLDerefNode = <span class="keyword">new</span> CFLNode(refId);</div>
|
|
453
|
+
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a58b944d0f2c11868e17223acdb35f82c">addCFLNode</a>(refId, CFLDerefNode);</div>
|
|
454
|
+
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(CFLDerefNode, <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375aed68bc43e8aae49e8590e140eb0ffaf3">ConstraintEdge::Addr</a>);</div>
|
|
455
|
+
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> label = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a>[<a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375aed68bc43e8aae49e8590e140eb0ffaf3">ConstraintEdge::Addr</a>];</div>
|
|
456
|
+
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>  label.append(<span class="stringliteral">"bar"</span>);</div>
|
|
457
|
+
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), CFLDerefNode, <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label]);</div>
|
|
458
|
+
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  }</div>
|
|
459
|
+
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(CFLDerefNode->getId()), <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a29b0aa3353f866ef1655ab6d4716feb9">ConstraintEdge::Copy</a>);</div>
|
|
460
|
+
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> label = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a>[<a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a29b0aa3353f866ef1655ab6d4716feb9">ConstraintEdge::Copy</a>];</div>
|
|
461
|
+
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  label.append(<span class="stringliteral">"bar"</span>);</div>
|
|
462
|
+
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(CFLDerefNode->getId()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label]);</div>
|
|
463
|
+
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  }</div>
|
|
464
|
+
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( edge->getEdgeKind() == <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a1bdeb9a06641d16b43391120812b40b2">ConstraintEdge::Load</a>)</div>
|
|
465
|
+
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  {</div>
|
|
466
|
+
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  ConstraintNode* Src = edge-><a class="code" href="classSVF_1_1GenericEdge.html#ab47ca533c415841ef75456cbad439589">getSrcNode</a>();</div>
|
|
467
|
+
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  ConstraintNode* DerefNode = <span class="keyword">nullptr</span>;</div>
|
|
468
|
+
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  CFLNode* CFLDerefNode = <span class="keyword">nullptr</span>;</div>
|
|
469
|
+
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  <span class="keywordflow">for</span> (ConstraintEdge* SrcInEdge : Src->getInEdges())</div>
|
|
470
|
+
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  {</div>
|
|
471
|
+
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>  <span class="keywordflow">if</span> (SrcInEdge->getEdgeKind() == <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375aed68bc43e8aae49e8590e140eb0ffaf3">ConstraintEdge::Addr</a>)</div>
|
|
472
|
+
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  {</div>
|
|
473
|
+
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  DerefNode = SrcInEdge->getSrcNode();</div>
|
|
474
|
+
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  CFLDerefNode = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(SrcInEdge->getSrcID());</div>
|
|
475
|
+
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  }</div>
|
|
476
|
+
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  }</div>
|
|
477
|
+
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  <span class="keywordflow">if</span> (DerefNode == <span class="keyword">nullptr</span>)</div>
|
|
478
|
+
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  {</div>
|
|
479
|
+
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  <a class="code" href="namespaceSVF.html#a43a65e0d33af3c743294f7a1139d2301">NodeID</a> refId = pag->addDummyValNode();</div>
|
|
480
|
+
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  CFLDerefNode = <span class="keyword">new</span> CFLNode(refId);</div>
|
|
481
|
+
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a58b944d0f2c11868e17223acdb35f82c">addCFLNode</a>(refId, CFLDerefNode);</div>
|
|
482
|
+
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(CFLDerefNode, <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375aed68bc43e8aae49e8590e140eb0ffaf3">ConstraintEdge::Addr</a>);</div>
|
|
483
|
+
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> label = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a>[<a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375aed68bc43e8aae49e8590e140eb0ffaf3">ConstraintEdge::Addr</a>];</div>
|
|
484
|
+
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  label.append(<span class="stringliteral">"bar"</span>);</div>
|
|
485
|
+
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), CFLDerefNode, <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label]);</div>
|
|
486
|
+
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  }</div>
|
|
487
|
+
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(CFLDerefNode->getId()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a29b0aa3353f866ef1655ab6d4716feb9">ConstraintEdge::Copy</a>);</div>
|
|
488
|
+
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> label = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a>[<a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a29b0aa3353f866ef1655ab6d4716feb9">ConstraintEdge::Copy</a>];</div>
|
|
489
|
+
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  label.append(<span class="stringliteral">"bar"</span>);</div>
|
|
490
|
+
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(CFLDerefNode->getId()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label]);</div>
|
|
491
|
+
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  }</div>
|
|
492
|
+
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( edge->getEdgeKind() == <a class="code" href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a">ConstraintEdge::VariantGep</a>)</div>
|
|
493
|
+
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  {</div>
|
|
494
|
+
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  <a class="code" href="classSVF_1_1AliasCFLGraphBuilder.html#a9feeeca8a919b19693e48d6a382c8871">connectVGep</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>, graph, edge->getSrcNode(), edge->getDstNode(), 8, pag);</div>
|
|
495
|
+
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  }</div>
|
|
496
|
+
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  <span class="keywordflow">else</span></div>
|
|
497
|
+
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>  {</div>
|
|
498
|
+
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>  <a class="code" href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">CFGrammar::Kind</a> edgeLabel = edge->getEdgeKind();</div>
|
|
499
|
+
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  <span class="comment">// Need to get the offset from the Const Edge</span></div>
|
|
500
|
+
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>  <span class="comment">// The offset present edge is only from Normal Gep CG at moment</span></div>
|
|
501
|
+
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  <span class="keywordflow">if</span>(<a class="code" href="classSVF_1_1NormalGepCGEdge.html#a79033645683ead9a7404cd35fd936092">NormalGepCGEdge::classof</a>(edge))</div>
|
|
502
|
+
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  {</div>
|
|
503
|
+
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  NormalGepCGEdge *nGepEdge = SVFUtil::dyn_cast<NormalGepCGEdge>(edge);</div>
|
|
504
|
+
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  <a class="code" href="classSVF_1_1GrammarBase.html#ab070e5449d26e347b957d8b994d0303f">CFGrammar::Attribute</a> attr = nGepEdge->getConstantFieldIdx();</div>
|
|
505
|
+
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af05b577fbb64082d80ca4cfa2e2bc4f1">addAttribute</a>(edgeLabel, attr);</div>
|
|
506
|
+
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  edgeLabel = <a class="code" href="classSVF_1_1GrammarBase.html#af418e1033618da75e974a04ee1d7e275">CFGrammar::getAttributedKind</a>(attr, edgeLabel);</div>
|
|
507
|
+
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), edgeLabel);</div>
|
|
508
|
+
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> label = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a>[edge->getEdgeKind()];</div>
|
|
509
|
+
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  label.append(<span class="stringliteral">"bar"</span>); <span class="comment">// for example Gep_i should be Gepbar_i, not Gep_ibar</span></div>
|
|
510
|
+
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1GrammarBase.html#af418e1033618da75e974a04ee1d7e275">CFGrammar::getAttributedKind</a>(attr, <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label]));</div>
|
|
511
|
+
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af05b577fbb64082d80ca4cfa2e2bc4f1">addAttribute</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label], attr);</div>
|
|
512
|
+
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  }</div>
|
|
513
|
+
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <span class="keywordflow">else</span></div>
|
|
514
|
+
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  {</div>
|
|
515
|
+
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), edgeLabel);</div>
|
|
516
|
+
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  <a class="code" href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">std::string</a> label = <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">kindToLabelMap</a>[edge->getEdgeKind()];</div>
|
|
517
|
+
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  label.append(<span class="stringliteral">"bar"</span>);</div>
|
|
518
|
+
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1CFLGraph.html#a9eea8083dbeaf898948595b1d75cfee2">addCFLEdge</a>(<a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getDstID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>-><a class="code" href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">getGNode</a>(edge->getSrcID()), <a class="code" href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">labelToKindMap</a>[label]);</div>
|
|
519
|
+
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>  }</div>
|
|
520
|
+
<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  }</div>
|
|
521
|
+
<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  }</div>
|
|
522
|
+
<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  }</div>
|
|
523
|
+
<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  <span class="keywordflow">return</span> <a class="code" href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">cflGraph</a>;</div>
|
|
524
|
+
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> }</div>
|
|
522
525
|
</div><!-- fragment -->
|
|
523
526
|
</div>
|
|
524
527
|
</div>
|
|
@@ -597,21 +600,21 @@ Additional Inherited Members</h2></td></tr>
|
|
|
597
600
|
<div class="ttc" id="aclassSVF_1_1GenericEdge_html_aab8892b73370c32b48621cd1d0cce614"><div class="ttname"><a href="classSVF_1_1GenericEdge.html#aab8892b73370c32b48621cd1d0cce614">SVF::GenericEdge::GEdgeFlag</a></div><div class="ttdeci">u64_t GEdgeFlag</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00061">GenericGraph.h:61</a></div></div>
|
|
598
601
|
<div class="ttc" id="acJSON_8h_html_ad4c68ea99a26b0a98ad9a79982960458"><div class="ttname"><a href="cJSON_8h.html#ad4c68ea99a26b0a98ad9a79982960458">string</a></div><div class="ttdeci">const char *const string</div><div class="ttdef"><b>Definition:</b> <a href="cJSON_8h_source.html#l00172">cJSON.h:172</a></div></div>
|
|
599
602
|
<div class="ttc" id="aclassSVF_1_1ConstraintEdge_html_a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375ae5df3ce07dd670b48916f7b8ab33ae5a">SVF::ConstraintEdge::VariantGep</a></div><div class="ttdeci">@ VariantGep</div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00056">ConsGEdge.h:56</a></div></div>
|
|
600
|
-
<div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_a1ecf9cad8707ba07d3e44624ea273f2f"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">SVF::CFLGraphBuilder::labelToKindMap</a></div><div class="ttdeci">Map< std::string, Kind > labelToKindMap</div><div class="ttdoc">Maps to maintain mapping between labels and kinds.</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8h_source.html#
|
|
603
|
+
<div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_a1ecf9cad8707ba07d3e44624ea273f2f"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#a1ecf9cad8707ba07d3e44624ea273f2f">SVF::CFLGraphBuilder::labelToKindMap</a></div><div class="ttdeci">Map< std::string, Kind > labelToKindMap</div><div class="ttdoc">Maps to maintain mapping between labels and kinds.</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8h_source.html#l00059">CFLGraphBuilder.h:59</a></div></div>
|
|
601
604
|
<div class="ttc" id="aclassSVF_1_1ConstraintEdge_html_a663af27955ba0c545f34fa1f076b7375a20d6a102ddc06257a822ffffcc5a3b47"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a20d6a102ddc06257a822ffffcc5a3b47">SVF::ConstraintEdge::Store</a></div><div class="ttdeci">@ Store</div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00056">ConsGEdge.h:56</a></div></div>
|
|
602
605
|
<div class="ttc" id="aclassSVF_1_1ConstraintEdge_html_a663af27955ba0c545f34fa1f076b7375a1bdeb9a06641d16b43391120812b40b2"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375a1bdeb9a06641d16b43391120812b40b2">SVF::ConstraintEdge::Load</a></div><div class="ttdeci">@ Load</div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00056">ConsGEdge.h:56</a></div></div>
|
|
603
606
|
<div class="ttc" id="aclassSVF_1_1GenericGraph_html_a43c9c773bfa17abf481c33073e30d01b"><div class="ttname"><a href="classSVF_1_1GenericGraph.html#a43c9c773bfa17abf481c33073e30d01b">SVF::GenericGraph::getGNode</a></div><div class="ttdeci">NodeType * getGNode(NodeID id) const</div><div class="ttdoc">Get a node.</div><div class="ttdef"><b>Definition:</b> <a href="GenericGraph_8h_source.html#l00406">GenericGraph.h:406</a></div></div>
|
|
604
607
|
<div class="ttc" id="aclassSVF_1_1NormalGepCGEdge_html_a79033645683ead9a7404cd35fd936092"><div class="ttname"><a href="classSVF_1_1NormalGepCGEdge.html#a79033645683ead9a7404cd35fd936092">SVF::NormalGepCGEdge::classof</a></div><div class="ttdeci">static bool classof(const NormalGepCGEdge *)</div><div class="ttdoc">Methods for support type inquiry through isa, cast, and dyn_cast:</div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00277">ConsGEdge.h:277</a></div></div>
|
|
605
|
-
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_a7aef5c42fbd8a62dd4a541cc0e8e8187"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">SVF::GrammarBase::Kind</a></div><div class="ttdeci">u32_t Kind</div><div class="ttdef"><b>Definition:</b> <a href="
|
|
606
|
-
<div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_af034366ce280120e5cd1a5685894e9ac"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">SVF::CFLGraphBuilder::cflGraph</a></div><div class="ttdeci">CFLGraph * cflGraph</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8h_source.html#
|
|
607
|
-
<div class="ttc" id="
|
|
608
|
-
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_ab070e5449d26e347b957d8b994d0303f"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#ab070e5449d26e347b957d8b994d0303f">SVF::GrammarBase::Attribute</a></div><div class="ttdeci">u32_t Attribute</div><div class="ttdef"><b>Definition:</b> <a href="CFLGrammar_8h_source.html#l00040">CFLGrammar.h:40</a></div></div>
|
|
608
|
+
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_a7aef5c42fbd8a62dd4a541cc0e8e8187"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a7aef5c42fbd8a62dd4a541cc0e8e8187">SVF::GrammarBase::Kind</a></div><div class="ttdeci">u32_t Kind</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00039">CFGrammar.h:39</a></div></div>
|
|
609
|
+
<div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_af034366ce280120e5cd1a5685894e9ac"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#af034366ce280120e5cd1a5685894e9ac">SVF::CFLGraphBuilder::cflGraph</a></div><div class="ttdeci">CFLGraph * cflGraph</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8h_source.html#l00066">CFLGraphBuilder.h:66</a></div></div>
|
|
610
|
+
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_ab070e5449d26e347b957d8b994d0303f"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#ab070e5449d26e347b957d8b994d0303f">SVF::GrammarBase::Attribute</a></div><div class="ttdeci">u32_t Attribute</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00040">CFGrammar.h:40</a></div></div>
|
|
609
611
|
<div class="ttc" id="aclassSVF_1_1ConstraintEdge_html_a663af27955ba0c545f34fa1f076b7375aed68bc43e8aae49e8590e140eb0ffaf3"><div class="ttname"><a href="classSVF_1_1ConstraintEdge.html#a663af27955ba0c545f34fa1f076b7375aed68bc43e8aae49e8590e140eb0ffaf3">SVF::ConstraintEdge::Addr</a></div><div class="ttdeci">@ Addr</div><div class="ttdef"><b>Definition:</b> <a href="ConsGEdge_8h_source.html#l00056">ConsGEdge.h:56</a></div></div>
|
|
610
612
|
<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>
|
|
611
613
|
<div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_a01e5d31c43d40f8a518aa8d371b085d8"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#a01e5d31c43d40f8a518aa8d371b085d8">SVF::CFLGraphBuilder::buildlabelToKindMap</a></div><div class="ttdeci">void buildlabelToKindMap(GrammarBase *grammar)</div><div class="ttdoc">build label and kind connect from the grammar</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8cpp_source.html#l00054">CFLGraphBuilder.cpp:54</a></div></div>
|
|
612
|
-
<div class="ttc" id="
|
|
614
|
+
<div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_af05b577fbb64082d80ca4cfa2e2bc4f1"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#af05b577fbb64082d80ca4cfa2e2bc4f1">SVF::CFLGraphBuilder::addAttribute</a></div><div class="ttdeci">void addAttribute(CFGrammar::Kind kind, CFGrammar::Attribute attribute)</div><div class="ttdoc">Method to add an attribute to a specific kind.</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8cpp_source.html#l00037">CFLGraphBuilder.cpp:37</a></div></div>
|
|
615
|
+
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_af418e1033618da75e974a04ee1d7e275"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#af418e1033618da75e974a04ee1d7e275">SVF::GrammarBase::getAttributedKind</a></div><div class="ttdeci">static Kind getAttributedKind(Attribute attribute, Kind kind)</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00265">CFGrammar.h:265</a></div></div>
|
|
613
616
|
<div class="ttc" id="aclassSVF_1_1CFLGraph_html_a58b944d0f2c11868e17223acdb35f82c"><div class="ttname"><a href="classSVF_1_1CFLGraph.html#a58b944d0f2c11868e17223acdb35f82c">SVF::CFLGraph::addCFLNode</a></div><div class="ttdeci">virtual void addCFLNode(NodeID id, CFLNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraph_8cpp_source.html#l00042">CFLGraph.cpp:42</a></div></div>
|
|
614
|
-
<div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_a93b41c2f0eca82e6eaf49895b2b13a1e"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">SVF::CFLGraphBuilder::kindToLabelMap</a></div><div class="ttdeci">Map< Kind, std::string > kindToLabelMap</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8h_source.html#
|
|
617
|
+
<div class="ttc" id="aclassSVF_1_1CFLGraphBuilder_html_a93b41c2f0eca82e6eaf49895b2b13a1e"><div class="ttname"><a href="classSVF_1_1CFLGraphBuilder.html#a93b41c2f0eca82e6eaf49895b2b13a1e">SVF::CFLGraphBuilder::kindToLabelMap</a></div><div class="ttdeci">Map< Kind, std::string > kindToLabelMap</div><div class="ttdef"><b>Definition:</b> <a href="CFLGraphBuilder_8h_source.html#l00060">CFLGraphBuilder.h:60</a></div></div>
|
|
615
618
|
<!-- start footer part -->
|
|
616
619
|
<hr class="footer"/><address class="footer"><small>
|
|
617
620
|
Generated by  <a href="http://www.doxygen.org/index.html">
|