On Wed, Jul 27, 2011 at 9:32 PM, Mick <michaelkintz...@gmail.com> wrote:

> On Wednesday 27 Jul 2011 17:13:21 Kfir Lavi wrote:
> > On Wed, Jul 27, 2011 at 5:34 PM, Kfir Lavi <lavi.k...@gmail.com> wrote:
> > > On Wed, Jul 27, 2011 at 5:09 PM, Andy Wilkinson
> > >>
> > >>  Another good trick I've found on the forums is to run:
> > >> $ gcc -### -e -v -march=native /usr/include/stdlib.h
> > >>
> > >> The last line of output will include the various CFLAGS that
> > >> -march=native
> > >>
> > >> picks.  In my case (Phenom II 955):
> > >>  "/usr/libexec/gcc/x86_64-pc-linux-gnu/4.4.5/cc1" "-quiet"
> > >>
> > >> "/usr/include/stdlib.h" "-D_FORTIFY_SOURCE=2" *"-march=amdfam10"
> > >> "-mcx16" "-msahf" "-mpopcnt"* "--param" "l1-cache-size=64" "--param"
> > >> "l1-cache-line-size=64" "--param" "l2-cache-size=512"
> "-mtune=amdfam10"
> > >> "-quiet" "-dumpbase" "stdlib.h" "-auxbase" "stdlib" "-o"
> > >> "/tmp/ccR1PlNZ.s" "--output-pch=/usr/include/stdlib.h.gch"
> > >>
> > >> I typically use -march=native when I don't need to worry about distcc,
> > >> or the options from that output that start with "-m".
>
> > Just shared this trick in my blog.
> >
> http://gentoo-what-did-you-say.blogspot.com/2011/07/finding-cpu-flags-using
> > -gcc.html I added a link to this thread in the post.
>
> It seems that on my early i7, the -march=core2 does not have all the -msse*
> flags enabled, while native does:
>
> $ diff -y --suppress-common-lines core2.txt native.txt
>  -mcx16        [disabled]        |   -mcx16          [enabled]
>  -mno-sse4     [enabled]         |   -mno-sse4       [disabled]
>  -mpopcnt      [disabled]        |   -mpopcnt        [enabled]
>  -msahf        [disabled]        |   -msahf          [enabled]
>  -msse         [disabled]        |   -msse           [enabled]
>  -msse2        [disabled]        |   -msse2          [enabled]
>  -msse3        [disabled]        |   -msse3          [enabled]
>  -msse4        [disabled]        |   -msse4          [enabled]
>  -msse4.1      [disabled]        |   -msse4.1        [enabled]
>  -msse4.2      [disabled]        |   -msse4.2        [enabled]
>  -mssse3       [disabled]        |   -mssse3         [enabled]
>  -mtune=                         |   -mtune=         core2
>
>
> I wonder if I should just set it to "-march=native -O2 -pipe" and forget
> about
> it ... native it seems to have more stuff switched on and it would probably
> be
> a-good-thingĀ® (although my understanding of what each flag does is rather
> cursory).
> --
> Regards,
> Mick
>

My guess is that -msse4.2 imply also -msse1..4.1
Can someone confirm this?

Regards,
Kfir

Reply via email to