diff options
author | Alan Modra <amodra@gmail.com> | 2011-10-15 21:02:33 +1030 |
---|---|---|
committer | Alan Modra <amodra@gcc.gnu.org> | 2011-10-15 21:02:33 +1030 |
commit | 387748de2fd017a990aaf617f24b8dad53856888 (patch) | |
tree | cb30b59e8583f834cc2b7bda3848e3270cd9bcf1 /gcc/cfgrtl.c | |
parent | c225ba500b4c34dde743798bf9ccb5dcef7af832 (diff) | |
download | gcc-387748de2fd017a990aaf617f24b8dad53856888.zip gcc-387748de2fd017a990aaf617f24b8dad53856888.tar.gz gcc-387748de2fd017a990aaf617f24b8dad53856888.tar.bz2 |
re PR rtl-optimization/49941 (segmentation fault in redirect_jump_2)
PR rtl-optimization/49941
* jump.c (mark_jump_label_1): Set JUMP_LABEL for simple_return jumps.
* rtl.h (set_return_jump_label): Declare.
* function.c (set_return_jump_label): New function, extracted..
(thread_prologue_and_epilogue_insns): ..from here. Use it in
another instance to set return jump_label.
* cfgrtl.c (force_nonfallthru_and_redirect): Use set_return_jump_label.
* reorg.c (find_end_label): Likewise.
From-SVN: r180027
Diffstat (limited to 'gcc/cfgrtl.c')
-rw-r--r-- | gcc/cfgrtl.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c index b3f045b..f06dbc8 100644 --- a/gcc/cfgrtl.c +++ b/gcc/cfgrtl.c @@ -1273,7 +1273,7 @@ force_nonfallthru_and_redirect (edge e, basic_block target, rtx jump_label) gcc_unreachable (); #endif } - JUMP_LABEL (BB_END (jump_block)) = jump_label; + set_return_jump_label (BB_END (jump_block)); } else { |