diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-28 17:55:25 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-28 17:55:25 +0000 |
commit | b0d29d1cb20d83df4f6806568410812caf3bc0a9 (patch) | |
tree | 71b5742a48b64212e619cde0a156cbe731404f0c /gcc/tree-eh.c | |
parent | 69dfb43a2cd36ecfd935523329304d83b87d45cc (diff) | |
download | gcc-b0d29d1cb20d83df4f6806568410812caf3bc0a9.tar.gz |
* dwarf2out.c (dwarf2out_begin_prologue): Use crtl->nothrow
* tree-eh.c (stmt_could_throw_p): Remove check for WEAK decls.
* function.h (rtl_data): Add nothrow flag.
* except.c (set_nothrow_function_flags): Use crtl->nothrow;
set DECL_NOTHROW for AVAILABLE functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145202 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-eh.c')
-rw-r--r-- | gcc/tree-eh.c | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/gcc/tree-eh.c b/gcc/tree-eh.c index c789acbd118..c992f6d477e 100644 --- a/gcc/tree-eh.c +++ b/gcc/tree-eh.c @@ -2368,15 +2368,7 @@ stmt_could_throw_p (gimple stmt) if (code == GIMPLE_ASSIGN || code == GIMPLE_COND) return stmt_could_throw_1_p (stmt); else if (is_gimple_call (stmt)) - { - tree t = gimple_call_fndecl (stmt); - - /* Assume that calls to weak functions may trap. */ - if (!t || !DECL_P (t) || DECL_WEAK (t)) - return true; - - return (gimple_call_flags (stmt) & ECF_NOTHROW) == 0; - } + return (gimple_call_flags (stmt) & ECF_NOTHROW) == 0; else if (gimple_code (stmt) == GIMPLE_ASM) return (gimple_asm_volatile_p (stmt)); else |