Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 Feb 2019 12:02:45 -0800
From:      Mark Millard <marklmi@yahoo.com>
To:        Steve Kargl <sgk@troutmask.apl.washington.edu>
Cc:        Dimitry Andric <dim@freebsd.org>, freebsd-toolchain@freebsd.org
Subject:   Re: clang broken on current?
Message-ID:  <3357E34B-D91C-4197-86F0-9058C343CAC7@yahoo.com>
In-Reply-To: <20190210193409.GA35990@troutmask.apl.washington.edu>
References:  <20190210050003.GA31811@troutmask.apl.washington.edu> <F26ACA01-4132-4020-8089-FB862347F37E@FreeBSD.org> <20190210184656.GD35569@troutmask.apl.washington.edu> <59881520-AB59-49C3-810F-C0676C3B037C@yahoo.com> <20190210193409.GA35990@troutmask.apl.washington.edu>

next in thread | previous in thread | raw e-mail | index | archive | help


On 2019-Feb-10, at 11:34, Steve Kargl <sgk at =
troutmask.apl.washington.edu> wrote:

> Having set CFLAGS+=3D-march=3Dnative -mtune=3Dnative and trying to
> force qt5-gui configure with -sse2 option, I have a config.summary
> that contains (my in-line comments ***)
>=20
> Build type: freebsd-clang (i386, CPU features: <none>)
>=20
> *** What????? ***
>=20
> Compiler: clang 7.0.1
> Configuration: compile_examples largefile rdrnd x86SimdAlways sharedr
> rpath release c++11 c++14 concurrent dbus reduce_exports =
reduce_relocations
> stl
> Build options:
>  Mode ................................... release
>  Optimize release build for size ........ no
>  Building shared libraries .............. yes
>  Using C standard ....................... C11
>  Using C++ standard ..................... C++14
>  Using ccache ........................... no
>  Using gold linker ...................... no
>  Using precompiled headers .............. no
>  Using LTCG ............................. no
>  Target compiler supports:
>    SSE .................................. <none>
>=20
> *** That's not good. ***
>=20
>    AVX .................................. <none>
>    AVX512 ............................... <none>
>    Other x86 ............................ RDRAND
>    Intrinsics without -mXXX option ...... yes
>  Build parts ............................ libs tools


/usr/ports/Mk/Uses/qt-dist.mk has:
=20
.    if ${ARCH} =3D=3D i386 && empty(MACHINE_CPU:Msse2)
CONFIGURE_ARGS+=3D        -no-sse2
.    endif

This traces back to:

/usr/src/share/mk/bsd.cpu.mk and its:

. elif ${MACHINE_CPUARCH} =3D=3D "amd64"
MACHINE_CPU =3D amd64 sse2 sse mmx
. elif ${MACHINE_CPUARCH} =3D=3D "arm"
MACHINE_CPU =3D arm
. elif ${MACHINE_CPUARCH} =3D=3D "i386"
MACHINE_CPU =3D i486

and (I'll not list it all):

########## i386
. if ${MACHINE_CPUARCH} =3D=3D "i386"
.  if ${CPUTYPE} =3D=3D "znver1"
MACHINE_CPU =3D avx2 avx sse42 sse41 ssse3 sse4a sse3 sse2 sse mmx k6 k5 =
i586
.  elif ${CPUTYPE} =3D=3D "bdver4"
MACHINE_CPU =3D xop avx2 avx sse42 sse41 ssse3 sse4a sse3 sse2 sse mmx =
k6 k5 i586
.  elif ${CPUTYPE} =3D=3D "bdver3" || ${CPUTYPE} =3D=3D "bdver2" || \
    ${CPUTYPE} =3D=3D "bdver1"
MACHINE_CPU =3D xop avx sse42 sse41 ssse3 sse4a sse3 sse2 sse mmx k6 k5 =
i586
.  elif ${CPUTYPE} =3D=3D "btver2"
MACHINE_CPU =3D avx sse42 sse41 ssse3 sse4a sse3 sse2 sse mmx k6 k5 i586
.  elif ${CPUTYPE} =3D=3D "btver1"
MACHINE_CPU =3D ssse3 sse4a sse3 sse2 sse mmx k6 k5 i586
.  elif ${CPUTYPE} =3D=3D "amdfam10"
MACHINE_CPU =3D athlon-xp athlon k7 3dnow sse4a sse3 sse2 sse mmx k6 k5 =
i586
.  elif ${CPUTYPE} =3D=3D "opteron-sse3" || ${CPUTYPE} =3D=3D =
"athlon64-sse3"
MACHINE_CPU =3D athlon-xp athlon k7 3dnow sse3 sse2 sse mmx k6 k5 i586
.  elif ${CPUTYPE} =3D=3D "opteron" || ${CPUTYPE} =3D=3D "athlon64" || \

. . .

and:

########## amd64
. elif ${MACHINE_CPUARCH} =3D=3D "amd64"
.  if ${CPUTYPE} =3D=3D "znver1"
MACHINE_CPU =3D avx2 avx sse42 sse41 ssse3 sse4a sse3
. . .
.  endif
MACHINE_CPU +=3D amd64 sse2 sse mmx
########## Mips
. elif ${MACHINE_CPUARCH} =3D=3D "mips"


So it looks like freeBSD expects CPUTYPE to be set for i368 in order
to enable sse2 in MACHINE_CPU . Other things have a similar status
for amd64 but amd64 always has sse2 .



=3D=3D=3D
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3357E34B-D91C-4197-86F0-9058C343CAC7>