On 27/09/2022 13:34, Richard Biener wrote:
On Mon, 26 Sep 2022, Andre Vieira (lists) wrote:

On 08/09/2022 12:51, Richard Biener wrote:
I'm curious, why the push to redundant_ssa_names?  That could use
a comment ...
So I purposefully left a #if 0 #else #endif in there so you can see the two
options. But the reason I used redundant_ssa_names is because ifcvt seems to
use that as a container for all pairs of (old, new) ssa names to replace
later. So I just piggy backed on that. I don't know if there's a specific
reason they do the replacement at the end? Maybe some ordering issue? Either
way both adding it to redundant_ssa_names or doing the replacement inline work
for the bitfield lowering (or work in my testing at least).
Possibly because we (in the past?) inserted/copied stuff based on
predicates generated at analysis time after we decide to elide something
so we need to watch for later appearing uses.  But who knows ... my mind
fails me here.

If it works to replace uses immediately please do so.  But now
I wonder why we need this - the value shouldn't change so you
should get away with re-using the existing SSA name for the final value?

Yeah... good point. A quick change and minor testing seems to agree. I'm sure I 
had a good reason to do it initially ;)

I'll run a full-regression on this change to make sure I didn't miss anything.

Reply via email to