This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: TREE_READONLY in lookup_tmp_var
- From: Richard Henderson <rth at redhat dot com>
- To: Richard Kenner <kenner at vlsi1 dot ultra dot nyu dot edu>
- Cc: gcc at gcc dot gnu dot org
- Date: Fri, 20 Aug 2004 14:53:35 -0700
- Subject: Re: TREE_READONLY in lookup_tmp_var
- References: <10408202125.AA05050@vlsi1.ultra.nyu.edu>
On Fri, Aug 20, 2004 at 05:25:45PM -0400, Richard Kenner wrote:
> They'll get the same variable when the expression is used with the
> same inputs. The inputs are not constrained such that they must
> have the same values. You'll notice that there is absolutely no
> invalidation out of that hash table.
>
> It is a misunderstanding on your part what this is for -- the sole
> purpose of this hash table is reducing the number of temporary
> variables, not doing SSA or CSE.
>
> No, you misunderstood me.
I understood you. I then attempted to correct your misunderstanding.
Clearly it didn't work.
> If the hash table is giving, say, T.78 as the value of "X + Y" and T.78
> isn't really readonly (meaning it's modified), then another request
> for "X + Y" shouldn't give T.78 as that's no longer it's value.
We will return T.78 every single time you say "X + Y". We then use the
value immediately and discard it. These variables are not live across
sequence points.
I will repeat:
... the sole
purpose of this hash table is reducing the number of temporary
variables, not doing SSA or CSE.
r~