Closed Bug 289326 Opened 19 years ago Closed 19 years ago

hangs when clicking on "Satellite" link

Categories

(Core :: JavaScript Engine, defect)

Other
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: davidm, Unassigned)

References

()

Details

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (X11; U; Linux ia64; en-US; rv:1.7.6) Gecko/20050325 Firefox/1.0.2 (Debian package 1.0.2-1)
Build Identifier: Mozilla/5.0 (X11; U; Linux ia64; en-US; rv:1.7.6) Gecko/20050325 Firefox/1.0.2 (Debian package 1.0.2-1)

The ia64 version of mozilla (and mozilla-firefox) hang when clicking on the
"Satellite" link at http://maps.google.com.  This trivial patch fixes the problem:

--- js/src/fdlibm/fdlibm.h-orig	2005-04-06 10:42:12.000000000 -0700
+++ js/src/fdlibm/fdlibm.h	2005-04-06 10:42:13.000000000 -0700
@@ -61,7 +61,7 @@
 #define __LITTLE_ENDIAN
 #endif
 
-#if defined(linux) && (defined(__i386__) || defined(__x86_64__))
+#if defined(linux) && (defined(__i386__) || defined(__x86_64__)) || defined(__ia64)
 #define __LITTLE_ENDIAN
 #endif
 


Reproducible: Always

Steps to Reproduce:
1. Use mozilla{,-firefox} and visit maps.google.com
2. Click on "Satellite"

Actual Results:  
Browser hangs (with period pop-ups warning about the javascript slowing down
mozilla).


Expected Results:  
Display satellite image.
Status: UNCONFIRMED → NEW
Ever confirmed: true
From the look of the patch, I'm not sure if that would be wise to bloat the
Mozilla code further if we add the "defined(__ia64)" since we already the Linux
one, "defined(linux)" or the defined(__x86_64__) whatever that is for the "ia64"...
(In reply to comment #1)
> From the look of the patch, I'm not sure if that would be wise to bloat the
> Mozilla code further if we add the "defined(__ia64)" since we already the Linux
> one, "defined(linux)" or the defined(__x86_64__) whatever that is for the
"ia64"...

Sorry, my patch is actually wrong, since the defined(__ia64) should be inside
the previous parens (not all ia64-platforms are little-endian, Linux and Windows
are, but HP-UX is big-endian).  Here is an updated patch:

--- js/src/fdlibm/fdlibm.h-orig	2005-04-06 10:42:12.000000000 -0700
+++ js/src/fdlibm/fdlibm.h	2005-04-06 10:42:13.000000000 -0700
@@ -61,7 +61,7 @@
 #define __LITTLE_ENDIAN
 #endif
 
-#if defined(linux) && (defined(__i386__) || defined(__x86_64__))
+#if defined(linux) && (defined(__i386__) || defined(__x86_64__) || defined(__ia64))
 #define __LITTLE_ENDIAN
 #endif

I hope this finds your approval.

Thanks.
David: please attach your patch (using Create a New Attachment) and request review
Attachment #180146 - Flags: review?
Attachment #180146 - Flags: review? → review?(brendan)
Comment on attachment 180146 [details] [diff] [review]
patch as an attachment

Argh, why isn't fdlibm using IS_LITTLE_ENDIAN?	Cuz it's a contributed-from-Sun
lib, I guess.

/be
Attachment #180146 - Flags: review?(brendan) → review+
Attachment #180146 - Flags: superreview?(shaver)
Comment on attachment 180146 [details] [diff] [review]
patch as an attachment

sr=shaver
Attachment #180146 - Flags: superreview?(shaver) → superreview+
Attachment #180146 - Flags: approval1.8b2?
(In reply to comment #5)
> (From update of attachment 180146 [details] [diff] [review] [edit])
> Argh, why isn't fdlibm using IS_LITTLE_ENDIAN?	Cuz it's a contributed-from-Sun
> lib, I guess.

As far as I know, the glibc math library is 100% compatible to fdlibm.  If so,
it might be a good idea to just use the system libm on Linux.  Not only would
that avoid ugly ifdefs, it probably would also perform much better for most
architectures (definitely for ia64, but probably also for x86{,-64} and most
others).
Comment on attachment 180146 [details] [diff] [review]
patch as an attachment

a=asa
Attachment #180146 - Flags: approval1.8b2? → approval1.8b2+
Checked in by request of Matti
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
Flags: testcase-
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: