diff options
author | Jason Merrill <jason@casey.cygnus.com> | 2000-01-31 18:52:34 +0000 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2000-01-31 13:52:34 -0500 |
commit | d4cf5733ee1a1e5efded2df9800e6edd64a944bd (patch) | |
tree | b65c25418a2a8881d52340108bd3275c2201eafb /gcc | |
parent | d4bf484274df326c2f01784f3b6beff6796bb1e3 (diff) | |
download | gcc-d4cf5733ee1a1e5efded2df9800e6edd64a944bd.zip gcc-d4cf5733ee1a1e5efded2df9800e6edd64a944bd.tar.gz gcc-d4cf5733ee1a1e5efded2df9800e6edd64a944bd.tar.bz2 |
jump.c (redirect_jump): Move a NOTE_INSN_FUNCTION_END to the new label.
* jump.c (redirect_jump): Move a NOTE_INSN_FUNCTION_END to the
new label.
From-SVN: r31721
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/jump.c | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8a117e9..3838f3f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2000-01-31 Jason Merrill <jason@casey.cygnus.com> + + * jump.c (redirect_jump): Move a NOTE_INSN_FUNCTION_END to the + new label. + 2000-01-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> * gansidecl.h (PROTO, VPROTO, PVPROTO): Delete macros. @@ -4639,6 +4639,13 @@ redirect_jump (jump, nlabel) if (nlabel) ++LABEL_NUSES (nlabel); + /* If we're eliding the jump over exception cleanups at the end of a + function, move the function end note so that -Wreturn-type works. */ + if (olabel && NEXT_INSN (olabel) + && GET_CODE (NEXT_INSN (olabel)) == NOTE + && NOTE_LINE_NUMBER (NEXT_INSN (olabel)) == NOTE_INSN_FUNCTION_END) + emit_note_after (NOTE_INSN_FUNCTION_END, nlabel); + if (olabel && --LABEL_NUSES (olabel) == 0) delete_insn (olabel); |