Hi, all

I've taken a look on modulo-sched.c recently, and found
that both new_cycles and orig_cycles are imprecise. The
reason is that kernel_number_of_cycles does not take the
data dependences of insns into account as the DFA
scheduler does in haifa-sched.c.  

On IA-64, three improvements are needed to let SMS work.
1) Modify doloop_register_get or the similar function
defined in doloop.c to recognize the loop count
register. I have supplied a patch about this in April.

2) Use more precise way to calculate the values of the
two kind of cycles, or just ignore this benefit assertion.

3) The counted loop register 'ar.lc' of IA-64 can not be
updated  directly. Another temporary register is needed
to evaluate the value of the actural loop count after
SMS schedule, and assign its value to 'ar.lc'.


Mostafa Hagog <[EMAIL PROTECTED]>:

> 
>
>
>
> Steven Bosscher <[EMAIL PROTECTED]> wrote on 22/04/2005
09:39:09:
>
>
> >
> > Thanks!
> > For the record, this refers to a patch I sent to
Mostafa and Canqun to
> > do what Mostafa suggested last month to make SMS
work for ia64, see
> > http://gcc.gu.org/ml/gcc-patches/2005-03/msg02848.html.
>
> I have tested the patch on powerpc-apple-darwin and
there are some tests
> that
> started failing. So I am going to debug it to see what
causes the failures.
>
> Mostafa.
>
> >
> > Gr.
> > Steven
> >
> >
>
> 


Canqun Yang
Creative Compiler Research Group.
National University of Defense Technology, China.

Reply via email to