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


On Thu, Apr 15, 2004 at 04:45:57PM +0000, Sebastian Pop wrote:
> > What I would like to obtain for this expression is either
> > {3, +, chrec_top}, or chrec_top directly.
> > 
> 
> Indeed, this is what I would like to have, but only after the
> instantiation.  
> 
> In fact there are two kind of chrecs: those used by the analysis
> algorithm, and those that are used by the client passes.  During the
> analysis it is possible to keep a part of the evolution under a
> symbolic form without being completely instantiated.  This mechanism
> allows to postpone a part of the analysis until the instantiation
> step, and is used in place of the scheduling of the analysis.
> 
> (This makes me think that returning chrec_top in
> instantiate_parameters when a parameter cannot be instantiated could
> be the solution to this problem.)
> 

I have bootstrapped the following patch on i686-pc-linux-gnu.  


	tree-scalar-evolution.c (instantiate_parameters): Don't keep
	symbols after instantiation.  Fully instantiate parameters, 
	or fail on chrec_top.  


Index: tree-scalar-evolution.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/Attic/tree-scalar-evolution.c,v
retrieving revision 1.1.2.31
diff -c -c -3 -p -r1.1.2.31 tree-scalar-evolution.c
*** tree-scalar-evolution.c	15 Apr 2004 15:27:51 -0000	1.1.2.31
--- tree-scalar-evolution.c	15 Apr 2004 17:35:38 -0000
*************** instantiate_parameters (struct loop *loo
*** 2828,2834 ****
  	   the degree of the evolution function.  This is the number
  	   of parameters that have to be instantiated, and is almost
  	   all the time less than 2.  */
! 	res = chrec;
        
        else
  	{
--- 2828,2834 ----
  	   the degree of the evolution function.  This is the number
  	   of parameters that have to be instantiated, and is almost
  	   all the time less than 2.  */
! 	res = chrec_top;
        
        else
  	{


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