Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Apr 2017 11:55:04 -0700
From:      Mark Millard <markmi@dsl-only.net>
To:        FreeBSD Toolchain <freebsd-toolchain@freebsd.org>, FreeBSD Ports <freebsd-ports@freebsd.org>
Cc:        FreeBSD Current <freebsd-current@freebsd.org>, freebsd-amd64@freebsd.org
Subject:   amd64 head -r317015 system clang 4.0 crashes during qt5-widgets "checking" activity: "Wrong prefetch hint in intrinsic: should be 0 or 1" (avx512.cpp)
Message-ID:  <61B01D71-933E-454B-8878-C021CC93DF43@dsl-only.net>

next in thread | raw e-mail | index | archive | help
[ports -r438577 with devel/*binutils reverted to 2.27 via -r436731 .]

The qr5-widgets build attempt reported:

checking for avx512cd...=20
clang++ -c -pipe -O2 -g -fstack-protector -fno-strict-aliasing =
-mavx512cd -g -Wall -W -fPIC -DAVX512WANT=3DCD -I. -I/usr/local/include =
-I/usr/local/lib/qt5/mkspecs/freebsd-clang -o avx512.o avx512.cpp
clang++  -o avx512 avx512.o   -L/usr/local/lib
avx512cd enabled.
checking for avx512pf...=20
clang++ -c -pipe -O2 -g -fstack-protector -fno-strict-aliasing =
-mavx512pf -g -Wall -W -fPIC -DAVX512WANT=3DPF -I. -I/usr/local/include =
-I/usr/local/lib/qt5/mkspecs/freebsd-clang -o avx512.o avx512.cpp
Assertion failed: (HintVal < 2 && "Wrong prefetch hint in intrinsic: =
should be 0 or 1"), function LowerINTRINSIC_W_CHAIN, file =
/usr/src/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp, line 19956.
clang++: ESC[0;1;31merror: ESC[0munable to execute command: Abort trap =
(core dumped)ESC[0m
clang++: ESC[0;1;31merror: ESC[0mclang frontend command failed due to =
signal (use -v to see invocation)ESC[0m
FreeBSD clang version 4.0.0 (tags/RELEASE_400/final 297347) (based on =
LLVM 4.0.0)
Target: x86_64-unknown-freebsd12.0
Thread model: posix
InstalledDir: /usr/bin
clang++: ESC[0;1;30mnote: ESC[0mdiagnostic msg: PLEASE submit a bug =
report to https://bugs.freebsd.org/submit/ and include the crash =
backtrace, preprocessed source, and associated run script.ESC[0m
clang++: ESC[0;1;30mnote: ESC[0mdiagnostic msg:=20
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located =
at:ESC[0m
clang++: ESC[0;1;30mnote: ESC[0mdiagnostic msg: =
/tmp/avx512-258133.cppESC[0m
clang++: ESC[0;1;30mnote: ESC[0mdiagnostic msg: =
/tmp/avx512-258133.shESC[0m
clang++: ESC[0;1;30mnote: ESC[0mdiagnostic msg:=20

********************ESC[0m
*** Error code 254

Stop.
make[2]: stopped in =
/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensour=
ce-src-5.7.1/config.tests/common/avx512


# more /tmp/avx512-258133.sh
# Crash reproducer for FreeBSD clang version 4.0.0 =
(tags/RELEASE_400/final 297347) (based on LLVM 4.0.0)
# Driver args: "--driver-mode=3Dg++" "-c" "-pipe" "-O2" "-g" =
"-fstack-protector" "-fno-strict-aliasing" "-mavx512pf" "-g" "-Wall" =
"-W" "-fPIC" "-D" "AVX512WANT=3DPF" "-I" "." "-I" "/usr/local/include" =
"-I" "/usr/local/lib/qt5/mkspecs/freebsd-clang" "-o" "avx512.o" =
"avx512.cpp"
# Original command:  "/usr/bin/clang++" "-cc1" "-triple" =
"x86_64-unknown-freebsd12.0" "-emit-obj" "-disable-free" =
"-main-file-name" "avx512.cpp" "-mrelocation-model" "pic" "-pic-level" =
"2" "-mthread-model" "posix" "-mdisable-fp-elim" "-relaxed-aliasing" =
"-masm-verbose" "-mconstructor-aliases" "-munwind-tables" "-target-cpu" =
"x86-64" "-target-feature" "+avx512pf" "-dwarf-column-info" =
"-debug-info-kind=3Dstandalone" "-dwarf-version=3D2" =
"-debugger-tuning=3Dgdb" "-coverage-notes-file" =
"/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensou=
rce-src-5.7.1/config.tests/common/avx512/avx512.gcno" "-resource-dir" =
"/usr/bin/../lib/clang/4.0.0" "-D" "AVX512WANT=3DPF" "-I" "." "-I" =
"/usr/local/include" "-I" "/usr/local/lib/qt5/mkspecs/freebsd-clang" =
"-internal-isystem" "/usr/include/c++/v1" "-O2" "-Wall" "-W" =
"-fdeprecated-macro" "-fdebug-compilation-dir" =
"/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensou=
rce-src-5.7.1/config.tests/common/avx512" "-ferror-limit" "19" =
"-fmessage-length" "80" "-stack-protector" "1" "-fobjc-runtime=3Dgnustep" =
"-fcxx-exceptions" "-fexceptions" "-fdiagnostics-show-option" =
"-fcolor-diagnostics" "-vectorize-loops" "-vectorize-slp" "-o" =
"avx512.o" "-x" "c++" "avx512.cpp"
 "/usr/bin/clang++" "-cc1" "-triple" "x86_64-unknown-freebsd12.0" =
"-emit-obj" "-disable-free" "-main-file-name" "avx512.cpp" =
"-mrelocation-model" "pic" "-pic-level" "2" "-mthread-model" "posix" =
"-mdisable-fp-elim" "-relaxed-aliasing" "-masm-verbose" =
"-mconstructor-aliases" "-munwind-tables" "-target-cpu" "x86-64" =
"-target-feature" "+avx512pf" "-dwarf-column-info" =
"-debug-info-kind=3Dstandalone" "-dwarf-version=3D2" =
"-debugger-tuning=3Dgdb" "-coverage-notes-file" =
"/usr/obj/portswork/usr/ports/x11-toolkits/qt5-widgets/work/qtbase-opensou=
rce-src-5.7.1/config.tests/common/avx512/avx512.gcno" "-D" =
"AVX512WANT=3DPF" "-O2" "-Wall" "-W" "-fdeprecated-macro" =
"-ferror-limit" "19" "-fmessage-length" "80" "-stack-protector" "1" =
"-fobjc-runtime=3Dgnustep" "-fcxx-exceptions" "-fexceptions" =
"-fdiagnostics-show-option" "-fcolor-diagnostics" "-vectorize-loops" =
"-vectorize-slp" "-x" "c++" "avx512-258133.cpp"


Unfortunately the /tmp/avx512-258133.cpp is somewhat over
2 MiBytes and so it not appropriate here.

(Note: I got to this via trying to build x11/lumina .)



As for build environment details/oddities for my context:

# more /etc/make.conf=20
WANT_QT_VERBOSE_CONFIGURE=3D1
#
DEFAULT_VERSIONS+=3Dperl5=3D5.24
WRKDIRPREFIX=3D/usr/obj/portswork
#
# =46rom a local /usr/ports/Mk/bsd.port.mk extension:
ALLOW_OPTIMIZATIONS_FOR_WITH_DEBUG=3D
#
.if ${.CURDIR:M*/devel/*llvm*}
#WITH_DEBUG=3D
.elif ${.CURDIR:M*/www/webkit-qt5*}
#WITH_DEBUG=3D
.else
WITH_DEBUG=3D
.endif
WITH_DEBUG_FILES=3D
MALLOC_PRODUCTION=3D

