Changes to lunar optimize

Zbigniew Luszpinski zbiggy at o2.pl
Mon Sep 27 01:19:50 CEST 2010


Hello,

here are my proposed changes to lunar optimize:
-O3 Fastest
*Move it to "Specialized optimizations" because it is not safe or fastest:
*It is not true it is the fastest it _may_ _be_ faster or slower than -O2
depending on code. So rename it to may be "slower/faster than -O2". 
Setting it distribution wide is dangerous. Firefox, Seamonkey, Thunderbird 
will compile well but crash on start with segmentation fault because -O3 
will enable -ftree-vectorize - silent runtime killer for C++ applications.
-ftree-vectorize is silent and dangerous killer because:
*it does not kill an application compiled with it but libraries on which 
it depends kill it. In case of mozilla apps you can build them with ftree-
vectorize and they will work. Build zlib, jpeg, cairo and other libs 
mozilla use with -ftree-vectorize and they will cause mozilla apps crash 
on start.
*You can rebuild lunar with it and it will compile and work but some C++ 
applications will be crashing on start and you will have really hard task 
to find why they crash.
* -O3 can cause the code to grow up insanely and eat memory and disk space 
like a crazy. This is one of the reasons making -O3 actually slower than -
O2.

Newbies will always choose -O3 because the fastest is better than faster -
O2 and will end up with broken system.  Next they will leave Lunar with 
opinion too buggy to use.

cpu selection in safe mode should be limited to:
-i686
-native
only. The first one is paranoid safe and slow, the second one is really 
safe and the fastest.
On Lunar general ML I presented a proof that shows native target is better 
than manually selecting CPU. If newbie will choose bad cpu broken system 
will be compiled.

linker:
I would like to add these optional flags to speed up app loading:
-Wl,--hash-style-gnu=both
-Wl,--sort-common
I have successfuly rebuilt lunar 1.6.5 32bit with KDE and mozilla using 
these flags so they are safe.

have a nice day,
Zbigniew Luszpinski
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4595 bytes
Desc: not available
URL: <http://foo-projects.org/pipermail/lunar-dev/attachments/20100926/a9a641db/attachment.bin>


More information about the Lunar-dev mailing list