This is the mail archive of the
mailing list for the GCC project.
Re: update address taken: don't drop clobbers
- From: Jeff Law <law at redhat dot com>
- To: Michael Matz <matz at suse dot de>, Richard Biener <richard dot guenther at gmail dot com>
- Cc: Marc Glisse <marc dot glisse at inria dot fr>, GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Thu, 10 Jul 2014 12:22:54 -0600
- Subject: Re: update address taken: don't drop clobbers
- Authentication-results: sourceware.org; auth=none
- References: <alpine dot DEB dot 2 dot 02 dot 1406282350110 dot 31815 at stedding dot saclay dot inria dot fr> <CAFiYyc0fRhV09A3C2WT8yQ1ndp9dcyWntCVSPHzhwHb3tgNZLg at mail dot gmail dot com> <alpine dot LNX dot 2 dot 00 dot 1407101743300 dot 31863 at wotan dot suse dot de>
On 07/10/14 09:48, Michael Matz wrote:
The last part is what I hinted might be problematical. If some
undefined SSA_NAME appears on the RHS of two PHIs and we want to
coalesce that undefined SSA_NAME with the LHS of each of those PHIs,
then the LHS of those two PHIs must coalesce as well. At least that's
my recollection of how all that stuff worked.
On Thu, 10 Jul 2014, Richard Biener wrote:
Apart from the out-of-SSA patch you proposed elsewhere a possibility
is to simply never mark undefined SSA names as
SSA_NAME_OCCURS_IN_ABNORMAL_PHI ... (or not mark those
The insight to note is, that undefined SSA names should really be
coalesced with something (otherwise you lost an optimization opportunity),
but it doesn't matter with _what_ each use of the undefined name is
coalesced, you can even identify different uses of them with different SSA
names (e.g. the LHS of each using stmt). Requires some change in the
order things are done in out-of-ssa.
It was that realization that made me wonder if we should have a unique
SSA_NAME at each undefined use point.