If I run gcc -fverbose-asm -mtune=native -march=native -S x.c

I get
cat x.s:
       .file   "x.c"
# GNU C (GCC) version 4.4.0 20090506 (Red Hat 4.4.0-4) (x86_64-redhat-linux)
#       compiled by GNU C version 4.4.0 20090506 (Red Hat 4.4.0-4), GMP
version 4.2.4, MPFR version 2.4.1.
# GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
# options passed:  x.c -march=core2 -mcx16 -msahf --param l1-cache-size=32
# --param l1-cache-line-size=64 --param l2-cache-size=2048 -mtune=core2
# -fverbose-asm
# options enabled:  -falign-loops -fargument-alias
...................
# -mfp-ret-in-387 -mfused-madd -mglibc -mieee-fp -mmmx -mno-sse4
# -mpush-args -mred-zone -msahf -msse -msse2 -msse3 -mssse3
............

cat /proc/cpuinfo:

flags           : .....sse sse2 .... ssse3 .... sse4_1 ...

It appears that since the cpu doesn't support both sse4.1 and sse4.2, gcc
march-native disables sse4 altogether. Obviously, -msse4.1 -mno-sse4.2 would be
better.


-- 
           Summary: march-native gives -mno-sse4, but cpuinfo sse4_1
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: seandarcy2 at gmail dot com
 GCC build triplet: x86_64-redhat-linux
  GCC host triplet: x86_64-redhat-linux
GCC target triplet: x86_64-redhat-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40266

Reply via email to