Build failure in jsdtoa when optimizing gcc-3.2 build for pentium4 CPU

RESOLVED INVALID

Status

()

Core
JavaScript Engine
RESOLVED INVALID
15 years ago
13 years ago

People

(Reporter: Robert Kaiser, Assigned: Kenton Hanson (gone))

Tracking

Trunk
x86
Linux
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [GCC3.2+ Bug introduced Thu Dec 13 12:31:07 CET 2001 Jan Hubicka <jh@suse.cz>], URL)

(Reporter)

Description

15 years ago
As I now switched to building Mozilla with gcc-3.2, I tried to optimize the
builds some more.
Previously, I built with --enable-optimize="-O2 -march=i686 -mcpu=pentiumpro"
and this also built fine with gcc-3.2
As I changed to --enable-optimize="-O2 -march=pentium4 -mcpu=pentium4 -msse2
-mfpmath=sse" the build broke (error follows).
I tried again, leaving the sse options alone but with only "-O2 -march=pentium4
-mcpu=pentium4" it still failed. Going back to "-O2 -march=i686
-mcpu=pentiumpro" it compiled again.

Here are the error messages when the build failed:

gcc -o jsdtoa.o -c -DOSTYPE=\"Linux2.4\" -DOSARCH=\"Linux\" -DOJI
-DEXPORT_JS_API  -DJS_USE_SAFE_ARENA   -I../../dist/include/js
-I../../dist/include -I/home/robert/temp/mozilla/src/mozilla/dist/include/nspr 
    -I. -I/usr/X11R6/include   -fPIC -I/usr/X11R6/include -Wall -W -Wno-unused
-Wpointer-arith -Wcast-align -pedantic -Wno-long-long -pthread -pipe  -DNDEBUG
-DTRIMMED -ffunction-sections -O2 -march=pentium4 -mcpu=pentium4 -msse2 
-I/usr/X11R6/include -include ../../mozilla-config.h -DMOZILLA_CLIENT
-Wp,-MD,.deps/jsdtoa.pp jsdtoa.c
jsdtoa.c: In function `ulp':
jsdtoa.c:987: warning: `a' might be used uninitialized in this function
jsdtoa.c: In function `b2d':
jsdtoa.c:1018: warning: `d' might be used uninitialized in this function
jsdtoa.c: In function `JS_strtod':
jsdtoa.c:1239: warning: `rv0' might be used uninitialized in this function
jsdtoa.c:1874: unable to find a register to spill in class `AREG'
jsdtoa.c:1874: this is the insn:
(insn:QI 1996 1995 1997 (set (reg:CCNO 17 flags)
        (compare:CCNO (and:SI (subreg:SI (reg/v:DI 21 rxmm0 [284]) 0)
                (const_int 1 [0x1]))
            (const_int 0 [0x0]))) 281 {testsi_1} (insn_list 1992 (nil))
    (expr_list:REG_DEAD (reg/v:DI 21 rxmm0 [284])
        (nil)))
jsdtoa.c:1874: confused by earlier errors, bailing out
gmake[4]: *** [jsdtoa.o] Fehler 1
gmake[4]: Verlassen des Verzeichnisses
»/home/robert/temp/mozilla/src/mozilla/js/src«

Comment 1

15 years ago
Here are other bugs, both new and old, with "jsdtoa" in the Summary.
Cc'ing people from some of these -

bug 119314   Mac   NEW
JS assertion in jsdtoa.c when built with CodeWarrior Pro 7.1 compilers
bug 138741   All   NEW
Inline functions in jsdtoa.c for performance
bug 145493   PC    VERIFIED FIXED
Assert in PR_Unlock (called from jsdtoa.c:1681)
bug 85267    All   VERIFIED FIXED
memory leak in jsdtoa.c
bug 138666   PC    VERIFIED FIXED
Another Memory Leak in jsdtoa.c
bug 54307    All   VERIFIED FIXED
jsdtoa.c - InitDtoa does not destroy locks
bug 14044    All   VERIFIED FIXED
jsdtoa.c doesn't check for out-of-memory
Assignee: rogerl → khanson

Comment 2

15 years ago
Other checkins may be found at the bonsai reference for the file:

  http://bonsai.mozilla.org/cvslog.cgi?file=mozilla/js/src/jsdtoa.c
Summary: Build failure in jsdtoa when optimizing ggc-3.2 build for pentium4 CPU → Build failure in jsdtoa when optimizing gcc-3.2 build for pentium4 CPU

Comment 3

15 years ago
Have you tried gcc 3.2.1? It has lots of bugfixes, especially this one seem
interesting concerning this:
7630	GCC 3.2 breaks on Mozilla 1.0's JS sources with -march=pentium4
(Reporter)

Comment 4

15 years ago
Torbjörn:
Thanks for telling about that. I won't be able to try and upgrade as long as
SuSE doesn't ship me a gcc-3.2.1 rpm package. It's too much time and too much
pain for me to build such central packages of the system myself...
OK, so I hope to see it being resolved as soon as SuSE gives me something new...
*** Bug 185624 has been marked as a duplicate of this bug. ***

Comment 6

15 years ago
I compiled it myself now, and it is not fixed in gcc 3.2.1.
So I opened a gnats bug for this:
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=8994

Updated

15 years ago
Whiteboard: [GCC3.2+ Bug introduced Thu Dec 13 12:31:07 CET 2001 Jan Hubicka <jh@suse.cz>]

Comment 7

14 years ago
This is fixed in gcc 3.3, released a year ago.

Comment 8

13 years ago
Please close this, gcc 3.2 is obsolete.
(Reporter)

Comment 9

13 years ago
OK, closing it myself as INVA, it's been no Mozilla bug.
I've actually been building SeaMonkey with gcc 3.3.x and those optimizations for
quite some time now, and it works perfectly.
Status: NEW → RESOLVED
Last Resolved: 13 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.