RESOLVED INVALID 113245
EWS ref-test layout difference between cr-linux and cr-linux debug
https://bugs.webkit.org/show_bug.cgi?id=113245
Summary EWS ref-test layout difference between cr-linux and cr-linux debug
Hans Muller
Reported 2013-03-25 15:35:08 PDT
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.
Attachments
Failing ref-test results (29.14 KB, application/zip)
2013-03-25 15:37 PDT, Hans Muller
no flags
Original ref-test expected.html file (1.44 KB, text/html)
2013-03-25 15:37 PDT, Hans Muller
no flags
Hans Muller
Comment 1 2013-03-25 15:37:08 PDT
Created attachment 194935 [details] Failing ref-test results
Hans Muller
Comment 2 2013-03-25 15:37:43 PDT
Created attachment 194936 [details] Original ref-test expected.html file
Zoltan Horvath
Comment 3 2014-03-27 11:32:10 PDT
Shape-inside has been removed in r166301, so closing the bug as invalid.
Note You need to log in before you can comment on or make changes to this bug.