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
|
@@ -74,7 +74,7 @@ $(function() {
|
|
|
74
74
|
</div><!--header-->
|
|
75
75
|
<div class="contents">
|
|
76
76
|
|
|
77
|
-
<p><code>#include <<a class="el" href="
|
|
77
|
+
<p><code>#include <<a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>></code></p>
|
|
78
78
|
<table class="memberdecls">
|
|
79
79
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
80
80
|
Public Member Functions</h2></td></tr>
|
|
@@ -117,7 +117,7 @@ Public Attributes</h2></td></tr>
|
|
|
117
117
|
</table>
|
|
118
118
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
119
119
|
<div class="textblock">
|
|
120
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
120
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00042">42</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
121
121
|
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
122
122
|
<a id="ad8268060892644d15b13f84124bc1eaf"></a>
|
|
123
123
|
<h2 class="memtitle"><span class="permalink"><a href="#ad8268060892644d15b13f84124bc1eaf">◆ </a></span>Symbol() <span class="overload">[1/2]</span></h2>
|
|
@@ -144,7 +144,7 @@ Public Attributes</h2></td></tr>
|
|
|
144
144
|
|
|
145
145
|
<p>Default Value for <a class="el" href="structSVF_1_1GrammarBase_1_1Symbol.html">Symbol</a> is 0. </p>
|
|
146
146
|
|
|
147
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
147
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00049">49</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
148
148
|
<div class="fragment"><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> : <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#aa60ddaabcb38b277d56b41bc9133ef71">kind</a>(0), <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#a756bed7c50c6d3251cc4832247c8691d">attribute</a>(0), <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#af26cd32a0c3b88aec053bec17519f942">variableAttribute</a>(0) {}</div>
|
|
149
149
|
</div><!-- fragment -->
|
|
150
150
|
</div>
|
|
@@ -175,7 +175,7 @@ Public Attributes</h2></td></tr>
|
|
|
175
175
|
|
|
176
176
|
<p>Contruct from u32_t move the bit to right field. </p>
|
|
177
177
|
|
|
178
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
178
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00052">52</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
179
179
|
<div class="fragment"><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> : <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#aa60ddaabcb38b277d56b41bc9133ef71">kind</a>(num & 0xFF), <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#a756bed7c50c6d3251cc4832247c8691d">attribute</a>((num >> 8 ) & 0xFFFF), <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#af26cd32a0c3b88aec053bec17519f942">variableAttribute</a>((num >> 24)) {}</div>
|
|
180
180
|
</div><!-- fragment -->
|
|
181
181
|
</div>
|
|
@@ -206,7 +206,7 @@ Public Attributes</h2></td></tr>
|
|
|
206
206
|
|
|
207
207
|
<p>Conversion of u32_t. </p>
|
|
208
208
|
|
|
209
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
209
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00055">55</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
210
210
|
<div class="fragment"><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  {</div>
|
|
211
211
|
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  static_assert(<span class="keyword">sizeof</span>(<span class="keyword">struct</span> <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#ad8268060892644d15b13f84124bc1eaf">Symbol</a>)==<span class="keyword">sizeof</span>(<a class="code" href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a>), <span class="stringliteral">"sizeof(struct Symbol)!=sizeof(u32_t)"</span>);</div>
|
|
212
212
|
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <a class="code" href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a> num = 0;</div>
|
|
@@ -241,7 +241,7 @@ Public Attributes</h2></td></tr>
|
|
|
241
241
|
</table>
|
|
242
242
|
</div><div class="memdoc">
|
|
243
243
|
|
|
244
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
244
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00065">65</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
245
245
|
<div class="fragment"><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  {</div>
|
|
246
246
|
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  static_assert(<span class="keyword">sizeof</span>(<span class="keyword">struct</span> <a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#ad8268060892644d15b13f84124bc1eaf">Symbol</a>)==<span class="keyword">sizeof</span>(<a class="code" href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a>), <span class="stringliteral">"sizeof(struct Symbol)!=sizeof(u32_t)"</span>);</div>
|
|
247
247
|
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <a class="code" href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a> num = 0;</div>
|
|
@@ -277,7 +277,7 @@ Public Attributes</h2></td></tr>
|
|
|
277
277
|
</table>
|
|
278
278
|
</div><div class="memdoc">
|
|
279
279
|
|
|
280
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
280
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00104">104</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
281
281
|
<div class="fragment"><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  {</div>
|
|
282
282
|
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  <span class="keywordflow">return</span> ! (*<span class="keyword">this</span> == s) ;</div>
|
|
283
283
|
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  }</div>
|
|
@@ -308,7 +308,7 @@ Public Attributes</h2></td></tr>
|
|
|
308
308
|
</table>
|
|
309
309
|
</div><div class="memdoc">
|
|
310
310
|
|
|
311
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
311
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00075">75</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
312
312
|
<div class="fragment"><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  {</div>
|
|
313
313
|
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>(*<span class="keyword">this</span>) < <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>(rhs);</div>
|
|
314
314
|
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  }</div>
|
|
@@ -339,7 +339,7 @@ Public Attributes</h2></td></tr>
|
|
|
339
339
|
</table>
|
|
340
340
|
</div><div class="memdoc">
|
|
341
341
|
|
|
342
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
342
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00080">80</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
343
343
|
<div class="fragment"><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  {</div>
|
|
344
344
|
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  this-><a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#aa60ddaabcb38b277d56b41bc9133ef71">kind</a> = <a class="code" href="classSVF_1_1GrammarBase.html#a9fd7f7c4dcb4c32bb410f3e0a6f3ad0d">EdgeKindMask</a> & i;</div>
|
|
345
345
|
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  this-><a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#a756bed7c50c6d3251cc4832247c8691d">attribute</a> = i >> <a class="code" href="classSVF_1_1GrammarBase.html#adc1413dc2e875a6e74bdb5b985cdd39f">EdgeKindMaskBits</a>;</div>
|
|
@@ -372,7 +372,7 @@ Public Attributes</h2></td></tr>
|
|
|
372
372
|
</table>
|
|
373
373
|
</div><div class="memdoc">
|
|
374
374
|
|
|
375
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
375
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00087">87</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
376
376
|
<div class="fragment"><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  {</div>
|
|
377
377
|
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  this-><a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#aa60ddaabcb38b277d56b41bc9133ef71">kind</a> = num & 0xFF;</div>
|
|
378
378
|
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  this-><a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#a756bed7c50c6d3251cc4832247c8691d">attribute</a> = (num >> 8 ) & 0xFFFF;</div>
|
|
@@ -405,7 +405,7 @@ Public Attributes</h2></td></tr>
|
|
|
405
405
|
</table>
|
|
406
406
|
</div><div class="memdoc">
|
|
407
407
|
|
|
408
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
408
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00114">114</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
409
409
|
<div class="fragment"><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  {</div>
|
|
410
410
|
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <span class="keywordflow">return</span> (this-><a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#aa60ddaabcb38b277d56b41bc9133ef71">kind</a> == k);</div>
|
|
411
411
|
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  }</div>
|
|
@@ -436,7 +436,7 @@ Public Attributes</h2></td></tr>
|
|
|
436
436
|
</table>
|
|
437
437
|
</div><div class="memdoc">
|
|
438
438
|
|
|
439
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
439
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00094">94</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
440
440
|
<div class="fragment"><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  {</div>
|
|
441
441
|
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  <span class="keywordflow">return</span> ((this-><a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#aa60ddaabcb38b277d56b41bc9133ef71">kind</a> == s.kind) && (this->attribute == s.attribute) && (this->variableAttribute == s.variableAttribute));</div>
|
|
442
442
|
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  }</div>
|
|
@@ -467,7 +467,7 @@ Public Attributes</h2></td></tr>
|
|
|
467
467
|
</table>
|
|
468
468
|
</div><div class="memdoc">
|
|
469
469
|
|
|
470
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
470
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00099">99</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
471
471
|
<div class="fragment"><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  {</div>
|
|
472
472
|
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keywordflow">return</span> ((<a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#aa60ddaabcb38b277d56b41bc9133ef71">kind</a> == s.kind) && (<a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#a756bed7c50c6d3251cc4832247c8691d">attribute</a> == s.attribute) && (<a class="code" href="structSVF_1_1GrammarBase_1_1Symbol.html#af26cd32a0c3b88aec053bec17519f942">variableAttribute</a> == s.variableAttribute));</div>
|
|
473
473
|
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  }</div>
|
|
@@ -498,7 +498,7 @@ Public Attributes</h2></td></tr>
|
|
|
498
498
|
</table>
|
|
499
499
|
</div><div class="memdoc">
|
|
500
500
|
|
|
501
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
501
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00109">109</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
502
502
|
<div class="fragment"><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  {</div>
|
|
503
503
|
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>  <span class="keywordflow">return</span> <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>(*<span class="keyword">this</span>) == <a class="code" href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">u32_t</a>(i);</div>
|
|
504
504
|
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  }</div>
|
|
@@ -518,7 +518,7 @@ Public Attributes</h2></td></tr>
|
|
|
518
518
|
</table>
|
|
519
519
|
</div><div class="memdoc">
|
|
520
520
|
|
|
521
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
521
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00045">45</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
522
522
|
|
|
523
523
|
</div>
|
|
524
524
|
</div>
|
|
@@ -534,7 +534,7 @@ Public Attributes</h2></td></tr>
|
|
|
534
534
|
</table>
|
|
535
535
|
</div><div class="memdoc">
|
|
536
536
|
|
|
537
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
537
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00044">44</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
538
538
|
|
|
539
539
|
</div>
|
|
540
540
|
</div>
|
|
@@ -550,22 +550,22 @@ Public Attributes</h2></td></tr>
|
|
|
550
550
|
</table>
|
|
551
551
|
</div><div class="memdoc">
|
|
552
552
|
|
|
553
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
553
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00046">46</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
554
554
|
|
|
555
555
|
</div>
|
|
556
556
|
</div>
|
|
557
557
|
<hr/>The documentation for this struct was generated from the following file:<ul>
|
|
558
|
-
<li>/home/runner/work/SVF/SVF/svf/include/CFL/<a class="el" href="
|
|
558
|
+
<li>/home/runner/work/SVF/SVF/svf/include/CFL/<a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a></li>
|
|
559
559
|
</ul>
|
|
560
560
|
</div><!-- contents -->
|
|
561
561
|
<div class="ttc" id="aCommandLine_8h_html_a2429346d37bd4c40889bd7c6d319d9da"><div class="ttname"><a href="CommandLine_8h.html#a2429346d37bd4c40889bd7c6d319d9da">u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="CommandLine_8h_source.html#l00018">CommandLine.h:18</a></div></div>
|
|
562
|
-
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_af26cd32a0c3b88aec053bec17519f942"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#af26cd32a0c3b88aec053bec17519f942">SVF::GrammarBase::Symbol::variableAttribute</a></div><div class="ttdeci">VariableAttribute variableAttribute</div><div class="ttdef"><b>Definition:</b> <a href="
|
|
563
|
-
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_adc1413dc2e875a6e74bdb5b985cdd39f"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#adc1413dc2e875a6e74bdb5b985cdd39f">SVF::GrammarBase::EdgeKindMaskBits</a></div><div class="ttdeci">static constexpr unsigned char EdgeKindMaskBits</div><div class="ttdoc">We use the lower 8 bits to denote edge kind.</div><div class="ttdef"><b>Definition:</b> <a href="
|
|
564
|
-
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_a756bed7c50c6d3251cc4832247c8691d"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#a756bed7c50c6d3251cc4832247c8691d">SVF::GrammarBase::Symbol::attribute</a></div><div class="ttdeci">Attribute attribute</div><div class="ttdef"><b>Definition:</b> <a href="
|
|
565
|
-
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_a9fd7f7c4dcb4c32bb410f3e0a6f3ad0d"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a9fd7f7c4dcb4c32bb410f3e0a6f3ad0d">SVF::GrammarBase::EdgeKindMask</a></div><div class="ttdeci">static constexpr u64_t EdgeKindMask</div><div class="ttdef"><b>Definition:</b> <a href="
|
|
566
|
-
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_ad8268060892644d15b13f84124bc1eaf"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#ad8268060892644d15b13f84124bc1eaf">SVF::GrammarBase::Symbol::Symbol</a></div><div class="ttdeci">Symbol()</div><div class="ttdoc">Default Value for Symbol is 0.</div><div class="ttdef"><b>Definition:</b> <a href="
|
|
567
|
-
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_aa60ddaabcb38b277d56b41bc9133ef71"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#aa60ddaabcb38b277d56b41bc9133ef71">SVF::GrammarBase::Symbol::kind</a></div><div class="ttdeci">Kind kind</div><div class="ttdef"><b>Definition:</b> <a href="
|
|
568
|
-
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_a2dcb7647b5be7b3ab1dad2c494828854"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a2dcb7647b5be7b3ab1dad2c494828854">SVF::GrammarBase::AttributedKindMaskBits</a></div><div class="ttdeci">static constexpr unsigned char AttributedKindMaskBits</div><div class="ttdoc">We use the lower 24 bits to denote attributed kind.</div><div class="ttdef"><b>Definition:</b> <a href="
|
|
562
|
+
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_af26cd32a0c3b88aec053bec17519f942"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#af26cd32a0c3b88aec053bec17519f942">SVF::GrammarBase::Symbol::variableAttribute</a></div><div class="ttdeci">VariableAttribute variableAttribute</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00046">CFGrammar.h:46</a></div></div>
|
|
563
|
+
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_adc1413dc2e875a6e74bdb5b985cdd39f"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#adc1413dc2e875a6e74bdb5b985cdd39f">SVF::GrammarBase::EdgeKindMaskBits</a></div><div class="ttdeci">static constexpr unsigned char EdgeKindMaskBits</div><div class="ttdoc">We use the lower 8 bits to denote edge kind.</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00276">CFGrammar.h:276</a></div></div>
|
|
564
|
+
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_a756bed7c50c6d3251cc4832247c8691d"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#a756bed7c50c6d3251cc4832247c8691d">SVF::GrammarBase::Symbol::attribute</a></div><div class="ttdeci">Attribute attribute</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00045">CFGrammar.h:45</a></div></div>
|
|
565
|
+
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_a9fd7f7c4dcb4c32bb410f3e0a6f3ad0d"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a9fd7f7c4dcb4c32bb410f3e0a6f3ad0d">SVF::GrammarBase::EdgeKindMask</a></div><div class="ttdeci">static constexpr u64_t EdgeKindMask</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00278">CFGrammar.h:278</a></div></div>
|
|
566
|
+
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_ad8268060892644d15b13f84124bc1eaf"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#ad8268060892644d15b13f84124bc1eaf">SVF::GrammarBase::Symbol::Symbol</a></div><div class="ttdeci">Symbol()</div><div class="ttdoc">Default Value for Symbol is 0.</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00049">CFGrammar.h:49</a></div></div>
|
|
567
|
+
<div class="ttc" id="astructSVF_1_1GrammarBase_1_1Symbol_html_aa60ddaabcb38b277d56b41bc9133ef71"><div class="ttname"><a href="structSVF_1_1GrammarBase_1_1Symbol.html#aa60ddaabcb38b277d56b41bc9133ef71">SVF::GrammarBase::Symbol::kind</a></div><div class="ttdeci">Kind kind</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00044">CFGrammar.h:44</a></div></div>
|
|
568
|
+
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_a2dcb7647b5be7b3ab1dad2c494828854"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a2dcb7647b5be7b3ab1dad2c494828854">SVF::GrammarBase::AttributedKindMaskBits</a></div><div class="ttdeci">static constexpr unsigned char AttributedKindMaskBits</div><div class="ttdoc">We use the lower 24 bits to denote attributed kind.</div><div class="ttdef"><b>Definition:</b> <a href="CFGrammar_8h_source.html#l00277">CFGrammar.h:277</a></div></div>
|
|
569
569
|
<div class="ttc" id="anamespaceSVF_html_ad42bff8d0a7d60a085aa32d10f4955af"><div class="ttname"><a href="namespaceSVF.html#ad42bff8d0a7d60a085aa32d10f4955af">SVF::u32_t</a></div><div class="ttdeci">unsigned u32_t</div><div class="ttdef"><b>Definition:</b> <a href="SVFType_8h_source.html#l00051">SVFType.h:51</a></div></div>
|
|
570
570
|
<!-- start footer part -->
|
|
571
571
|
<hr class="footer"/><address class="footer"><small>
|
|
@@ -73,7 +73,7 @@ $(function() {
|
|
|
73
73
|
</div><!--header-->
|
|
74
74
|
<div class="contents">
|
|
75
75
|
|
|
76
|
-
<p><code>#include <<a class="el" href="
|
|
76
|
+
<p><code>#include <<a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>></code></p>
|
|
77
77
|
<table class="memberdecls">
|
|
78
78
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
79
79
|
Public Member Functions</h2></td></tr>
|
|
@@ -82,7 +82,7 @@ Public Member Functions</h2></td></tr>
|
|
|
82
82
|
</table>
|
|
83
83
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
84
84
|
<div class="textblock">
|
|
85
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
85
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00131">131</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
86
86
|
</div><h2 class="groupheader">Member Function Documentation</h2>
|
|
87
87
|
<a id="a321f570e916c56fc0b9789662069481e"></a>
|
|
88
88
|
<h2 class="memtitle"><span class="permalink"><a href="#a321f570e916c56fc0b9789662069481e">◆ </a></span>operator()()</h2>
|
|
@@ -108,7 +108,7 @@ Public Member Functions</h2></td></tr>
|
|
|
108
108
|
</table>
|
|
109
109
|
</div><div class="memdoc">
|
|
110
110
|
|
|
111
|
-
<p class="definition">Definition at line <a class="el" href="
|
|
111
|
+
<p class="definition">Definition at line <a class="el" href="CFGrammar_8h_source.html#l00133">133</a> of file <a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a>.</p>
|
|
112
112
|
<div class="fragment"><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  {</div>
|
|
113
113
|
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <span class="keywordtype">size_t</span> h = v.size();</div>
|
|
114
114
|
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  </div>
|
|
@@ -124,7 +124,7 @@ Public Member Functions</h2></td></tr>
|
|
|
124
124
|
</div>
|
|
125
125
|
</div>
|
|
126
126
|
<hr/>The documentation for this struct was generated from the following file:<ul>
|
|
127
|
-
<li>/home/runner/work/SVF/SVF/svf/include/CFL/<a class="el" href="
|
|
127
|
+
<li>/home/runner/work/SVF/SVF/svf/include/CFL/<a class="el" href="CFGrammar_8h_source.html">CFGrammar.h</a></li>
|
|
128
128
|
</ul>
|
|
129
129
|
</div><!-- contents -->
|
|
130
130
|
<div class="ttc" id="aclassSVF_1_1GrammarBase_html_a760208fb9737e766deb79d593ab86a3c"><div class="ttname"><a href="classSVF_1_1GrammarBase.html#a760208fb9737e766deb79d593ab86a3c">SVF::GrammarBase::Symbol</a></div><div class="ttdeci">struct SVF::GrammarBase::Symbol Symbol</div></div>
|
|
@@ -86,7 +86,7 @@ Public Member Functions</h2></td></tr>
|
|
|
86
86
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
87
87
|
<div class="textblock"><p>Specialise hash for ConZ3Expr. </p>
|
|
88
88
|
|
|
89
|
-
<p class="definition">Definition at line <a class="el" href="BoundedZ3Expr_8h_source.html#
|
|
89
|
+
<p class="definition">Definition at line <a class="el" href="BoundedZ3Expr_8h_source.html#l00384">384</a> of file <a class="el" href="BoundedZ3Expr_8h_source.html">BoundedZ3Expr.h</a>.</p>
|
|
90
90
|
</div><h2 class="groupheader">Member Function Documentation</h2>
|
|
91
91
|
<a id="a232e38e5365af047f57631b121a04e66"></a>
|
|
92
92
|
<h2 class="memtitle"><span class="permalink"><a href="#a232e38e5365af047f57631b121a04e66">◆ </a></span>operator()()</h2>
|
|
@@ -112,10 +112,10 @@ Public Member Functions</h2></td></tr>
|
|
|
112
112
|
</table>
|
|
113
113
|
</div><div class="memdoc">
|
|
114
114
|
|
|
115
|
-
<p class="definition">Definition at line <a class="el" href="BoundedZ3Expr_8h_source.html#
|
|
116
|
-
<div class="fragment"><div class="line"><a name="
|
|
117
|
-
<div class="line"><a name="
|
|
118
|
-
<div class="line"><a name="
|
|
115
|
+
<p class="definition">Definition at line <a class="el" href="BoundedZ3Expr_8h_source.html#l00386">386</a> of file <a class="el" href="BoundedZ3Expr_8h_source.html">BoundedZ3Expr.h</a>.</p>
|
|
116
|
+
<div class="fragment"><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  {</div>
|
|
117
|
+
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>  <span class="keywordflow">return</span> z3Expr.<a class="code" href="classSVF_1_1Z3Expr.html#a631cb7cee0e1f9b7204b9293f4e516a9">hash</a>();</div>
|
|
118
|
+
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  }</div>
|
|
119
119
|
</div><!-- fragment -->
|
|
120
120
|
</div>
|
|
121
121
|
</div>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "svf-tools",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.754",
|
|
4
4
|
"description": "* <b>[TypeClone](https://github.com/SVF-tools/SVF/wiki/TypeClone) published in our [ECOOP paper](https://yuleisui.github.io/publications/ecoop20.pdf) is now available in SVF </b> * <b>SVF now uses a single script for its build. Just type [`source ./build.sh`](https://github.com/SVF-tools/SVF/blob/master/build.sh) in your terminal, that's it!</b> * <b>SVF now supports LLVM-10.0.0! </b> * <b>We thank [bsauce](https://github.com/bsauce) for writing a user manual of SVF ([link1](https://www.jianshu.com/p/068a08ec749c) and [link2](https://www.jianshu.com/p/777c30d4240e)) in Chinese </b> * <b>SVF now supports LLVM-9.0.0 (Thank [Byoungyoung Lee](https://github.com/SVF-tools/SVF/issues/142) for his help!). </b> * <b>SVF now supports a set of [field-sensitive pointer analyses](https://yuleisui.github.io/publications/sas2019a.pdf). </b> * <b>[Use SVF as an external lib](https://github.com/SVF-tools/SVF/wiki/Using-SVF-as-a-lib-in-your-own-tool) for your own project (Contributed by [Hongxu Chen](https://github.com/HongxuChen)). </b> * <b>SVF now supports LLVM-7.0.0. </b> * <b>SVF now supports Docker. [Try SVF in Docker](https://github.com/SVF-tools/SVF/wiki/Try-SVF-in-Docker)! </b> * <b>SVF now supports [LLVM-6.0.0](https://github.com/svf-tools/SVF/pull/38) (Contributed by [Jack Anthony](https://github.com/jackanth)). </b> * <b>SVF now supports [LLVM-4.0.0](https://github.com/svf-tools/SVF/pull/23) (Contributed by Jared Carlson. Thank [Jared](https://github.com/jcarlson23) and [Will](https://github.com/dtzWill) for their in-depth [discussions](https://github.com/svf-tools/SVF/pull/18) about updating SVF!) </b> * <b>SVF now supports analysis for C++ programs.</b> <br />",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -29,6 +29,7 @@
|
|
|
29
29
|
|
|
30
30
|
#ifndef SVF_BOUNDEDZ3EXPR_H
|
|
31
31
|
#define SVF_BOUNDEDZ3EXPR_H
|
|
32
|
+
#define MaxBvLen 64
|
|
32
33
|
|
|
33
34
|
#include "Util/Z3Expr.h"
|
|
34
35
|
|
|
@@ -248,20 +249,17 @@ public:
|
|
|
248
249
|
|
|
249
250
|
friend BoundedZ3Expr operator^(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
|
|
250
251
|
{
|
|
251
|
-
|
|
252
|
-
return bv2int(int2bv(maxBvLen, lhs.getExpr()) ^ int2bv(maxBvLen, rhs.getExpr()), true);
|
|
252
|
+
return bv2int(int2bv(MaxBvLen, lhs.getExpr()) ^ int2bv(MaxBvLen, rhs.getExpr()), true);
|
|
253
253
|
}
|
|
254
254
|
|
|
255
255
|
friend BoundedZ3Expr operator&(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
|
|
256
256
|
{
|
|
257
|
-
|
|
258
|
-
return bv2int(int2bv(maxBvLen, lhs.getExpr()) & int2bv(maxBvLen, rhs.getExpr()), true);
|
|
257
|
+
return bv2int(int2bv(MaxBvLen, lhs.getExpr()) & int2bv(MaxBvLen, rhs.getExpr()), true);
|
|
259
258
|
}
|
|
260
259
|
|
|
261
260
|
friend BoundedZ3Expr operator|(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
|
|
262
261
|
{
|
|
263
|
-
|
|
264
|
-
return bv2int(int2bv(maxBvLen, lhs.getExpr()) | int2bv(maxBvLen, rhs.getExpr()), true);
|
|
262
|
+
return bv2int(int2bv(MaxBvLen, lhs.getExpr()) | int2bv(MaxBvLen, rhs.getExpr()), true);
|
|
265
263
|
}
|
|
266
264
|
|
|
267
265
|
friend BoundedZ3Expr ashr(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
|
|
@@ -274,8 +272,7 @@ public:
|
|
|
274
272
|
return ite(lhs.getExpr() >= 0, BoundedZ3Expr(0), BoundedZ3Expr(-1));
|
|
275
273
|
else
|
|
276
274
|
{
|
|
277
|
-
|
|
278
|
-
return bv2int(ashr(int2bv(maxBvLen, lhs.getExpr()), int2bv(maxBvLen, rhs.getExpr())), true);
|
|
275
|
+
return bv2int(ashr(int2bv(MaxBvLen, lhs.getExpr()), int2bv(MaxBvLen, rhs.getExpr())), true);
|
|
279
276
|
}
|
|
280
277
|
}
|
|
281
278
|
|
|
@@ -289,15 +286,13 @@ public:
|
|
|
289
286
|
return ite(lhs.getExpr() >= 0, plus_infinity(), minus_infinity());
|
|
290
287
|
else
|
|
291
288
|
{
|
|
292
|
-
|
|
293
|
-
return bv2int(shl(int2bv(maxBvLen, lhs.getExpr()), int2bv(maxBvLen, rhs.getExpr())), true);
|
|
289
|
+
return bv2int(shl(int2bv(MaxBvLen, lhs.getExpr()), int2bv(MaxBvLen, rhs.getExpr())), true);
|
|
294
290
|
}
|
|
295
291
|
}
|
|
296
292
|
|
|
297
293
|
friend BoundedZ3Expr lshr(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
|
|
298
294
|
{
|
|
299
|
-
|
|
300
|
-
return bv2int(lshr(int2bv(maxBvLen, lhs.getExpr()), int2bv(maxBvLen, rhs.getExpr())), true);
|
|
295
|
+
return bv2int(lshr(int2bv(MaxBvLen, lhs.getExpr()), int2bv(MaxBvLen, rhs.getExpr())), true);
|
|
301
296
|
}
|
|
302
297
|
|
|
303
298
|
friend BoundedZ3Expr int2bv(u32_t n, const BoundedZ3Expr &e)
|
|
@@ -394,3 +389,4 @@ struct std::hash<SVF::BoundedZ3Expr>
|
|
|
394
389
|
}
|
|
395
390
|
};
|
|
396
391
|
#endif //SVF_BOUNDEDZ3EXPR_H
|
|
392
|
+
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
#ifndef INCLUDE_CFL_CFGNORMALIZER_H_
|
|
31
31
|
#define INCLUDE_CFL_CFGNORMALIZER_H_
|
|
32
32
|
|
|
33
|
-
#include "
|
|
33
|
+
#include "CFGrammar.h"
|
|
34
34
|
|
|
35
35
|
namespace SVF
|
|
36
36
|
{
|
|
@@ -53,30 +53,30 @@ public:
|
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
/// Binary Normal Form(BNF) normalization with variable attribute expanded
|
|
56
|
-
|
|
56
|
+
CFGrammar* normalize(GrammarBase *generalGrammar);
|
|
57
57
|
|
|
58
58
|
/// Expand every variable attribute in rawProductions of grammarbase
|
|
59
|
-
|
|
59
|
+
CFGrammar* fillAttribute(CFGrammar *grammar, const Map<CFGrammar::Kind, Set<CFGrammar::Attribute>>& kindToAttrsMap);
|
|
60
60
|
|
|
61
61
|
private:
|
|
62
62
|
/// Add nonterminal to tranfer long rules to binary rules
|
|
63
|
-
void ebnf_bin(
|
|
63
|
+
void ebnf_bin(CFGrammar *grammar);
|
|
64
64
|
|
|
65
|
-
void ebnfSignReplace(char sign,
|
|
65
|
+
void ebnfSignReplace(char sign, CFGrammar *grammar);
|
|
66
66
|
|
|
67
|
-
void barReplace(
|
|
67
|
+
void barReplace(CFGrammar *grammar);
|
|
68
68
|
|
|
69
|
-
void insertToCFLGrammar(
|
|
69
|
+
void insertToCFLGrammar(CFGrammar *grammar, GrammarBase::Production &prod);
|
|
70
70
|
|
|
71
|
-
int ebnfBracketMatch(GrammarBase::Production& prod, int i,
|
|
71
|
+
int ebnfBracketMatch(GrammarBase::Production& prod, int i, CFGrammar *grammar) ;
|
|
72
72
|
|
|
73
73
|
GrammarBase::Symbol check_head(GrammarBase::SymbolMap<GrammarBase::Symbol, GrammarBase::Productions>& grammar, GrammarBase::Production& rule);
|
|
74
74
|
|
|
75
|
-
void strTrans(std::string strPro,
|
|
75
|
+
void strTrans(std::string strPro, CFGrammar *grammar, GrammarBase::Production& normalProd);
|
|
76
76
|
|
|
77
|
-
void getFilledProductions(GrammarBase::Production &prod,const NodeSet& nodeSet,
|
|
77
|
+
void getFilledProductions(GrammarBase::Production &prod,const NodeSet& nodeSet, CFGrammar *grammar, GrammarBase::Productions& normalProds);
|
|
78
78
|
|
|
79
|
-
void removeFirstSymbol(
|
|
79
|
+
void removeFirstSymbol(CFGrammar *grammar);
|
|
80
80
|
};
|
|
81
81
|
|
|
82
82
|
} // End namespace SVF
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//===-----
|
|
1
|
+
//===----- CFGrammar.h -- Context-free grammar --------------------------//
|
|
2
2
|
//
|
|
3
3
|
// SVF: Static Value-Flow Analysis
|
|
4
4
|
//
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
//===----------------------------------------------------------------------===//
|
|
22
22
|
|
|
23
23
|
/*
|
|
24
|
-
*
|
|
24
|
+
* CFGrammar.h
|
|
25
25
|
*
|
|
26
26
|
* Created on: March 5, 2022
|
|
27
27
|
* Author: Yulei Sui
|
|
@@ -287,15 +287,15 @@ private:
|
|
|
287
287
|
u32_t totalKind;
|
|
288
288
|
};
|
|
289
289
|
|
|
290
|
-
class
|
|
290
|
+
class CFGrammar : public GrammarBase
|
|
291
291
|
{
|
|
292
292
|
|
|
293
293
|
public:
|
|
294
|
-
|
|
294
|
+
CFGrammar();
|
|
295
295
|
|
|
296
296
|
/// Methods for support type inquiry through isa, cast, and dyn_cast:
|
|
297
297
|
//@{
|
|
298
|
-
static inline bool classof(const
|
|
298
|
+
static inline bool classof(const CFGrammar *)
|
|
299
299
|
{
|
|
300
300
|
return true;
|
|
301
301
|
}
|
|
@@ -112,8 +112,8 @@ public:
|
|
|
112
112
|
{
|
|
113
113
|
return false;
|
|
114
114
|
}
|
|
115
|
-
|
|
116
|
-
|
|
115
|
+
CFGrammar::Kind copyKind = grammar->strToKind("copy");
|
|
116
|
+
CFGrammar::Kind copybarKind = grammar->strToKind("copybar");
|
|
117
117
|
solver->pushIntoWorklist(graph->addCFLEdge(graph->getGNode(src),graph->getGNode(dst), copyKind));
|
|
118
118
|
solver->pushIntoWorklist(graph->addCFLEdge(graph->getGNode(dst),graph->getGNode(src), copybarKind));
|
|
119
119
|
return true;
|
|
@@ -92,7 +92,7 @@ public:
|
|
|
92
92
|
//@{
|
|
93
93
|
// Grammar
|
|
94
94
|
static double timeOfBuildCFLGrammar; // Time of building grammarBase from text file
|
|
95
|
-
static double timeOfNormalizeGrammar; // Time of normalizing grammarBase to
|
|
95
|
+
static double timeOfNormalizeGrammar; // Time of normalizing grammarBase to CFGrammar
|
|
96
96
|
// Graph
|
|
97
97
|
static double timeOfBuildCFLGraph; // Time of building CFLGraph
|
|
98
98
|
static double numOfTerminalEdges; // Number of terminal labeled edges
|
|
@@ -109,7 +109,7 @@ protected:
|
|
|
109
109
|
SVFIR* svfir;
|
|
110
110
|
CFLGraph* graph;
|
|
111
111
|
GrammarBase* grammarBase;
|
|
112
|
-
|
|
112
|
+
CFGrammar* grammar;
|
|
113
113
|
CFLSolver* solver;
|
|
114
114
|
};
|
|
115
115
|
|