From 25fe40b0f2eb747003f2d83831abcc9585bc30e9 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Thu, 20 Feb 2014 09:00:23 +0000 Subject: re PR middle-end/60221 (gcc -fexceptions generates unnecessary cleanup code) 2014-02-20 Richard Biener PR middle-end/60221 * tree-eh.c (execute_cleanup_eh_1): Also cleanup empty EH regions at -O0. From-SVN: r207937 --- gcc/ChangeLog | 6 ++++++ gcc/tree-eh.c | 5 +++-- 2 files changed, 9 insertions(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 24d8e18..a5c8332 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-02-20 Richard Biener + + PR middle-end/60221 + * tree-eh.c (execute_cleanup_eh_1): Also cleanup empty EH + regions at -O0. + 2014-02-20 Jan Hubicka PR ipa/58555 diff --git a/gcc/tree-eh.c b/gcc/tree-eh.c index 06941cd..14ed52a 100644 --- a/gcc/tree-eh.c +++ b/gcc/tree-eh.c @@ -4557,11 +4557,12 @@ execute_cleanup_eh_1 (void) remove_unreachable_handlers (); /* Watch out for the region tree vanishing due to all unreachable. */ - if (cfun->eh->region_tree && optimize) + if (cfun->eh->region_tree) { bool changed = false; - changed |= unsplit_all_eh (); + if (optimize) + changed |= unsplit_all_eh (); changed |= cleanup_all_empty_eh (); if (changed) -- cgit v1.1