Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 347105 - media-libs/xine-lib not building with gcc-4.4.4-r2
Summary: media-libs/xine-lib not building with gcc-4.4.4-r2
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Media-video project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-11-29 02:19 UTC by Tiago Marques
Modified: 2011-01-27 21:56 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tiago Marques 2010-11-29 02:19:59 UTC
Can only build it with GCC-4.1.2, yet 4.4.4 is now stable. Thoughts?

------------------------------------------

/bin/sh ../../../../libtool  --tag=CC   --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../../../../include -I../../../.. -I../../../../include -I../../../../include -I../../../../src -I../../../../src/xine-engine -I../../../../src/xine-engine -I../../../../src/xine-utils  -I../../../../src/input -I../../../../src/input  -I../../../../lib -I../../../../lib   -fvisibility=hidden -I../../../../src/post/deinterlace -I../../../../src/xine-utils -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE  -O2 -pipe -march=i686 -mtune=athlon-xp -funroll-loops -ftree-vectorize -frename-registers -ffunction-sections -Wall -Wchar-subscripts -Wnested-externs -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wmissing-format-attribute -Wno-pointer-sign -Wformat=2 -Wno-format-zero-length -Wstrict-aliasing=2 -Werror=implicit-function-declaration -DNDEBUG -c -o libdeinterlaceplugins_la-vfir.lo `test -f 'vfir.c' || echo './'`vfir.c
libtool: compile:  i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../../../../include -I../../../.. -I../../../../include -I../../../../include -I../../../../src -I../../../../src/xine-engine -I../../../../src/xine-engine -I../../../../src/xine-utils -I../../../../src/input -I../../../../src/input -I../../../../lib -I../../../../lib -fvisibility=hidden -I../../../../src/post/deinterlace -I../../../../src/xine-utils -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -O2 -pipe -march=i686 -mtune=athlon-xp -funroll-loops -ftree-vectorize -frename-registers -ffunction-sections -Wall -Wchar-subscripts -Wnested-externs -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wmissing-format-attribute -Wno-pointer-sign -Wformat=2 -Wno-format-zero-length -Wstrict-aliasing=2 -Werror=implicit-function-declaration -DNDEBUG -c vfir.c  -fPIC -DPIC -o .libs/libdeinterlaceplugins_la-vfir.o
/bin/sh ../../../../libtool  --tag=CC   --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../../../../include -I../../../.. -I../../../../include -I../../../../include -I../../../../src -I../../../../src/xine-engine -I../../../../src/xine-engine -I../../../../src/xine-utils  -I../../../../src/input -I../../../../src/input  -I../../../../lib -I../../../../lib   -fvisibility=hidden -I../../../../src/post/deinterlace -I../../../../src/xine-utils -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE  -O2 -pipe -march=i686 -mtune=athlon-xp -funroll-loops -ftree-vectorize -frename-registers -ffunction-sections -Wall -Wchar-subscripts -Wnested-externs -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wmissing-format-attribute -Wno-pointer-sign -Wformat=2 -Wno-format-zero-length -Wstrict-aliasing=2 -Werror=implicit-function-declaration -DNDEBUG -c -o libdeinterlaceplugins_la-weave.lo `test -f 'weave.c' || echo './'`weave.c
libtool: compile:  i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../../../../include -I../../../.. -I../../../../include -I../../../../include -I../../../../src -I../../../../src/xine-engine -I../../../../src/xine-engine -I../../../../src/xine-utils -I../../../../src/input -I../../../../src/input -I../../../../lib -I../../../../lib -fvisibility=hidden -I../../../../src/post/deinterlace -I../../../../src/xine-utils -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -O2 -pipe -march=i686 -mtune=athlon-xp -funroll-loops -ftree-vectorize -frename-registers -ffunction-sections -Wall -Wchar-subscripts -Wnested-externs -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wmissing-format-attribute -Wno-pointer-sign -Wformat=2 -Wno-format-zero-length -Wstrict-aliasing=2 -Werror=implicit-function-declaration -DNDEBUG -c weave.c  -fPIC -DPIC -o .libs/libdeinterlaceplugins_la-weave.o
/bin/sh ../../../../libtool  --tag=CC   --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../../../../include -I../../../.. -I../../../../include -I../../../../include -I../../../../src -I../../../../src/xine-engine -I../../../../src/xine-engine -I../../../../src/xine-utils  -I../../../../src/input -I../../../../src/input  -I../../../../lib -I../../../../lib   -fvisibility=hidden -I../../../../src/post/deinterlace -I../../../../src/xine-utils -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE  -O2 -pipe -march=i686 -mtune=athlon-xp -funroll-loops -ftree-vectorize -frename-registers -ffunction-sections -Wall -Wchar-subscripts -Wnested-externs -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wmissing-format-attribute -Wno-pointer-sign -Wformat=2 -Wno-format-zero-length -Wstrict-aliasing=2 -Werror=implicit-function-declaration -DNDEBUG -c -o libdeinterlaceplugins_la-greedy2frame.lo `test -f 'greedy2frame.c' || echo './'`greedy2frame.c
libtool: compile:  i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../../../../include -I../../../.. -I../../../../include -I../../../../include -I../../../../src -I../../../../src/xine-engine -I../../../../src/xine-engine -I../../../../src/xine-utils -I../../../../src/input -I../../../../src/input -I../../../../lib -I../../../../lib -fvisibility=hidden -I../../../../src/post/deinterlace -I../../../../src/xine-utils -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -O2 -pipe -march=i686 -mtune=athlon-xp -funroll-loops -ftree-vectorize -frename-registers -ffunction-sections -Wall -Wchar-subscripts -Wnested-externs -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wmissing-format-attribute -Wno-pointer-sign -Wformat=2 -Wno-format-zero-length -Wstrict-aliasing=2 -Werror=implicit-function-declaration -DNDEBUG -c greedy2frame.c  -fPIC -DPIC -o .libs/libdeinterlaceplugins_la-greedy2frame.o
In file included from greedy2frame.c:51:
greedy2frame_template.c: In function 'DeinterlaceGreedy2Frame_SSE':
greedy2frame_template.c:185: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
greedy2frame_template.c:185: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
greedy2frame_template.c:185: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
greedy2frame_template.c:185: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
greedy2frame_template.c:185: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
greedy2frame_template.c:185: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
greedy2frame_template.c:185: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
greedy2frame_template.c:185: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
greedy2frame_template.c:185: error: 'asm' operand has impossible constraints
greedy2frame_template.c:201: error: 'asm' operand has impossible constraints
make[4]: *** [libdeinterlaceplugins_la-greedy2frame.lo] Error 1
make[4]: Leaving directory `/var/tmp/portage/media-libs/xine-lib-1.1.18.1/work/xine-lib-1.1.18.1/src/post/deinterlace/plugins'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/var/tmp/portage/media-libs/xine-lib-1.1.18.1/work/xine-lib-1.1.18.1/src/post/deinterlace'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/media-libs/xine-lib-1.1.18.1/work/xine-lib-1.1.18.1/src/post'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/media-libs/xine-lib-1.1.18.1/work/xine-lib-1.1.18.1/src'
make: *** [all-recursive] Error 1
emake failed
 * ERROR: media-libs/xine-lib-1.1.18.1 failed:
 *   emake failed
 *
 * Call stack:
 *     ebuild.sh, line   56:  Called src_compile
 *   environment, line 2731:  Called _eapi2_src_compile
 *     ebuild.sh, line  654:  Called die
 * The specific snippet of code:
 *              emake || die "emake failed"
 *
 * If you need support, post the output of 'emerge --info =media-libs/xine-lib-1.1.18.1',
 * the complete build log and the output of 'emerge -pqv =media-libs/xine-lib-1.1.18.1'.
 * The complete build log is located at '/var/tmp/portage/media-libs/xine-lib-1.1.18.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-libs/xine-lib-1.1.18.1/temp/environment'.
 * S: '/var/tmp/portage/media-libs/xine-lib-1.1.18.1/work/xine-lib-1.1.18.1'


Reproducible: Always
Comment 1 Davide Pesavento (RETIRED) gentoo-dev 2010-11-29 22:06:51 UTC
I cannot reproduce. Post your emerge --info please.
Comment 2 Rüpel 2010-11-30 14:56:30 UTC
I'm having the exact same issue, but i'm still at gcc-4.4.3-r2.
Comment 3 Rüpel 2010-11-30 15:47:56 UTC
(In reply to comment #2)
> I'm having the exact same issue, but i'm still at gcc-4.4.3-r2.

I just fixed the issue for me by changing my CFLAGS in /etc/make.conf from

  CFLAGS="-O3 -march=athlon-xp -funroll-loops -fprefetch-loop-arrays -pipe"

to

  CFLAGS="-O1"

Just changing -O3 to -O2 didn't have any effect. So I guess it's related to -O2 or any of the other flags (or a combination of them). I leave it up to people with more insight to debug this even further... ;)
Comment 4 Tiago Marques 2010-12-01 17:29:31 UTC
-O1 also worked for me, I usually use -O2, which I think is the recommended setting. Am I wrong?

Best regards
Comment 5 Tiago Marques 2010-12-08 23:57:24 UTC
Can you please add the -O1 filtering to the ebuild?

Best regards,
Tiago
Comment 6 Jeroen Roovers (RETIRED) gentoo-dev 2010-12-09 19:16:40 UTC
(In reply to comment #1)
> I cannot reproduce. Post your emerge --info please.

...
Comment 7 Tiago Marques 2010-12-09 21:58:16 UTC
Sorry, thought that another person providing a fix that also worked for me would be enough. You're saying that GCC 4.4 with -O2 works for you?

Best regards,
Tiago

# emerge --info
Portage 2.1.9.24 (default/linux/x86/10.0/desktop/kde, gcc-4.4.4, glibc-2.11.2-r3, 2.6.34-gentoo-r12 i686)
=================================================================
System uname: Linux-2.6.34-gentoo-r12-i686-AMD_Athlon-tm-_64_Processor_3200+-with-gentoo-1.12.14
Timestamp of tree: Wed, 01 Dec 2010 02:15:01 +0000
app-shells/bash:     4.1_p7
dev-java/java-config: 1.3.7::<unknown repository>, 2.1.11-r1
dev-lang/python:     2.4.6, 2.5.4-r2, 2.6.5-r3, 3.1.2-r4
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 1.12.14-r1
sys-apps/sandbox:    2.3-r1
sys-devel/autoconf:  2.13::<unknown repository>, 2.65-r1
sys-devel/automake:  1.4_p6::<unknown repository>, 1.5::<unknown repository>, 1.6.3::<unknown repository>, 1.7.9-r1::<unknown repository>, 1.8.5-r3::<unknown repository>, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       3.4.4-r1::<unknown repository>, 4.1.2, 4.3.4, 4.4.4-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.30-r1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="*"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=i686 -mtune=athlon-xp -funroll-loops -ftree-vectorize"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=i686 -mtune=athlon-xp -funroll-loops -ftree-vectorize"
DISTDIR="/tmp/distfiles"
FEATURES="assume-digests binpkg-logs distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://darkstar.ist.utl.pt/gentoo"
LANG="pt_PT@euro"
LC_ALL="pt_PT@euro"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="pt_BR pt pt_PT"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/kde-sunset"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa arts artswrappersuid asf berkdb bluetooth branding browserplugin bzip2 cairo cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emboss encode exif fam firefox flac fortran gdbm gif gpm hal iconv ipv6 jpeg kde lcms ldap libnotify mad mikmod mmx mng modules mozilla mp3 mp4 mpeg mplayer mppe-mppc mudflap ncurses nls nptl nptlonly ogg opengl openmp oss pam pango pcre pdf perl png ppds pppd python qt3 qt3support quicktime readline samba scanner sdl session spell sse ssl startup-notification svg sysfs tcpd tiff truetype unicode usb userlocales vorbis wifi win32codecs x264 x86 xcb xine xml xmms xorg xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="pt_BR pt pt_PT" PHP_TARGETS="php5-2" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, MAKEOPTS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 8 Jeroen Roovers (RETIRED) gentoo-dev 2010-12-10 17:56:40 UTC
(In reply to comment #7)
> Sorry, thought that another person providing a fix that also worked for me
> would be enough. You're saying that GCC 4.4 with -O2 works for you?

Filtering -O3 might be a fix.

> CFLAGS="-O2 -pipe -march=i686 -mtune=athlon-xp -funroll-loops -ftree-vectorize"

You could figure out which option is causing the problem by removing each -O2 optimisation in turn and seeing when it stops breaking. Going from -O3 (+ extras) to -O1 is too large of a jump.
Comment 9 Samuli Suominen (RETIRED) gentoo-dev 2010-12-10 18:01:22 UTC
gcc 4.4, x86 and -ftree-vectorize is pretty much same as killing the box intentionally (bug 270120)
Comment 10 Rüpel 2010-12-10 22:10:39 UTC
(In reply to comment #9)
> gcc 4.4, x86 and -ftree-vectorize is pretty much same as killing the box
> intentionally (bug 270120)

I never had -ftree-vectorize in my settings.

But it looks kind of strange, that both of us have the "athlon-xp" flag. Maybe it's related to some "-O2 on athlon-xp" thingy? 

Just guessing ... 
Comment 11 Rüpel 2010-12-28 20:01:37 UTC
I don't see this bug as resolved. Lately I was upgrading to xine-lib 1.19 and still got the same annoying bug with the same strange workaround. xine-lib cannot be build with my CFLAGS. As stated above, the thing standing out seems to be an optimization level of -O2 (or higher) combined with an -mtune/-march=athlonxp flag.

I would think that upstream folks should have a look at this.


Here's my emerge --info

Portage 2.1.9.25 (default/linux/x86/10.0/desktop/kde, gcc-4.4.4, glibc-2.11.2-r3, 2.6.36-gentoo-r5 i686)
=================================================================
System uname: Linux-2.6.36-gentoo-r5-i686-AMD_Athlon-TM-_XP_2600+-with-gentoo-1.12.14
Timestamp of tree: Tue, 28 Dec 2010 07:00:01 +0000
app-shells/bash:     4.1_p7
dev-java/java-config: 2.1.11-r1
dev-lang/python:     2.6.6-r1, 3.1.2-r4
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 1.12.14-r1
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.13::<unknown repository>, 2.65-r1
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.4-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.30-r1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="*"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O3 -march=athlon-xp -funroll-loops -fprefetch-loop-arrays -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /var/qmail/alias /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O3 -march=athlon-xp -funroll-loops -fprefetch-loop-arrays -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/"
LC_ALL="de_DE@euro"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"                                                                                                                                          
LINGUAS="de"                                                                                                                                                               
MAKEOPTS="-j2"                                                                                                                                                             
PKGDIR="/usr/portage/packages"                                                                                                                                             
PORTAGE_CONFIGROOT="/"                                                                                                                                                     
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"                                                                                                                                                        
PORTAGE_TMPDIR="/var/tmp"                                                                                                                                                  
PORTDIR="/usr/portage"                                                                                                                                                     
PORTDIR_OVERLAY="/usr/local/portage"                                                                                                                                       
SYNC="rsync://rsync.gentoo.org/gentoo-portage"                                                                                                                             
USE="3dnow X a52 aac acl acpi alsa apache2 arts audiofile bash-completion berkdb bluetooth bootsplash branding bzip2 cairo cddb cdparanoia cdr cli consolekit cpdflib cracklib crypt cups cxx dba dbus dri dts dv dvd emboss encode ethereal exif fam fbcon festival ffmpeg firefox flac foomaticdb fortran gd gdbm gdu gif gkrellm glitz gnokii gnutls gphoto2 gpm gtk hardenedphp iconv icq imagemagick imap ipv6 java jbig jpeg jpeg2k kde lcms libnotify lm_sensors mad maildir mbrola mhash mikmod mime mmx mng modules mozdevelop mozilla mp3 mp4 mpeg mpi mplayer mudflap musicbrainz mysql ncurses nls nptl nptlonly nvidia ogg opengl openmp openssh pam pango pcre pdf pear-db perl php plasma plotutils png policykit ppds pppd python qt3support qt4 readline scanner sdl semantic-desktop session sms sndfile snmp speex spell sse ssl startup-notification svg sysfs tcpd theora tidy tiff truetype udev unicode usb vhosts vim-with-x vorbis webdav win32codecs wmf wxwindows x264 x86 xcb xcomposite xine xml xorg xpm xscreensaver xulrunner xv xvid zlib" ALSA_CARDS="via82xx" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard kbd mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nv nvidia vesa fbdev" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"                                                                                                       
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 12 Samuli Suominen (RETIRED) gentoo-dev 2010-12-28 20:12:35 UTC
(In reply to comment #11)
> I don't see this bug as resolved. Lately I was upgrading to xine-lib 1.19 and
> still got the same annoying bug with the same strange workaround. xine-lib
> cannot be build with my CFLAGS. As stated above, the thing standing out seems
> to be an optimization level of -O2 (or higher) combined with an
> -mtune/-march=athlonxp flag.
> 
> I would think that upstream folks should have a look at this.
> CFLAGS="-O3 -march=athlon-xp -funroll-loops -fprefetch-loop-arrays -pipe"

-O is optimization level, and -O3 enables -ftree-vectorize.  to use -O3 on x86 you need at least -fno-tree-vectorize passed after.   -O2 is highly recommended.

that said, you can check the difference and find out the specific flag causing the problem.   for example:

gcc -Q --help=optimize -march=athlon-xp -O2 > O2.tmp
gcc -Q --help=optimize -march=athlon-xp -O3 > O3.tmp
diff -u O2.tmp O3.tmp

some output...

diff -u O2.tmp O3.tmp | grep tree-vectorize
-  -ftree-vectorize            		[disabled]
+  -ftree-vectorize            		[enabled]
Comment 13 Samuli Suominen (RETIRED) gentoo-dev 2010-12-28 20:18:33 UTC
(In reply to comment #12)
> to be an optimization level of -O2 (or higher) combined with an

right, so diff between -O1 and -O2 if -O1 works.

gcc -Q --help=optimize -march=athlon-xp -O1 > O1.tmp
gcc -Q --help=optimize -march=athlon-xp -O2 > O2.tmp

Comment 14 Samuli Suominen (RETIRED) gentoo-dev 2010-12-28 20:19:26 UTC
use sane cflags, people
Comment 15 Rüpel 2010-12-28 21:12:31 UTC
(In reply to comment #14)
> use sane cflags, people

Thanks! I stripped my CFLAGS down to bare "-O2 -march=athlon-xp" for now. I'll see if things go smoother. The time this system was set up (summer 2003), -O3 *was* considered "sane" - not conservative I admit, yet still not insane. ;)

Comment 16 Riseon 2011-01-27 21:56:11 UTC
I had this problem and solved it by changing my CFLAGS from

CFLAGS="-march=native -O2 -pipe -funroll-loops"
CHOST="i686-pc-linux-gnu"


to 
CFLAGS="-march=native -O2 -pipe"

So i didn't have to go to O1