18.01.2014 20:52, KP Kirchdörfer пишет:
> Am Samstag, 18. Januar 2014, 19:26:39 schrieb Andrew:
>> 18.01.2014 17:53, KP Kirchdörfer пишет:
>>> Am Samstag, 18. Januar 2014, 17:36:05 schrieb Andrew:
>>>> 18.01.2014 13:03, KP Kirchdörfer пишет:
>>>>> Am Donnerstag, 16. Januar 2014, 21:21:04 schrieb Andrew:
>>>>>> 16.01.2014 19:54, KP Kirchdörfer пишет:
>>>>>>> Am Donnerstag, 16. Januar 2014, 19:37:50 schrieb Andrew:
>>>>>>>> Strange, but for me there are some errors on libs linking (like
>>>>>>>> libnl3)
>>>>>>>> for arm, for x86 all is OK. Maybe distro-related trouble. Maybe not.
>>>>>>>> I
>>>>>>>> checked on gentoo x86_64.
>>>>>>> I'm building on kubuntu x86_64.
>>>>>>>
>>>>>>>> Maybe we should also upgrade gcc/binutils before alpha tagging? gcc
>>>>>>>> 4.8.2 seems to be stable, and fresh binutils are compiled w/o
>>>>>>>> troubles.
>>>>>>> If it solves the errrors for you, I'll test on my platform. IMHO you
>>>>>>> can
>>>>>>> reuse branch andrew-headers or whatever branch you'll add  for remote
>>>>>>> access.
>>>>>>>
>>>>>>> But, still learning git, I'm not the one to give anyone/you any hints
>>>>>>> how
>>>>>>> to work with git :)
>>>>>>>
>>>>>>> kp
>>>>>> It doesn't solve errors, but it should break nothing. Also it seems
>>>>>> like
>>>>>> gcc 4.8.2 will generate more optimized code. Also gcc-4.6 has MIPS
>>>>>> regressions which results in non-optimal code.
>>>>>> So I think that we should update them.
>>>>> I'm able to build all toolchains, gdb still fails, but any other issues
>>>>> are
>>>>> solved. A drawback is binary size - it's more often bigger than before.
>>>>>
>>>>> e.g.
>>>>> drobear old 87k, dropbear new 110k
>>>>> dnsmasq old 125k, dnsmasq new 143k
>>>>>
>>>>> Looks we need to tweak some more/new optimiziation settings.
>>>>>
>>>>> kp
>>>> Maybe we should define 'resource-hungry' packages which should be
>>>> assembled with -O2/-O3, and generic packages (like bind, dhcpd,
>>>> iptables) which usually doesn't consumes much resources, that will be
>>>> assembled with -Os?
>>> "Resource-hungry" defined as CPU intensive?
>>> And -Os as default?
>> Right. Also -O2 (or -O3) we may use for some libs (incl. system
>> libs)which seems to be used with that apps.
>
> Ok, I've recompiled the toolchain and dropbear and dnsmasq (unfortunately I
> have not looked into more packages) and git mixed results:
>
>   
> drobear gcc 4.6  -O2 87k
> dropbear 4.8.2 -O2 110k
> dropbear gcc 4.8.2 -Os 96k
>
> dnsmasq gcc 4.6  -O2  125k
> dnsmasq gcc 4.8.2 -O2 143k
> dnsmasq gcc 4.8.2 -Os 117k
>
> So mixed results; and probably  gcc 4.6 with -Os is also smaller than the
> results above.
Maybe, for x86. This is compressed code size, or executables size?
For MIPS - gcc 4.5-4.7 has regression which results in bigger code. This 
was a major reason for update.
>
>> I think we should use something like this into platform include:
>> ifdef OPT_SPEED
>> CFLAGS=-O2
>> else
>> CFLAGS=-Os
>> endif
>> CFLAGS+=.....
> Well I prefer to do compile specific packages with -O2 instead of complete
> toolchains. But then we do have time to decide after alpha-1.
I orefer to specify it into toolchain files to specify for each platform 
different options for CPU-intensive and generic packages.
For CPU-intensive packages we should define OPT_SPEED (so it'll be 
compiled with -O2 or other flags), other packages were compiled with -Os.
And for platforms with limited resources (like MIPS routers) we'll have 
to specify -Os for both variants.
>
> But the results above makes me questioning, if moving to gcc 4.8.2 is really a
> win and the way to go?
In most cases it is equivalent/faster than gcc-4.6 
(http://www.phoronix.com/scan.php?page=article&item=gcc_4248_intelamd), 
and it'll produce more compact code for MIPS.
I think that we'll make a port for some SOHO MIPS router in near future 
- these boxes have limited hadware resources (usually - 32M RAM, 4M ROM; 
higher models - 64M RAM and 8M ROM), and we should place base system 
(all that is needed for booting/mounting USB flash) on ROM. With small 
jffs2 partition for configs/most important packages.
Or we can provide different compilers for different platforms...

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk

_______________________________________________
leaf-devel mailing list
leaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/leaf-devel

Reply via email to