Re: [PATCH] gcc-3.0.1 and 2.4.7-ac1

Petr Vandrovec (VANDROVE@vc.cvut.cz)
Fri, 27 Jul 2001 18:14:15 MET-1


On 27 Jul 01 at 18:03, Florian Weimer wrote:
> "Petr Vandrovec" <VANDROVE@vc.cvut.cz> writes:
>
> > Just adding '-finline-limit=150' fixes all of them
>
> This is not a fix, this is a workaround which is suitable for some
> specific GCC release(s). The optimization decisions surrounding
> inlining are likely to change again, so this will break almost
> certainly in the future.

I found that main problem is in __constant_memcpy. This is very large
in internal representation (~70 'units'), so any kernel function which
contains two memcpy calls with constant length cannot be inlined with
current settings because of it contains 140+ internal operations - although
if compiler then generates static function (instead of inlined), it is ~10
i386 operations long, from which 4 are push %edi/%esi and pop %esi/%edi...

Best regards,
Petr Vandrovec
vandrove@vc.cvut.cz

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/