[Webkit-unassigned] [Bug 113245] New: EWS ref-test layout difference between cr-linux and cr-linux debug

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Mar 25 15:32:41 PDT 2013


https://bugs.webkit.org/show_bug.cgi?id=113245

           Summary: EWS ref-test layout difference between cr-linux and
                    cr-linux debug
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Tools / Tests
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: giles_joplin at yahoo.com


The original ref-test for https://bugs.webkit.org/show_bug.cgi?id=112592 failed on the cr-linux EWS bot, but not on cr-linux-debug because of an off-by-one layout difference. None of the other test-running bots reported a failure. The source of the trouble appears to be computeShapePaddingBounds() function in rendering/ExclusionPolygon.cpp, which computes a linear approximation to a circular arc which is used to compute the left position of a line that fits within a padded exclusion polygon. The code computes line intersections, unit vectors, sines and cosines (and so on) in a way that apparently exposes a small difference between the cr-linux and cr-linux-debug environments.

Potential sources for this problem were discussed by leviw, carewolf, rniwa esprehn, and others on IRC. It was pointed out that x86 has both 64bit (SSE2?) and 80 bit registers, and so optimized computuations may see extra precision. "Forcing the bots to use SSE math, using gcc -mpmath=see" might improve consistency.

It seems equally likely that the ExclusionPolygon code is the culprit. I have not (yet) tried to debug the problem with a Linux build.

I'll attach the original ref-test, shape-inside-polygon-padding-003-expected.html, and test failure report, results.zip.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list