<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>65327</bug_id>
          
          <creation_ts>2004-09-25 08:55 0000</creation_ts>
          <short_desc>ocaml-3.08.1 fails with -O3 on gcc 3.4</short_desc>
          <delta_ts>2004-10-20 11:04:20 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Applications</component>
          <version>unspecified</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>liquidx@gentoo.org</reporter>
          <assigned_to>ml@gentoo.org</assigned_to>
          <cc>gcc-porting@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>liquidx@gentoo.org</who>
            <bug_when>2004-09-25 08:55:10 0000</bug_when>
            <thetext>make[1]: Entering directory `/var/tmp/portage/ocaml-3.08.1/work/ocaml-3.08.1/otherlibs/num&apos;
gcc -O -I../../byterun -fno-defer-pop -Wall -D_FILE_OFFSET_BITS=64 -D_REENTRANT -march=pentium3 -O3 -pipe -fno-stack-protector -fPIC -DBNG_ARCH_ia32 -DBNG_ASM_LEVEL=2   -c -o bng.o bng.c
bng_ia32.c: In function `bng_ia32_mult_add_digit&apos;:
bng_ia32.c:111: error: can&apos;t find a register in class `GENERAL_REGS&apos; while reloading `asm&apos;
make[1]: *** [bng.o] Error 1
make[1]: Leaving directory `/var/tmp/portage/ocaml-3.08.1/work/ocaml-3.08.1/otherlibs/num&apos;
make: *** [otherlibraries] Error 2 

similar problem to here: 

http://forums.gentoo.org/viewtopic.php?p=1579854#1579854

other apps are also experiencing this to varying degree:
http://lists.gnu.org/archive/html/qemu-devel/2004-07/msg00433.html

I added a replace-flags -O3 -O2 to the ebuild locally, but i suspect there isn&apos;t much to be done except to be aware of the problem if we are using gcc 3.4</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mattam@gentoo.org</who>
            <bug_when>2004-09-27 12:50:15 0000</bug_when>
            <thetext>Exactly, the code is already hand-tuned to get the most of x86&apos;s reduced register space. I don&apos;t see the flag handling in the ebuild actually, you can commit it.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>3.14159@gmx.net</who>
            <bug_when>2004-10-11 11:55:10 0000</bug_when>
            <thetext>i still have this problem,the ebuild also has no replace-flags....</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mattam@gentoo.org</who>
            <bug_when>2004-10-11 13:43:54 0000</bug_when>
            <thetext>It should have, i&apos;ll add it tomorrow, in the mean time you can build with CFLAGS=&quot;&quot;.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mattam@gentoo.org</who>
            <bug_when>2004-10-12 12:37:39 0000</bug_when>
            <thetext>I added strip-flags which removes -O3 and other quite untested flags.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>carsten@tschense.net</who>
            <bug_when>2004-10-20 10:07:29 0000</bug_when>
            <thetext>&quot;strip-flags&quot; doesn&apos;t remove -O3. Still the same ;)
Use &quot;replace-flags -O? -O2&quot;</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mattam@gentoo.org</who>
            <bug_when>2004-10-20 11:04:20 0000</bug_when>
            <thetext>I fixed that in CVS, now closing the bug :)</thetext>
          </long_desc>
      
    </bug>

</bugzilla>