This is the mail archive of the gcc@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: Scheduling complete loop unrolling early and unconditional?


Hello,

> > > Therefore, is it possible to schedule either complete unrolling
> > > of loops very early (before sra), or to schedule another sra
> > > run after loop optimizations (that's what I'll try at the moment,
> > > but possibly mess everything up)?
> > >
> > Scheduling SRA after loop optimizations sounds better.  SRA should be
> > able to run more than once.
> 
> Will another loop pass with just
> 
>   p = &pass_loop2.sub;
>   NEXT_PASS (pass_loop_init);
>   NEXT_PASS (pass_complete_unroll);
>   NEXT_PASS (pass_loop_done);
>   *p = NULL;
> 
> not work?  Will it need a pass_iv_canon before pass_complete_unroll?
> I'd schedule pass_loop2 after the first run of dce.  That should be
> cheaper than running sra twice perhaps.

this should work.  However initialization of loop structures is
relatively expensive, so I am not sure how the compile time compares
with running another sra pass.

Zdenek


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