Add dbg count support for ccp

From-SVN: r145206
This commit is contained in:
Xinliang David Li 2009-03-28 20:38:44 +00:00 committed by Xinliang David Li
parent 414d751cdc
commit 74fe548b85
3 changed files with 29 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2009-03-28 Xinliang David Li <davidxl@google.com>
* tree-ssa-ccp.c (ccp_finalize): Add dbg_count support.
(do_dbg_cnt): New function.
2009-03-28 Jan Hubicka <jh@suse.cz>
Merge from pretty-ipa:

View File

@ -142,6 +142,7 @@ echo ubound: $ub
/* Debug counter definitions. */
DEBUG_COUNTER (auto_inc_dec)
DEBUG_COUNTER (ccp)
DEBUG_COUNTER (cfg_cleanup)
DEBUG_COUNTER (cse2_move2add)
DEBUG_COUNTER (cprop1)

View File

@ -208,6 +208,7 @@ along with GCC; see the file COPYING3. If not see
#include "langhooks.h"
#include "target.h"
#include "toplev.h"
#include "dbgcnt.h"
/* Possible lattice values. */
@ -666,6 +667,24 @@ ccp_initialize (void)
}
}
/* Debug count support. Reset the values of ssa names
VARYING when the total number ssa names analyzed is
beyond the debug count specified. */
static void
do_dbg_cnt (void)
{
unsigned i;
for (i = 0; i < num_ssa_names; i++)
{
if (!dbg_cnt (ccp))
{
const_val[i].lattice_val = VARYING;
const_val[i].value = NULL_TREE;
}
}
}
/* Do final substitution of propagated values, cleanup the flowgraph and
free allocated storage.
@ -675,8 +694,11 @@ ccp_initialize (void)
static bool
ccp_finalize (void)
{
bool something_changed;
do_dbg_cnt ();
/* Perform substitutions based on the known constant values. */
bool something_changed = substitute_and_fold (const_val, false);
something_changed = substitute_and_fold (const_val, false);
free (const_val);
const_val = NULL;