This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix another BLOCK issue
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Richard Biener <rguenther at suse dot de>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Fri, 8 Mar 2013 11:36:50 +0100
- Subject: Re: [PATCH] Fix another BLOCK issue
- References: <alpine.LNX.2.00.1303081121470.3543@zhemvz.fhfr.qr>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Fri, Mar 08, 2013 at 11:24:40AM +0100, Richard Biener wrote:
>
> This fixes the fact that the inliner now associates a BLOCK
> with BLOCK_SOURCE_LOCATION but we don't dare to keep that BLOCK
> live when removing unused block scopes. Adding location verification
> for BLOCK_SOURCE_LOCATION shows this immediately during bootstrap.
>
> The obvious fix for this is the tree-inline.c hunk (obvious
> in that it is a return to previous behavior where location and
> block were not unified).
>
> As for the verification either we verify it the way in the patch
> below or we verify that LOCATION_BLOCK of BLOCK_SOURCE_LOCATION
> is always NULL. Any preference? (or just leave out the checking?)
I guess I'd prefer verifying that LOCATION_BLOCK of BLOCK_SOURCE_LOCATION is
NULL, but don't feel too strongly about that, so if that means another
bootstrap/regtest for you, just go ahead with what you have now.
> 2013-03-08 Richard Biener <rguenther@suse.de>
>
> * tree-inline.c (expand_call_inline): Do not associate
> a BLOCK with the location in BLOCK_SOURCE_LOCATION.
> * tree-cfg.c (verify_location): Verify BLOCK_SOURCE_LOCATION.
Jakub