| Summary: | [4.9/ICE] dev-qt/qtwebkit-4.8.7 - isl_val.c:290: numerator too large - QuotesData.cpp:26:13: internal compiler error: Aborted | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Karl Lindén <karl.j.linden> |
| Component: | [OLD] Library | Assignee: | Gentoo Toolchain Maintainers <toolchain> |
| Status: | RESOLVED FIXED | ||
| Severity: | minor | ||
| Priority: | Normal | ||
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
| Attachments: |
gzip compressed build.log
build log with -fraphite-identity build log with -floop-strip-mine |
||
# emerge --info '=dev-qt/qtwebkit-4.8.7::gentoo'
Portage 2.2.20 (python 3.3.5-final-0, default/linux/amd64/13.0/desktop, gcc-4.9.2, glibc-2.20-r2, 4.0.4-gentoo x86_64)
=================================================================
System Settings
=================================================================
System uname: Linux-4.0.4-gentoo-x86_64-AMD_Athlon-tm-_II_X4_640_Processor-with-gentoo-2.2
KiB Mem: 8177808 total, 65548 free
KiB Swap: 2097148 total, 2076284 free
Timestamp of repository gentoo: Fri, 29 May 2015 18:00:01 +0000
sh bash 4.3_p39
ld GNU ld (Gentoo 2.25 p1.2) 2.25
distcc 3.2rc1 x86_64-pc-linux-gnu [disabled]
app-shells/bash: 4.3_p39::gentoo
dev-java/java-config: 2.2.0::gentoo
dev-lang/perl: 5.20.2-r1::gentoo
dev-lang/python: 2.7.10::gentoo, 3.3.5-r1::gentoo, 3.4.3::gentoo
dev-util/cmake: 3.2.2::gentoo
dev-util/pkgconfig: 0.28-r3::gentoo
sys-apps/baselayout: 2.2::gentoo
sys-apps/openrc: 0.16.3::gentoo
sys-apps/sandbox: 2.6-r1::gentoo
sys-devel/autoconf: 2.13::gentoo, 2.69-r1::gentoo
sys-devel/automake: 1.11.6-r1::gentoo, 1.12.6::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils: 2.25-r1::gentoo
sys-devel/gcc: 4.8.4::gentoo, 4.9.2::gentoo
sys-devel/gcc-config: 1.8::gentoo
sys-devel/libtool: 2.4.6-r1::gentoo
sys-devel/make: 4.1-r1::gentoo
sys-kernel/linux-headers: 4.0::gentoo (virtual/os-headers)
sys-libs/glibc: 2.20-r2::gentoo
Repositories:
gentoo
location: /usr/portage
sync-type: rsync
sync-uri: rsync://rsync.gentoo.org/gentoo-portage
priority: -1000
crossdev
location: /usr/crossdev
masters: gentoo
priority: 0
lilrc
location: /home/kalle/lilrc-overlay
masters: gentoo
priority: 1
proaudio
location: /home/kalle/proaudio
masters: gentoo
priority: 2
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -O2 -fomit-frame-pointer -pipe -fno-stack-protector -floop-interchange -floop-strip-mine -floop-block -fgraphite-identity -march=amdfam10"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe -O2 -fomit-frame-pointer -pipe -fno-stack-protector -floop-interchange -floop-strip-mine -floop-block -fgraphite-identity -march=amdfam10"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS=" --binpkg-changed-deps=y --binpkg-respect-use=y --buildpkg-exclude app-emulation/virtualbox-modules --buildpkg-exclude sys-fs/vhba --buildpkg-exclude sys-kernel/* --buildpkg-exclude virtual/* --buildpkg-exclude www-client/firefox --with-bdeps=y --getbinpkg=y"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildpkg buildsyspkg candy config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news noinfo parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="rsync://192.168.0.109/gentoo-portage/ http://distfiles.gentoo.org http://ftp.df.lth.se/pub/gentoo/ rsync://ftp.df.lth.se/pub/gentoo/ http://mirror.mdfnet.se/gentoo"
LANG="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac alloca alsa amd64 aspell bindist cairo cd cdda cddb cdr consolekit cracklib crypt cups curl dri drm dssi dvd dvdr exif ffmpeg fftw flac fltk gallium gif gimp glib gmp gnuplot gnutls gstreamer gtk gtk2 gtkstyle gudev hwdb imap inotify jack javascript jit jpeg keymap ladspa lame libkms libnotify libsamplerate lv2 mad mp3 mpeg netifrc nptl ogg opengl openmp openrc orc pam pdf png qt3support qt4 qt5 readline spell ssl startup-notification subversion svg svn theora threads thunar tiff truetype udev udisks unicode usb v4l vaapi vdpau vlc vorbis webgl x264 xcb xcomposite xinerama xorg xscreensaver zlib" ABI_X86="64" ALSA_CARDS="hda-intel" CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext sse sse2 sse3 sse4_1" CURL_SSL="gnutls" ELIBC="glibc" GRUB_PLATFORMS="pc" INPUT_DEVICES="evdev" KERNEL="linux" LINGUAS="en en_GB" PYTHON_SINGLE_TARGET="python3_3" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby20 ruby22" SANE_BACKENDS="xerox_mfp" USERLAND="GNU" VIDEO_CARDS="nouveau" XFCE_PLUGINS="trash"
Unset: CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Created attachment 404306 [details]
gzip compressed build.log
Compressed to make the 30.0MB fit the 1000KB file size limit.
I can confirm it is graphite failing. It emerges fine with -floop-interchange -floop-strip-mine -floop-block -fgraphite-identity removed from CFLAGS. Can you pinpoint which flag of those 4 triggers the ICE? Created attachment 404360 [details]
build log with -fraphite-identity
The same error is triggered by -fgraphite-identity alone. Here is an xz-compressed build log.
The same ICE is also triggered with -floop-strip-mine alone but in another source file. I will post the log shortly.
Created attachment 404362 [details]
build log with -floop-strip-mine
Build log with -floop-strip-mine. The ICE occurs at another source file than with -fgraphite-identity.
Thanks. The problematic flags are now filtered for qtwebkit. 31 May 2015; Davide Pesavento <pesa@gentoo.org> qt4-build-multilib.eclass: Blacklist graphite-related flags that cause ICEs on qtwebkit (bug 550780). I'm reassigning this bug to toolchain to see if they're interested in fixing it. considering how much rewrites lto/graphite have gone through in each gcc release so far, if it works with the latest (5.1.0), i think that's all we plan on doing. The bug is not reproducible with GCC 5.1.0. if it was backported, or the fix that went into trunk identified, we can add it to 4.9, but lto/graphite aren't a priority for us currently (In reply to SpanKY from comment #10) > if it was backported, or the fix that went into trunk identified, we can add > it to 4.9, but lto/graphite aren't a priority for us currently Closing since noone has yet identified the commit / bug, and 5.4 is stable now. |
When emergeing =dev-qt/qtwebkit-4.8.7 the build fails with the following error: In file included from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/PossiblyNull.h:29:0, from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/FastMalloc.h:25, from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/WebCore/config.h:153, from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/WebCore/rendering/style/QuotesData.cpp:21: /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/StdLibExtras.h: In function 'TO WTF::bitwise_cast(FROM)': /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Assertions.h:326:47: warning: typedef 'dummyWTF_bitwise_cast_sizeof_casted_types_is_equal' locally defined but not used [-Wunused-local-typedefs] #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1] ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/StdLibExtras.h:96:5: note: in expansion of macro 'COMPILE_ASSERT' COMPILE_ASSERT(sizeof(TO) == sizeof(FROM), WTF_bitwise_cast_sizeof_casted_types_is_equal); ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/StdLibExtras.h: In function 'size_t WTF::roundUpToMultipleOf(size_t)': /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Assertions.h:326:47: warning: typedef 'dummydivisor_is_a_power_of_two' locally defined but not used [-Wunused-local-typedefs] #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1] ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/StdLibExtras.h:120:5: note: in expansion of macro 'COMPILE_ASSERT' COMPILE_ASSERT(divisor && !(divisor & (divisor - 1)), divisor_is_a_power_of_two); ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/StringHasher.h: In static member function 'static unsigned int WTF::StringHasher::hashMemory(const void*)': /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Assertions.h:326:47: warning: typedef 'dummylength_must_be_a_multible_of_four' locally defined but not used [-Wunused-local-typedefs] #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1] ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/StringHasher.h:140:9: note: in expansion of macro 'COMPILE_ASSERT' COMPILE_ASSERT(!(length % 4), length_must_be_a_multible_of_four); ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/OwnPtr.h: In member function 'bool WTF::OwnPtr<T>::operator==(const WTF::OwnPtr<U>&)': /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Assertions.h:326:47: warning: typedef 'dummyOwnPtrs_should_never_be_equal' locally defined but not used [-Wunused-local-typedefs] #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1] ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/OwnPtr.h:87:66: note: in expansion of macro 'COMPILE_ASSERT' template<typename U> bool operator==(const OwnPtr<U>&) { COMPILE_ASSERT(!sizeof(U*), OwnPtrs_should_never_be_equal); return false; } ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/OwnPtr.h: In member function 'bool WTF::OwnPtr<T>::operator!=(const WTF::OwnPtr<U>&)': /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Assertions.h:326:47: warning: typedef 'dummyOwnPtrs_should_never_be_equal' locally defined but not used [-Wunused-local-typedefs] #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1] ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/OwnPtr.h:88:66: note: in expansion of macro 'COMPILE_ASSERT' template<typename U> bool operator!=(const OwnPtr<U>&) { COMPILE_ASSERT(!sizeof(U*), OwnPtrs_should_never_be_equal); return false; } ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/OwnPtr.h: In member function 'bool WTF::OwnPtr<T>::operator==(const WTF::PassOwnPtr<U>&)': /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Assertions.h:326:47: warning: typedef 'dummyOwnPtrs_should_never_be_equal' locally defined but not used [-Wunused-local-typedefs] #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1] ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/OwnPtr.h:89:70: note: in expansion of macro 'COMPILE_ASSERT' template<typename U> bool operator==(const PassOwnPtr<U>&) { COMPILE_ASSERT(!sizeof(U*), OwnPtrs_should_never_be_equal); return false; } ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/OwnPtr.h: In member function 'bool WTF::OwnPtr<T>::operator!=(const WTF::PassOwnPtr<U>&)': /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Assertions.h:326:47: warning: typedef 'dummyOwnPtrs_should_never_be_equal' locally defined but not used [-Wunused-local-typedefs] #define COMPILE_ASSERT(exp, name) typedef int dummy##name [(exp) ? 1 : -1] ^ /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/OwnPtr.h:90:70: note: in expansion of macro 'COMPILE_ASSERT' template<typename U> bool operator!=(const PassOwnPtr<U>&) { COMPILE_ASSERT(!sizeof(U*), OwnPtrs_should_never_be_equal); return false; } ^ /var/tmp/portage/dev-libs/isl-0.14/work/isl-0.14/isl_val.c:290: numerator too large /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/WebCore/rendering/style/QuotesData.cpp: In static member function 'static WebCore::QuotesData* WebCore::QuotesData::create(int)': /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/WebCore/rendering/style/QuotesData.cpp:26:13: internal compiler error: Aborted QuotesData* QuotesData::create(int stringCount) ^ Please submit a full bug report, with preprocessed source if appropriate. See <https://bugs.gentoo.org/> for instructions. Makefile:410366: recipe for target '.obj/release-static/QuotesData.o' failed make: *** [.obj/release-static/QuotesData.o] Error 1 # emerge -pqv '=dev-qt/qtwebkit-4.8.7::gentoo' [ebuild U ] dev-qt/qtwebkit-4.8.7 [4.8.6-r1] USE="gstreamer jit (-aqua) -debug -exceptions -icu -pch" ABI_X86="(64) -32 (-x32)" The fact that isl is failing indicates that it is the graphite optimizations that fail. The workaround should be too disable the graphite optimizations. Hence, the lowered priority. I will try to confirm that it in fact is graphite that does not work. Reproducible: Always