diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-10-18 15:50:04 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-10-18 15:50:04 +0000 |
commit | a3724f9d40c11b2076915cfc2fcdad3e9ceaeb5a (patch) | |
tree | 52ff49e4a70e3ffe4c9e607ad11edd87067575eb /gcc/tree-ssa-threadupdate.c | |
parent | 6f4315a4aeb7df45e4f7316a4b7fbeacb3ec05d8 (diff) | |
download | gcc-a3724f9d40c11b2076915cfc2fcdad3e9ceaeb5a.tar.gz |
* tree-ssa-threadupdate.c: Do not include "tm.h" or "tm_p.h".
* tree-ssa-threadupdate.c: Include "dbgcnt.h".
(register_jump_thread): Add "registered_jump_thread" debug counter support.
* dbgcnt.def (registered_jump_thread): New debug counter.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203825 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-threadupdate.c')
-rw-r--r-- | gcc/tree-ssa-threadupdate.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/gcc/tree-ssa-threadupdate.c b/gcc/tree-ssa-threadupdate.c index 3e34567d8c1..e791269ebac 100644 --- a/gcc/tree-ssa-threadupdate.c +++ b/gcc/tree-ssa-threadupdate.c @@ -20,10 +20,8 @@ along with GCC; see the file COPYING3. If not see #include "config.h" #include "system.h" #include "coretypes.h" -#include "tm.h" #include "tree.h" #include "flags.h" -#include "tm_p.h" #include "basic-block.h" #include "function.h" #include "tree-ssa.h" @@ -31,6 +29,7 @@ along with GCC; see the file COPYING3. If not see #include "dumpfile.h" #include "cfgloop.h" #include "hash-table.h" +#include "dbgcnt.h" /* Given a block B, update the CFG and SSA graph to reflect redirecting one or more in-edges to B to instead reach the destination of an @@ -1534,6 +1533,14 @@ dump_jump_thread_path (FILE *dump_file, vec<jump_thread_edge *> path) void register_jump_thread (vec<jump_thread_edge *> *path) { + if (!dbg_cnt (registered_jump_thread)) + { + for (unsigned int i = 0; i < path->length (); i++) + delete (*path)[i]; + path->release (); + return; + } + /* First make sure there are no NULL outgoing edges on the jump threading path. That can happen for jumping to a constant address. */ for (unsigned int i = 0; i < path->length (); i++) |