aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorBernd Schmidt <bernds@codesourcery.com>2011-07-28 22:47:21 +0000
committerBernd Schmidt <bernds@gcc.gnu.org>2011-07-28 22:47:21 +0000
commite40a0b691b871198b495c035736f55e074542296 (patch)
treefb9ab3dc4b875e5dad1e76a888110165290bfb90 /gcc
parent69135c94b33fe4e0eebe40072f327a4e769848e7 (diff)
downloadgcc-e40a0b691b871198b495c035736f55e074542296.zip
gcc-e40a0b691b871198b495c035736f55e074542296.tar.gz
gcc-e40a0b691b871198b495c035736f55e074542296.tar.bz2
re PR rtl-optimization/49891 (ICE in redirect_jump_1)
PR rtl-optimization/49891 * cfgrtl.c (force_nonfallthru_and_redirect): Set JUMP_LABEL for newly created returnjumps. From-SVN: r176905
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/cfgrtl.c1
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 015724c..c304e82 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2011-07-29 Bernd Schmidt <bernds@codesourcery.com>
+
+ PR rtl-optimization/49891
+ * cfgrtl.c (force_nonfallthru_and_redirect): Set JUMP_LABEL for
+ newly created returnjumps.
+
2011-07-28 DJ Delorie <dj@redhat.com>
* expr.c (expand_expr_addr_expr_1): Detect a user request for a
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c
index 6937795..b60041a 100644
--- a/gcc/cfgrtl.c
+++ b/gcc/cfgrtl.c
@@ -1254,6 +1254,7 @@ force_nonfallthru_and_redirect (edge e, basic_block target)
{
#ifdef HAVE_return
emit_jump_insn_after_setloc (gen_return (), BB_END (jump_block), loc);
+ JUMP_LABEL (BB_END (jump_block)) = ret_rtx;
#else
gcc_unreachable ();
#endif