[22/49] analyzer: params.def: new parameters

Message ID 1573867416-55618-23-git-send-email-dmalcolm@redhat.com
State New
Headers show
Series
  • RFC: Add a static analysis framework to GCC
Related show

Commit Message

David Malcolm Nov. 16, 2019, 1:23 a.m.
gcc/ChangeLog:
	* params.def (PARAM_ANALYZER_BB_EXPLOSION_FACTOR): New param.
	(PARAM_ANALYZER_MAX_ENODES_PER_PROGRAM_POINT): New param.
	(PARAM_ANALYZER_MAX_RECURSION_DEPTH): New param.
	(PARAM_ANALYZER_MIN_SNODES_FOR_CALL_SUMMARY): New param.
---
 gcc/params.def | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

-- 
1.8.5.3

Comments

Jeff Law Dec. 7, 2019, 2:49 p.m. | #1
On Fri, 2019-11-15 at 20:23 -0500, David Malcolm wrote:
> gcc/ChangeLog:

> 	* params.def (PARAM_ANALYZER_BB_EXPLOSION_FACTOR): New param.

> 	(PARAM_ANALYZER_MAX_ENODES_PER_PROGRAM_POINT): New param.

> 	(PARAM_ANALYZER_MAX_RECURSION_DEPTH): New param.

> 	(PARAM_ANALYZER_MIN_SNODES_FOR_CALL_SUMMARY): New param.

Doesn't this need a rethink/reimplementation after M. Liska's changes?

jeff
Eric Gallager Dec. 8, 2019, 5:42 a.m. | #2
On 12/7/19, Jeff Law <law@redhat.com> wrote:
> On Fri, 2019-11-15 at 20:23 -0500, David Malcolm wrote:

>> gcc/ChangeLog:

>> 	* params.def (PARAM_ANALYZER_BB_EXPLOSION_FACTOR): New param.

>> 	(PARAM_ANALYZER_MAX_ENODES_PER_PROGRAM_POINT): New param.

>> 	(PARAM_ANALYZER_MAX_RECURSION_DEPTH): New param.

>> 	(PARAM_ANALYZER_MIN_SNODES_FOR_CALL_SUMMARY): New param.

> Doesn't this need a rethink/reimplementation after M. Liska's changes?

>

> jeff

>

>


I think he did that in a followup patch from a later patchset...
David Malcolm Dec. 8, 2019, 2:34 p.m. | #3
On Sun, 2019-12-08 at 00:42 -0500, Eric Gallager wrote:
> On 12/7/19, Jeff Law <law@redhat.com> wrote:

> > On Fri, 2019-11-15 at 20:23 -0500, David Malcolm wrote:

> > > gcc/ChangeLog:

> > > 	* params.def (PARAM_ANALYZER_BB_EXPLOSION_FACTOR): New param.

> > > 	(PARAM_ANALYZER_MAX_ENODES_PER_PROGRAM_POINT): New param.

> > > 	(PARAM_ANALYZER_MAX_RECURSION_DEPTH): New param.

> > > 	(PARAM_ANALYZER_MIN_SNODES_FOR_CALL_SUMMARY): New param.

> > Doesn't this need a rethink/reimplementation after M. Liska's

> > changes?

> > 

> > jeff

> > 

> > 

> 

> I think he did that in a followup patch from a later patchset...


Yes:
  https://gcc.gnu.org/ml/gcc-patches/2019-11/msg02030.html

Patch

diff --git a/gcc/params.def b/gcc/params.def
index 4cb48d9..6715cf6 100644
--- a/gcc/params.def
+++ b/gcc/params.def
@@ -1487,6 +1487,31 @@  DEFPARAM(PARAM_SSA_NAME_DEF_CHAIN_LIMIT,
 	 "a value.",
 	 512, 0, 0)
 
+DEFPARAM(PARAM_ANALYZER_BB_EXPLOSION_FACTOR,
+	 "analyzer-bb-explosion-factor",
+	 "The maximum number of 'after supernode' exploded nodes within the "
+	 "analyzer per supernode, before terminating analysis.",
+	 5, 1, 0)
+
+DEFPARAM(PARAM_ANALYZER_MAX_ENODES_PER_PROGRAM_POINT,
+	 "analyzer-max-enodes-per-program-point",
+	 "The maximum number of exploded nodes per program point within the "
+	 "analyzer, before terminating analysis of that point.",
+	 8, 1, 0)
+
+DEFPARAM(PARAM_ANALYZER_MAX_RECURSION_DEPTH,
+	 "analyzer-max-recursion-depth",
+	 "The maximum number of times a callsite can appear in a call stack "
+	 " within the analyzer, before terminating analysis of a call that "
+	 " would recurse deeper.",
+	 2, 1, 0)
+
+DEFPARAM(PARAM_ANALYZER_MIN_SNODES_FOR_CALL_SUMMARY,
+	 "analyzer-min-snodes-for-call-summary",
+	 "The minimum number of supernodes within a function for the "
+	 "analyzer to consider summarizing its effects at call sites.",
+	 10, 1, 0)
+
 /*
 
 Local variables: