This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Suggestion for a fix to Bug middle-end/20177
- From: Mostafa Hagog <MUSTAFA at il dot ibm dot com>
- To: James E Wilson <wilson at specifixinc dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Fri, 18 Mar 2005 12:31:24 +0200
- Subject: Re: Suggestion for a fix to Bug middle-end/20177
James E Wilson <wilson@specifixinc.com> wrote on 18/03/2005 07:43:55:
>
> You either have to keep all REG_NOTES up to date, or call code that will
> recompute them. You can recompute REG_DEAD/REG_UNUSED notes by calling
> back into flow. This is presumably what happens when you mark the block
> dirty, so that would be a sufficient solution for REG_DEAD/REG_UNUSED.
>
Thanks for the information, what we were doing was to call
update_life_info_in_dirty_blocks, but for some reason this wasn't
sufficient to
mark a register dead (REG_DEAD note) when the register was defined in a
predecessor block and dies in the dirty block; we had to call
update_life_info
for all the blocks to mark that register as dead. Is there cases that we
know
about that such case could happen? is this means a bug in update_life_info
?
Thanks,
Mostafa.