As a note, when I tried compiling gnutls today using "-march=native"

It failed, like


$ i686-w64-mingw32-gcc test.c  -march=native
/var/folders/_s/c0kwjqxn2txglx5kdpcvmj0jb5h2bk/T//ccoQWGPg.o:test.c:(.text+0x1b):
undefined reference to `__sync_val_compare_and_swap_4'
collect2: error: ld returned 1 exit status
$
i686-w64-mingw32-gcc -march=native -Q --help=target | grep march
  -march=
$cat test.c
long cmpxchg( long* value, long comp_val, long new_val )
{
    return __sync_val_compare_and_swap( value, comp_val, new_val );
}

int main()
{
    return 0;
}

Though manually specifying seemingly "any" march works fine:

$./sandbox/cross_compilers/mingw-w64-i686/bin/i686-w64-mingw32-gcc
test.c  -march=ivybridge
$

$ i686-w64-mingw32-gcc --version
i686-w64-mingw32-gcc (GCC) 5.3.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Native gcc works OK:
$ gcc-6 -march=native -Q --help=target | grep march
  -march=                               ivybridge


Anybody know if this is expected or not?
Cheers!

------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to