Redundant logical operations left after early splitting

hutchinsonandy@aim.com hutchinsonandy@aim.com
Thu Feb 21 16:28:00 GMT 2008


If I understand correctly:

Prop. of "0" causes simplfy-rtx to create NOP from OR Rx,0
This NOP (deletion?) creates another set of potential uses -  as now 
the prior RHS def now passes straight thru to a new set of uses  - but 
we miss those new uses. (which in the testcase are often 0)

I will try fwprop in a few different spots latter and see what, if any 
changes occur.

thanks again

Andy




-----Original Message-----
From: Paolo Bonzini <bonzini@gnu.org>
To: hutchinsonandy@aim.com
Cc: gcc@gcc.gnu.org
Sent: Thu, 21 Feb 2008 11:04 am
Subject: Re: Redundant logical operations left after early splitting


> Putting fwprop after combine is no problem - but is too early - none 
of > the patterns would be split at that time - preventing byte level > 
propagations. 
 
Yeah, I meant "after split" actually. 
 
Anyway, the problem is that if the RHS becomes a constant, fwprop does 
not propagate the LHS anymore. I can try to add some def->use 
propagation. 
 
> (PS I was impressed by fwprop code, I actually stand a chance of > 
understanding some of it) 
 
Thanks (since I and Steven Bosscher wrote it) -- but I guess that's 
what you can expect from optimization passes that can rely on a decent 
framework (simplify-rtx.c and df-*.c). 
 
Paolo 


________________________________________________________________________
More new features than ever.  Check out the new AIM(R) Mail ! - 
http://webmail.aim.com



More information about the Gcc mailing list