Changes to gcc plugin - support for new Intel CPUs, small tweaks

Zbigniew Luszpinski zbiggy at o2.pl
Sun Dec 20 00:48:52 CET 2009


> On Sat, 2009-12-19 at 03:01 +0100, Zbigniew Luszpinski wrote:
> > Hello,
> > 
> > I have just commited to moonbase improved gcc plugin. You do not have to lin gcc to start using it.
> > Just after lunar update do:
> > cp -f /var/lib/lunar/moonbase/compilers/gcc/plugin.d/optimize-gcc_4_4.plugin /var/lib/lunar/plugins
> > then use lunar command to reconfigure your optimization flags.
> 
> Actually this step is not necessary, just do "lin moonbase" and the
> plugin will be automaticly updated. After that run "lunar optimize".
> 
> 

I updated gcc plugin again. This time you'll find som tweaks and added support for new Intel extensions:
ssse3 sse4 sse4.1 sse4.2
Before playing with these new extensions remember that Intel has messy naming of sse:
*ssse3 is supplemental extension to previous sse3
*sse4.1 is sse4's part1 (this is not sse4!!! this is only first part of sse4)
*sse4.2 is sse4's part2 (this is not sse4!!! this is only second part of sse4)
*sse4 == sse4.1 + sse4.2
*sse4a - this is AMD sse4 release. Not Intel. Small subset of Intel's sse4. May not or may work on Intel CPUs.

Lunar will help you find right choice by hiding sse your CPU can not support. So do not worry :)
If you have sse4.1, sse4.2 and sse4 detected on your CPU you should select only sse4 instead of selecting all three.
Remember that choosing cpu extensions manually is risky - may left you with broken system when compilation will be successful!
The best option is to choose CPU type only. Native/autodetect is the best and optimal option. It will autodetect your CPU, set right CPU architecture and enable all extensions supported by this CPU.
Select CPU type manually only if you are 100% sure about what you have. Otherwise autodetect/native will know better than you.
Select manually extensions only if you are 100% sure gcc will not choose right extensions. This can only happen for so new CPUs that gcc does not know them yet - their names will not be present on CPU list. I had only once such situation: old gcc did not know that later Athlon64 Venice core have sse3. Now this is resolved by using Athlon64-sse3 cpu type and leaving extensions list empty.
For my Phenom 9550 I have none extensions selected and this is the best setting.

have a nice day,
Zbigniew Luszpinski


More information about the Lunar mailing list