On Wed, Jan 16, 2008 at 04:55:19PM +0300, Sergei Poselenov wrote:
> Hello,
>
> I've just noted an error in my calculations: not 40%, but 10%
> regression (used gdb to do the calculations and forgot to convert
> inputs to float). Sorry.
>
> But the problem still persists for me - I'm building an embedded
> firmware (U-Boot) and it doesn't fit into the reserved space
> anymore.
>
[snipped]
> As for the CSiBE results - the average regression is
> 3%, including top 3 winners:
> 100% (32768 vs 16384 for "linux-2.4.23-pre3-testplatform -
> arch/testplatform/kernel/init_task")
A change from an exact power of 2 to the next one looks very
suspiscious: I seriously doubt that it is a code generation
or instruction choice issue. While there might be a relatively
small increase in size inherent to the compiler, it looks like
it then goes to a "round to the next power of 2" step.
Do you set the right options for your particular processor
(-Os might not override some scheduling decisions and the
default target processor might have changed between GCC
releases)?
Regards,
Gabriel