This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] Merge results as of 2003-05-06
- From: law at redhat dot com
- To: Jason Merrill <jason at redhat dot com>
- Cc: Diego Novillo <dnovillo at redhat dot com>, gcc at gcc dot gnu dot org
- Date: Thu, 08 May 2003 01:10:23 -0600
- Subject: Re: [tree-ssa] Merge results as of 2003-05-06
- Reply-to: law at redhat dot com
In message <wvly91i53p6.fsf@prospero.boston.redhat.com>, Jason Merrill writes:
>On Thu, 08 May 2003 00:29:36 -0600, law@redhat.com wrote:
>Actually, now that I think about it we can't really free temp slots,
>because in GIMPLE all temporaries look like automatic variables in the
>outer block of the function. In this testcase, we don't see a single temp
>that we don't want to keep forever.
Ouch.
>A simple solution may just be to disable all the temp_slots management code
>when we're using the tree optimizers. A better solution would be to fix
>the temp_slots data structure so that we don't keep slogging through the
>whole list when we're only interested in slots from a particular level.
Yup. We also want to eliminate the variables we don't actually use. Gimple
likes to create lots of temporaries. Many of them can goaway as a result
of our optimizers.
The only thing standing in our way is we mis-handle gimplification of
SAVE_EXPRs when they have a context which is not the current function.
[ Yes, I have resolved all the other pesky little issues with incorrect
dataflow information being generated. ]
>My expression temps patch should help to cut down on the number of temps we
>have to deal with; it cuts the number in this testcase by 75%.
What's the status of this -- I know you mentioned it needed further work,
but it sounds quite promising.
jeff