This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-optimization/61607] Look through SSA_NAME_VALUE chains


On 07/07/14 03:02, Richard Biener wrote:
On Mon, Jun 30, 2014 at 8:56 AM, Jeff Law <law@redhat.com> wrote:

SSA_NAME_VALUE is, in effect, a chain of values.  ie, it's possible for
SSA_NAME_VALUE of any given SSA_NAME to refer to another SSA_NAME.

Hmm, but it shouldn't .... as we walk in dominator order and should
always do set_ssa_name_value (name, ssa_name_value (value))
there shouldn't be any chains.
They're certainly there and always have been. You can get chains in cases where we derive implicit sets, for example as well as due to loops in the CFG.



But maybe I'm missing sth about the lattice used by DOM here ...
(at least none of the callers in DOM care to valueize 'value' before
setting it as value for an SSA name).
It's not really a lattice in the way you'd see in VRP. It's just an equality relationship with an unwinding stack to allow us to restore state from earlier points in the domwalk.



jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]