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: Question about the difference between two instruction scheduling passes


> Gcc only does this work in the second pass, but what's the
> point? Is it wrong or just not necessary  in the first sched
> pass?

Regardless of the target architecture from the correctness point of view sched1 can be disabled. sched1 has as purpose shortening live ranges.
Short live ranges allow the register allocation to:
1. generate less spills and 
2. also to avoid useless live ranges splitting. 

The second point impacts the register renaming phase which allows sched2 phase to extract more ilp.




      


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