Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
propagationParameters.ml1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78(**************************************************************************) (* *) (* This file is part of Frama-C. *) (* *) (* Copyright (C) 2007-2023 *) (* CEA (Commissariat à l'énergie atomique et aux énergies *) (* alternatives) *) (* *) (* you can redistribute it and/or modify it under the terms of the GNU *) (* Lesser General Public License as published by the Free Software *) (* Foundation, version 2.1. *) (* *) (* It is distributed in the hope that it will be useful, *) (* but WITHOUT ANY WARRANTY; without even the implied warranty of *) (* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *) (* GNU Lesser General Public License for more details. *) (* *) (* See the GNU Lesser General Public License version 2.1 *) (* for more details (enclosed in the file licenses/LGPLv2.1). *) (* *) (**************************************************************************) (** Constant Propagation *) include Plugin.Register (struct let name = "semantic constant folding" let shortname = "scf" let help = "propagates constants semantically" end) module SemanticConstFolding = False (struct let option_name = "-scf" let help = "pretty print a version of the source code where each constant expression is replaced by its value" end) let () = SemanticConstFolding.add_aliases ["-semantic-const-folding"] module SemanticConstFold = Fundec_set (struct let option_name = "-scf-fct" let arg_name = "f1, ..., fn" let help = "propagate constants only into functions f1,...,fn" end) let () = SemanticConstFold.add_aliases ["-semantic-const-fold"] module CastIntro = False (struct let option_name = "-scf-allow-cast" let help = "replace expressions by constants even when doing so \ requires a pointer cast" end) let () = CastIntro.add_aliases ["-cast-from-constant"] module ExpandLogicContext = False (struct let option_name = "-scf-logic" let help = "replace values from logical context and create corresponding variables (HIGHLY EXPERIMENTAL)" end) let () = ExpandLogicContext.add_aliases ["-semantic-const-fold-logic"] module Project_name = String (struct let option_name = "-scf-project-name" let default = "propagated" let arg_name = "" let help = "name of the generated project (default is `propagated`)" end) (* Local Variables: compile-command: "make -C ../../.." End: *)