This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] postreload: Invalidate reg_state info at barrier/volatile insns
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: "Andreas Krebbel" <krebbel at linux dot vnet dot ibm dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Fri, 18 Nov 2011 22:20:04 +0100
- Subject: Re: [PATCH] postreload: Invalidate reg_state info at barrier/volatile insns
- References: <20111114172842.GA8835@bart>
> With the patch from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49452
> the regstate information is resetted at the unspec_volatile instead of
> invalidated!
You're right. This wouldn't have happened if the code had been properly
commented.
> 2011-11-14 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
>
> * postreload.c (reload_combine): Mark reg_state as invalid at a
> barrier if there has been a use already.
Let's be conservative instead and distinguish the two cases: in the barrier
case, we don't change anything and just add the missing comment, along the
lines of "Crossing a barrier resets all the use information". In the volatile
case, we unconditionally invalidate with a similar comment.
--
Eric Botcazou