diff options
Diffstat (limited to 'gcc/tree-ssa-threadupdate.c')
-rw-r--r-- | gcc/tree-ssa-threadupdate.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/gcc/tree-ssa-threadupdate.c b/gcc/tree-ssa-threadupdate.c index f496dd3..29cf010 100644 --- a/gcc/tree-ssa-threadupdate.c +++ b/gcc/tree-ssa-threadupdate.c @@ -35,6 +35,7 @@ along with GCC; see the file COPYING3. If not see #include "dbgcnt.h" #include "tree-cfg.h" #include "tree-vectorizer.h" +#include "tree-pass.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 @@ -2741,15 +2742,17 @@ jump_thread_path_registry::thread_through_all_blocks E is the edge we can thread, E2 is the new target edge, i.e., we are effectively recording that E->dest can be changed to E2->dest - after fixing the SSA graph. */ + after fixing the SSA graph. -void + Return TRUE if PATH was successfully threaded. */ + +bool jump_thread_path_registry::register_jump_thread (vec<jump_thread_edge *> *path) { if (!dbg_cnt (registered_jump_thread)) { path->release (); - return; + return false; } /* First make sure there are no NULL outgoing edges on the jump threading @@ -2766,7 +2769,7 @@ jump_thread_path_registry::register_jump_thread (vec<jump_thread_edge *> *path) } path->release (); - return; + return false; } /* Only the FSM threader is allowed to thread across @@ -2780,6 +2783,7 @@ jump_thread_path_registry::register_jump_thread (vec<jump_thread_edge *> *path) dump_jump_thread_path (dump_file, *path, true); m_paths.safe_push (path); + return true; } /* Return how many uses of T there are within BB, as long as there |