From d3881b115cfc974bab3a43363c6ccaba9ad85c98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20B=C3=BChler?= <david.buhler@cea.fr> Date: Fri, 6 Sep 2019 10:24:04 +0200 Subject: [PATCH] [Eva] Removes an unused option and groups all options about the traces domain. --- src/plugins/value/value_parameters.ml | 52 +++++++++++--------------- src/plugins/value/value_parameters.mli | 11 +++--- 2 files changed, 27 insertions(+), 36 deletions(-) diff --git a/src/plugins/value/value_parameters.ml b/src/plugins/value/value_parameters.ml index c51fb40570e..118115fa8b5 100644 --- a/src/plugins/value/value_parameters.ml +++ b/src/plugins/value/value_parameters.ml @@ -233,6 +233,13 @@ module SignDomain = Domain_Parameter let default = false end) +module TracesDomain = Domain_Parameter + (struct + let option_name = "-eva-traces-domain" + let help = "Use a domain to record traces of Eva. Experimental." + let default = false + end) + module PrinterDomain = Domain_Parameter (struct let option_name = "-eva-printer-domain" @@ -275,28 +282,6 @@ module EqualityCallFunction = end) let () = add_precision_dep EqualityCallFunction.parameter -module TracesDomain = Domain_Parameter - (struct - let option_name = "-eva-traces-domain" - let help = "Use a domain to record traces of Eva. Experimental." - let default = false - end) - -module TracesUnrollLoop = Domain_Parameter - (struct - let option_name = "-eva-traces-unroll-loop" - let help = "Specify if the traces domain should unroll the loops." - let default = true - end) - -module TracesUnifyLoop = Domain_Parameter - (struct - let option_name = "-eva-traces-unify-loop" - let help = "Specify if all the instances of a loop should try to share theirs traces." - let default = false - end) - - let () = Parameter_customize.set_group domains module Numerors_Real_Size = Int @@ -329,15 +314,25 @@ let () = let () = add_precision_dep Numerors_Mode.parameter let () = Parameter_customize.set_group domains -module TracesStorage = +module TracesUnrollLoop = Bool (struct - let option_name = "-eva-traces-storage" - let help = "Stores the states of the traces domain during the \ - analysis." + let option_name = "-eva-traces-unroll-loop" + let help = "Specify if the traces domain should unroll the loops." let default = true end) -let () = add_precision_dep TracesStorage.parameter +let () = add_precision_dep TracesUnrollLoop.parameter + +let () = Parameter_customize.set_group domains +module TracesUnifyLoop = + Bool + (struct + let option_name = "-eva-traces-unify-loop" + let help = "Specify if all the instances of a loop should try \ + to share theirs traces." + let default = false + end) +let () = add_precision_dep TracesUnifyLoop.parameter let () = Parameter_customize.set_group domains module TracesDot = Empty_string @@ -347,7 +342,6 @@ module TracesDot = Empty_string let arg_name = "FILENAME" end) - let () = Parameter_customize.set_group domains module TracesProject = Bool (struct @@ -355,8 +349,6 @@ module TracesProject = Bool let help = "Try to convert the Cfg into a program in a new project." let default = false end) -let () = add_precision_dep TracesProject.parameter - (* -------------------------------------------------------------------------- *) (* --- Performance options --- *) diff --git a/src/plugins/value/value_parameters.mli b/src/plugins/value/value_parameters.mli index 5aa46bb0a03..dc958517ee4 100644 --- a/src/plugins/value/value_parameters.mli +++ b/src/plugins/value/value_parameters.mli @@ -38,8 +38,6 @@ module SignDomain: Parameter_sig.Bool module PrinterDomain: Parameter_sig.Bool module NumerorsDomain: Parameter_sig.Bool module TracesDomain: Parameter_sig.Bool -module TracesUnrollLoop: Parameter_sig.Bool -module TracesUnifyLoop: Parameter_sig.Bool module ApronOctagon: Parameter_sig.Bool module ApronBox: Parameter_sig.Bool @@ -52,15 +50,16 @@ module EqualityCallFunction: Parameter_sig.Map with type key = Cil_types.kernel_function and type value = string +module TracesUnrollLoop: Parameter_sig.Bool +module TracesUnifyLoop: Parameter_sig.Bool +module TracesDot: Parameter_sig.String +module TracesProject: Parameter_sig.Bool + module EqualityStorage: Parameter_sig.Bool module SymbolicLocsStorage: Parameter_sig.Bool module GaugesStorage: Parameter_sig.Bool module ApronStorage: Parameter_sig.Bool module BitwiseOffsmStorage: Parameter_sig.Bool -module TracesStorage: Parameter_sig.Bool -module TracesDot: Parameter_sig.String -module TracesProject: Parameter_sig.Bool - module AutomaticContextMaxDepth: Parameter_sig.Int module AutomaticContextMaxWidth: Parameter_sig.Int -- GitLab