This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [pretty-ipa] Empty cleanup EH regions removal
- From: Andrew Pinski <pinskia at gmail dot com>
- To: Jan Hubicka <hubicka at ucw dot cz>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Fri, 27 Mar 2009 22:44:50 -0700
- Subject: Re: [pretty-ipa] Empty cleanup EH regions removal
- References: <20090327165826.GB24355@kam.mff.cuni.cz>
On Fri, Mar 27, 2009 at 9:58 AM, Jan Hubicka <hubicka@ucw.cz> wrote:
> Hi,
> implicitly generated cleanup regions for destructors have tendency to be both
> numberous and often completely optimized out. ÂThis patch adds code to detect
> empty cleanup block and remove it from Eh tree. ÂOn tramp3d, we remove this way
> about 1400 blocks that in addition leads to removal of couple hounderd
> MUST_NOT_THROW terminate() receivers and simplification of CFG.
And this is PR 28850.
A simple testcase would be:
struct bomber
{
~bomber() { }
};
int g(void);
int f(void)
{
bomber a;
g();
}
And then checking for resx in final_cleanup.
Thanks,
Andrew Pinski