> 2010/5/21 Jan Hubicka <hubi...@ucw.cz>:
> >> On Thu, May 20, 2010 at 11:21 PM, Xinliang David Li <davi...@google.com> 
> >> wrote:
> >> > On Thu, May 20, 2010 at 2:18 PM, Steven Bosscher <stevenb....@gmail.com> 
> >> > wrote:
> >> >> On Thu, May 20, 2010 at 11:14 PM, Xinliang David Li 
> >> >> <davi...@google.com> wrote:
> >> >>> stack variable overlay and stack slot assignments is here too.
> >> >>
> >> >> Yes, and for these I would like to add a separate timevar. Agree?
> >> >
> >> > Yes.  (By the way, we are rewriting this pass to eliminate the code
> >> > motion/aliasing problem -- but that is a different topic).
> >>
> >> Btw, we want to address the same problem by representing the
> >> points where (big) variables go out-of scope in the IL, also to
> >> help DSE.  The original idea was to simply drop in an aggregate
> >> assignment from an undefined value at the end of the scope
> >> during lowering, like
> >>
> >>   var = {undefined};
> >>
> >> which we'd expand to nothing.  Of course shifting the problem to
> >> the RTL optimizers, so better expand to a similar RTL construct.
> >> But then are you addressing the similar problem on the RTL side?
> >
> > Well, RTL already has the clobber insns, that are pretty much what you need
> > (and RTL land plays with this at least for double word arithmetic). But
> > I am not quite sure how much of DSE we want to deffer to RTL.
> 
> But a clobber for (stack) memory objects doesn't work in the granularity
> we want it to be applied, does it?

Clobber takes memory expression that has alias info in it, so you can make it
specific to single var.  But I guess problem will be that memory clobber
(unlike reg clobber) has by default the "may" interpretation (i.e. it may or
may not change the memory in random way).

Honza

Reply via email to