This is the mail archive of the gcc-bugs@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]

Re: More linpack on i386-linux analysis


> 
> >  I've been looking at the inner loop of daxpy() in linpack
> >  for i386-linux:
> 
> >  Here's the code generated by gcc-2.7.2; the loop counter
> >  is nicely allocated in a register:
> [...]
> >  Here's the code generated by egcs-19980707: the loop
> >  counter is allocated to a stack slot:
> [...]
> 
> This must be a specific failure of the ix86 backend - on  
> m68k-next-nextstep3 I get for the Fortran equivalent code:
> 
> L5:
>         fmovex fp1,fp0
>         fmuld a0@+,fp0
>         faddd a1@,fp0
>         fmoved fp0,a1@+
>         dbra d0,L5
> 
> which is optimal.
> 
> Cheers,
> Toon.
> 

If you reduced the number of general-purpose registers to 6, I would 
suspect you would see a similar problem on the 680x0.

Toshi


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