Fix gimple_seq_nondebug_singleton_p 2015-06-09 Tom de Vries * gimple-iterator.h (gimple_seq_nondebug_singleton_p): Don't always return false. --- gcc/gimple-iterator.h | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/gcc/gimple-iterator.h b/gcc/gimple-iterator.h index d08245e..76fa456 100644 --- a/gcc/gimple-iterator.h +++ b/gcc/gimple-iterator.h @@ -351,33 +351,27 @@ static inline bool gimple_seq_nondebug_singleton_p (gimple_seq seq) { gimple_stmt_iterator gsi; + + /* Find a nondebug gimple. */ gsi.ptr = gimple_seq_first (seq); gsi.seq = &seq; gsi.bb = NULL; - - /* Not a singleton if the sequence is empty. */ - if (gsi_end_p (gsi)) - return false; - - /* Find a nondebug gimple. */ while (!gsi_end_p (gsi) && is_gimple_debug (gsi_stmt (gsi))) gsi_next (&gsi); - /* Not a nondebug singleton if there's no nondebug gimple. */ - if (is_gimple_debug (gsi_stmt (gsi))) + /* No nondebug gimple found, not a singleton. */ + if (gsi_end_p (gsi)) return false; - /* Find the next nondebug gimple. */ + /* Find a next nondebug gimple. */ + gsi_next (&gsi); while (!gsi_end_p (gsi) && is_gimple_debug (gsi_stmt (gsi))) gsi_next (&gsi); - /* If there's a next nondebug gimple, it's not a nondebug singleton. */ - if (!gsi_end_p (gsi)) - return false; - - return true; + /* Only a singleton if there's no next nondebug gimple. */ + return gsi_end_p (gsi); } #endif /* GCC_GIMPLE_ITERATOR_H */ -- 1.9.1