PR rtl-optimization/29323
* except.c (set_nothrow_function_flags): For functions
that do not bind local bail out early.
* decl.c (finish_function): Set TREE_NOTHROW only for
functions that bind local.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117598
138bc75d-0d04-0410-961f-
82ee72b054a4
+2006-10-10 Richard Guenther <rguenther@suse.de>
+
+ PR rtl-optimization/29323
+ * except.c (set_nothrow_function_flags): For functions
+ that do not bind local bail out early.
+
2006-10-10 Ben Elliston <bje@au.ibm.com>
* doc/invoke.texi (RS/6000 and PowerPC Options): Add -m to the
+2006-10-10 Richard Guenther <rguenther@suse.de>
+
+ PR rtl-optimization/29323
+ * decl.c (finish_function): Set TREE_NOTHROW only for
+ functions that bind local.
+
2006-10-09 Richard Henderson <rth@redhat.com>
Revert emutls patch.
/* If this function can't throw any exceptions, remember that. */
if (!processing_template_decl
&& !cp_function_chain->can_throw
- && !flag_non_call_exceptions)
+ && !flag_non_call_exceptions
+ && targetm.binds_local_p (fndecl))
TREE_NOTHROW (fndecl) = 1;
/* This must come after expand_function_end because cleanups might
{
rtx insn;
+ if (!targetm.binds_local_p (current_function_decl))
+ return 0;
+
TREE_NOTHROW (current_function_decl) = 1;
/* Assume cfun->all_throwers_are_sibcalls until we encounter