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: [lno] some cleanups for scev


Hello,

> > Perhaps you could write a more complete example, so that it can be seen
> > what you have in mind?
> > 
> 
> Yes, here it goes:
> 
> 
> Example1:
> 
> loop_1 
>   a = phi (3, c)
>   d = foo ()
>   c = a + d
> endloop_1
> 
> I still want to have a -> {3, +, d}

this makes a lot of code dependent on scev wrong.  In particular
anything that tests "no_evolution_in_loop_p" will get wrong results
when testing such expressions.  Similarly, detection of number of
iterations will get wrong results when expressions like this are
produced, since there is no indication that d may have different values
in different iterations and constant folding does not count with this.

What I would like to obtain for this expression is either
{3, +, chrec_top}, or chrec_top directly.

Or do you have any example where the usage of symbolic values would
actually be useful?

Zdenek


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