Closed
Bug 610945
Opened 15 years ago
Closed 15 years ago
layout/reftests/svg/filters/feSpecularLighting-1.svg seems to fail on opt Linux 32-bit
Categories
(Core :: SVG, defect)
Core
SVG
Tracking
()
RESOLVED
FIXED
mozilla2.0b8
People
(Reporter: heycam, Assigned: heycam)
Details
Attachments
(2 files, 1 obsolete file)
31.93 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
32.23 KB,
patch
|
Details | Diff | Splinter Review |
http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1289370425.1289371094.2597.gz
Only two pixels different, on the top-right and bottom-left corners of the hole cut out of the path whose edges are lit by the filter.
Assignee | ||
Updated•15 years ago
|
Assignee: nobody → cam
Status: NEW → ASSIGNED
Comment 1•15 years ago
|
||
Pending further investigation, I marked this test as random-on-linux (since it passed on 64-bit linux, & passed on a debug 32-bit linux build on tryserver):
http://hg.mozilla.org/mozilla-central/rev/f174fb3f8e59
Version: unspecified → Trunk
Assignee | ||
Comment 2•15 years ago
|
||
A sqrt call in the filter calculations results in a different value on Linux 32-bit opt vs debug. On opt it's using the fsqrt instruction (80-bit FPU instruction), while on debug it's calling libc's sqrt() function, which calls fsqrt and does a bunch of other stuff which I assume is to account for the excess precision that must be discarded if working in a strict IEEE 754 way.
I'd say both renderings are within the bounds of "correct". roc and I discussed what to do with this, including doing some threshold checking specifically in the test, including the currently-failing image and having it used for Linux 32-bit opt, or papering over the relevant pixels. I'm going to go with the second option.
Assignee | ||
Comment 3•15 years ago
|
||
After some more discussions I'm going with the papering-over-the-pixels approach. Checking for particular differences in calculations on different platforms will probably be too fragile.
Assignee | ||
Comment 4•15 years ago
|
||
This just changes the test to draw small black rects over the troublesome areas.
Attachment #490718 -
Flags: review?(roc)
Comment 5•15 years ago
|
||
Comment on attachment 490718 [details] [diff] [review]
Make reftests/svg/filters/feSpecularLighting-1.svg pass on all platforms (v1)
>diff --git a/layout/reftests/svg/filters/feSpecularLighting-1.svg b/layout/reftests/svg/filters/feSpecularLighting-1.svg
> <rect width='100' height='100' fill='blue'/>
> <path d='M0,0 h100 v100 h-100 z M20,20 v60 h60 v-60 z' filter='url(#f)'/>
>+ <rect x='78' y='18' width='4' height='4'/>
>+ <rect x='18' y='78' width='4' height='4'/>
> </svg>
Might be worth adding a comment to the test, just before these added rects, saying something like:
<!-- Cover two spots in the test whose rendering differs
in opt builds vs. debug builds (see Bug 610945). -->
Assignee | ||
Comment 6•15 years ago
|
||
(In reply to comment #5)
> Might be worth adding a comment to the test, just before these added rects,
> saying something like:
> <!-- Cover two spots in the test whose rendering differs
> in opt builds vs. debug builds (see Bug 610945). -->
Yes, good idea.
Assignee | ||
Comment 7•15 years ago
|
||
Add in the comment.
Attachment #490718 -
Attachment is obsolete: true
Attachment #490720 -
Flags: review?(roc)
Attachment #490718 -
Flags: review?(roc)
Attachment #490720 -
Flags: review?(roc) → review+
Assignee | ||
Comment 8•15 years ago
|
||
Assignee | ||
Updated•15 years ago
|
Keywords: checkin-needed
Comment 9•15 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → mozilla2.0b8
You need to log in
before you can comment on or make changes to this bug.
Description
•