aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorKaz Kojima <kkojima@gcc.gnu.org>2009-08-27 22:56:41 +0000
committerKaz Kojima <kkojima@gcc.gnu.org>2009-08-27 22:56:41 +0000
commita7d6f306434996c51d6f7fddb28bce781d60cdef (patch)
tree92942086baac68052da7aa6c802cca4243347a81 /gcc
parent715fda9936b139b8f405736e3ddd29cf53a98931 (diff)
downloadgcc-a7d6f306434996c51d6f7fddb28bce781d60cdef.zip
gcc-a7d6f306434996c51d6f7fddb28bce781d60cdef.tar.gz
gcc-a7d6f306434996c51d6f7fddb28bce781d60cdef.tar.bz2
sh.c (split_branches): Check the result of next_active_insn.
* config/sh/sh.c (split_branches): Check the result of next_active_insn. From-SVN: r151152
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/sh/sh.c7
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8b0a6af..de1e1c5 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2009-08-27 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.c (split_branches): Check the result of
+ next_active_insn.
+
2009-08-27 Steve Ellcey <sje@cup.hp.com>
* config/ia64/hpux.h (LIB_SPEC): Add -lrt for when
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 71933d6..ed8a698 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -5841,9 +5841,10 @@ split_branches (rtx first)
next = next_active_insn (insn);
- if ((JUMP_P (next)
- || ((next = next_active_insn (next))
- && JUMP_P (next)))
+ if (next
+ && (JUMP_P (next)
+ || ((next = next_active_insn (next))
+ && JUMP_P (next)))
&& GET_CODE (PATTERN (next)) == SET
&& recog_memoized (next) == CODE_FOR_jump_compact
&& ((INSN_ADDRESSES