# svnlite diff /usr/ports/Mk/
Index: /usr/ports/Mk/bsd.port.mk
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- /usr/ports/Mk/bsd.port.mk	(revision 436747)
+++ /usr/ports/Mk/bsd.port.mk	(working copy)
@@ -1646,7 +1646,11 @@
 STRIP_CMD=3D	${TRUE}
 .endif
 DEBUG_FLAGS?=3D	-g
+.if defined(ALLOW_OPTIMIZATIONS_FOR_WITH_DEBUG)
+CFLAGS:=3D		${CFLAGS} ${DEBUG_FLAGS}
+.else
 CFLAGS:=3D		${CFLAGS:N-O*:N-fno-strict*} ${DEBUG_FLAGS}
+.endif
 .if defined(INSTALL_TARGET)
 INSTALL_TARGET:=3D	${INSTALL_TARGET:S/^install-strip$/install/g}
 .endif

# svnlite info /usr/ports/devel/binutils
Path: /usr/ports/devel/binutils
Working Copy Root Path: /usr/ports
URL: svn://svn0.us-west.freebsd.org/ports/head/devel/binutils
Relative URL: ^/head/devel/binutils
Repository Root: svn://svn0.us-west.freebsd.org/ports
Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
Revision: 436731
Node Kind: directory
Schedule: normal
Last Changed Author: bdrewery
Last Changed Rev: 434651
Last Changed Date: 2017-02-22 15:33:44 -0800 (Wed, 22 Feb 2017)

# svnlite diff /usr/src/contrib/llvm/
Index: /usr/src/contrib/llvm/tools/lld/ELF/Target.cpp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- /usr/src/contrib/llvm/tools/lld/ELF/Target.cpp	(revision =
315914)
+++ /usr/src/contrib/llvm/tools/lld/ELF/Target.cpp	(working copy)
@@ -1070,7 +1070,8 @@
 }
=20
 PPC64TargetInfo::PPC64TargetInfo() {
-  PltRel =3D GotRel =3D R_PPC64_GLOB_DAT;
+  GotRel =3D R_PPC64_GLOB_DAT;
+  PltRel =3D R_PPC64_JMP_SLOT;
   RelativeRel =3D R_PPC64_RELATIVE;
   GotEntrySize =3D 8;
   GotPltEntrySize =3D 8;

(So TARGET_ARCH=3Dpowerpc64 tied.)



=3D=3D=3D
Mark Millard
markmi at dsl-only.net




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?61B01D71-933E-454B-8878-C021CC93DF43>