Configured with: /var/tmp/portage/gcc-3.2-r1/work/gcc-3.2/configure --prefix=/usr --mandir=/usr/share/man -infodir=/usr/share/info --enable-shared --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --target=i686-pc-gnu --with-system-zlib -enable-languages=c,c++,ada,f77,abjc,java --enable-threads=posix --enable-long-long --disable-checking --enable-cstdio=stdio --enable-clocale=generic --enable-__cxa_atexit --enable-version-specific-runtime-libs --withgxx-include-dir=/ust/include/g++-v32 --with-local-prefix=/usr/local --enable-shared --enable0nls --without-included-gettext Thread model: posix gcc version 3.2 CFLAGS=-march=pentium4 -O3 -pipe -fprefetch-loop=arrays -falign-functions=4 -funroll-loops -fomit-frame-pointer -fstrict-aliasing -momit-leaf-frame-pointer -fforce-addr CXXFLAGS=-march=pentium4 -O3 -pipe -fprefetch-loop=arrays -falign-functions=4 -funroll-loops -fomit-frame-pointer -fstrict-aliasing -momit-leaf-frame-pointer -fforce-addr Info from /proc/cpuinfo cpu family :15 model :2 model name :Intel(R) Pentium(R) 4 Mobile CPU 1.60Ghz stepping :4 In kdeaddons/noatun-plugins/tyler/compute.c i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. _I../.. -I/usr/kde/3/include -I/usr/qt/3/include -I/usr/X11R6/include -I/usr/nclude/SDL -D_REENTRANT -DQT_THREAD_SUPPORT -D_REENTRANT -DNDEBUG -O2 -march=pentium4 -O3 -pipe -fprefetch-loop=arrays -falign-functions=4 -funroll-loops -fomit-frame-pointer -fstrict-aliasing -momit-leaf-frame-pointer -fforce-addr -c `test -f compute.c !! echo ' ./' `compute.c compute.c: In function `generate_sector': compute.c:175: unable to find a register to spill in class 'FLOAT_REGS' compute.c:175: this is the insn: (insn 187 184 189 (set (reg:DF 9 st(1) [117]) (float_extend:DF (subreg:SF (reg/v:DI rxmm0 [82]) 0))) 133 {*extendsfdf2_1} (nil) (nil)) compute.c:175: confused by earlier errors, bailing out make: *** [compute.o] Error 1 The work around for this is to not include the flag -march=pentium4, or to include the flag -mno-sse2 This allows the make to complete succesfully. Notes: The whole system (i.e everying this file includes) is built with the same flags. Unless the flag is flitered by gentoo's portage. Desovered which flag to omit by removing one flag at a time and rerunning the make (after a make clean). This bug has been reproduced by royger of IRC. royger@bdftech.com
This error occurs on a P4 using GCC3.2 installed using the 1.2 iso and the .1.4 tbz2 stage 1.
I see this is kdeaddons-3.0.3; could you please try 3.1-beta1, or even the cvs ebuilds at www.gentoo.org/~danarmak/kde-cvs.html, to see if this is fixed in current cvs? Also, since you have lots f other stuff in CFLAGS, it may be that not -march=pentium4 but the combination of it with one of the other flags is the cause of the problem. Could you try compiling it with nothing but -march=pentium4? (I don't know how far you got with removing flags one by one) The solution would be to filter the flag or combination of flags in the ebuild. If/when there's an interesting response to the bug you submitted to bugs.kde.org (#47572 - I saw it on the kdemultimedia ml), please tell about it here too.
Yes I thought it could be so of those flags as well. But I went though and removed each one. And tryied it. It only happened with the pentium4 tag. I also thought that it may have been caused by a previous package that had been complied with those flags. But today on irc (just before I submitted the bug) the name I mentioned before had the same error. He was building with -march=pentium4 -O3 -pipe and still had the same error. I will try the 3.1-beta builds (not really wanting cvs on my laptop :) ) once I've got my laptop fully installed as I just wiped it. ( Got it about 2 weeks ago and am playing ). Will post any respons from kde here. Also is it a good idea to report this to gcc or not?
I don't think this is a gcc bug. At least, wait to see if it's fixed in beta1. If it isn't and the kde guys don't come up with any other good explanation, maybe then.
I think disabling sse2 would be a smaller impact on performance than disabling march=pentium4 altogether, so I did that (only if -march=pentium4 is set of course). Committed to cvs, please test that it does what it's supposed to do (since I don't have a p4 handy :-)
I got some feed back from the kde team basicly they said its a gcc bug. I will try the new ebuilds and beta1. But they asked me to report it to the gcc team ( so I am going to have some fun saving the temps *.i :) ). Below is what they said This is a gcc bug. Please report it to the gcc developers. thank you, -- Neil Stevens - neil@qualityassistant.com Not every enlighting but never mind.
I have this problem to, please try it with -O2 instead of -O3 and report back. -O2 works for me, maybe it also does for you.
Hi I've tryied the new ebuild. It works. Am going to try manually building the source so that I can get the *.i files for the gcc team. And also to try -O2 instead of -O3. TO see what happens. Thanks.
problem still occurs with -O2 instead of -O3 (built indepdant of the ebuild to test) have submitted a gcc bug report.