aboutsummaryrefslogtreecommitdiff
path: root/gcc/except.c
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@gcc.gnu.org>2010-06-09 21:49:44 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2010-06-09 21:49:44 +0000
commit642d55de0e40c7bf59ab0043aeae756f004488dc (patch)
tree94bae21be77c1e10d071c24ca7c48b99738ab87d /gcc/except.c
parent70987f6299983c5a764c37827a95f71f831087f0 (diff)
downloadgcc-642d55de0e40c7bf59ab0043aeae756f004488dc.zip
gcc-642d55de0e40c7bf59ab0043aeae756f004488dc.tar.gz
gcc-642d55de0e40c7bf59ab0043aeae756f004488dc.tar.bz2
re PR rtl-optimization/42461 (missed optimization for pure functions)
PR rtl-optimization/42461 * dce.c (deletable_insn_p): Return true for const or pure calls again. * except.c (insn_could_throw_p): Return false if !flag_exceptions. From-SVN: r160507
Diffstat (limited to 'gcc/except.c')
-rw-r--r--gcc/except.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/except.c b/gcc/except.c
index cb4d805..16a0247 100644
--- a/gcc/except.c
+++ b/gcc/except.c
@@ -1617,6 +1617,8 @@ make_reg_eh_region_note_nothrow_nononlocal (rtx insn)
bool
insn_could_throw_p (const_rtx insn)
{
+ if (!flag_exceptions)
+ return false;
if (CALL_P (insn))
return true;
if (INSN_P (insn) && cfun->can_throw_non_call_exceptions)