From b2ee26d5ec4780a243a5a6bbeff15011ef7fc5a8 Mon Sep 17 00:00:00 2001 From: uweigand Date: Wed, 22 Apr 2009 11:31:56 +0000 Subject: * function.c (expand_function_end): Do not emit a jump to the "naked" return label for fall-through returns. * except.c (sjlj_emit_function_exit): Always place the call to the unregister function at the location installed by expand_function_end. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146570 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/function.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gcc/function.c') diff --git a/gcc/function.c b/gcc/function.c index 2c97597edd7..60b734827c3 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -4804,7 +4804,6 @@ expand_function_end (void) start_sequence (); clobber_return_register (); - expand_naked_return (); seq = get_insns (); end_sequence (); @@ -4812,7 +4811,8 @@ expand_function_end (void) } /* Output the label for the naked return from the function. */ - emit_label (naked_return_label); + if (naked_return_label) + emit_label (naked_return_label); /* @@@ This is a kludge. We want to ensure that instructions that may trap are not moved into the epilogue by scheduling, because -- cgit v1.2.1