RESOLVED FIXED Bug 83520
getShaderFormatPrecision should return sensible values
https://bugs.webkit.org/show_bug.cgi?id=83520
Summary getShaderFormatPrecision should return sensible values
Zhenyao Mo
Reported 2012-04-09 16:14:11 PDT
Originally the values are copied from chromium port, which are wrong. It's already fixed in chromium side. Now we need to also fix it for mac and qt port. (Also, I reverted my changes to the khronos conformance test so it's checking again whether the returned values are sensible)
Attachments
Patch (6.41 KB, patch)
2012-04-09 16:47 PDT, Zhenyao Mo
no flags
Patch (8.32 KB, patch)
2012-04-09 17:55 PDT, Zhenyao Mo
kbr: review+
webkit.review.bot: commit-queue-
Archive of layout-test-results from ec2-cr-linux-01 (6.28 MB, application/zip)
2012-04-09 23:05 PDT, WebKit Review Bot
no flags
Zhenyao Mo
Comment 1 2012-04-09 16:47:30 PDT
Zhenyao Mo
Comment 2 2012-04-09 16:48:59 PDT
Ken, please have a look. The value returns here are documented in the GLES 2 spec, and they are also used by chromium port. Also, the test is already updated in khronos (it was there in the first place, then I deleted them because we return negative values, now I reverted my change).
Kenneth Russell
Comment 3 2012-04-09 17:36:11 PDT
Comment on attachment 136341 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=136341&action=review > LayoutTests/fast/canvas/webgl/shader-precision-format.html:56 > +shouldBeTrue('shaderPrecisionFormat.rangeMax >=0 && shaderPrecisionFormat.rangeMax <= 128'); Are these two values wise? What would happen on a graphics card that supports double-precision floating-point values internally? I think that the conformance test should at least allow for that possibility.
Zhenyao Mo
Comment 4 2012-04-09 17:38:14 PDT
(In reply to comment #3) > (From update of attachment 136341 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=136341&action=review > > > LayoutTests/fast/canvas/webgl/shader-precision-format.html:56 > > +shouldBeTrue('shaderPrecisionFormat.rangeMax >=0 && shaderPrecisionFormat.rangeMax <= 128'); > > Are these two values wise? What would happen on a graphics card that supports double-precision floating-point values internally? I think that the conformance test should at least allow for that possibility. I don't know how they come up with the upper limit. I checked the spec, I only see the minimum requirement for each value. I'll update the conformance test and do another sync.
Zhenyao Mo
Comment 5 2012-04-09 17:55:20 PDT
Zhenyao Mo
Comment 6 2012-04-09 17:56:31 PDT
Updated the khronos conformance test due to GLES shading language spec sec 4.5, then synced to LayoutTests. Please have another look.
Kenneth Russell
Comment 7 2012-04-09 18:41:34 PDT
Comment on attachment 136355 [details] Patch Thanks, the test looks a lot better. r=me
WebKit Review Bot
Comment 8 2012-04-09 23:05:43 PDT
Comment on attachment 136355 [details] Patch Attachment 136355 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/12376173 New failing tests: platform/chromium/virtual/gpu/fast/canvas/webgl/shader-precision-format.html fast/canvas/webgl/shader-precision-format.html
WebKit Review Bot
Comment 9 2012-04-09 23:05:49 PDT
Created attachment 136403 [details] Archive of layout-test-results from ec2-cr-linux-01 The attached test failures were seen while running run-webkit-tests on the chromium-ews. Bot: ec2-cr-linux-01 Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'> Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Zhenyao Mo
Comment 10 2012-04-10 10:25:20 PDT
Note You need to log in before you can comment on or make changes to this bug.