OpenGL ES 2.0 does not require that an implementation support high precision in the fragment shader. So, high precision declaration should be guarded using a preprocessor macro.
Created attachment 251228 [details] Patch
CC'ing Brent, Zan
Comment on attachment 251228 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=251228&action=review > Source/WebCore/ChangeLog:7 > + I think you need to describe what is problem, what is fixed here. > Source/WebCore/ChangeLog:8 > + I believe this patch cannot be tested because we need a hardware that is not supporting I'm not expert in this area though, it looks some tests are testing *highp float* type. e.g) http://trac.webkit.org/browser/trunk/LayoutTests/fast/canvas/webgl/texture-complete.html
Created attachment 251417 [details] Patch
Thank you for reviewing. I've uploaded a new patch which includes a modified test.
Created attachment 260154 [details] Patch
Created attachment 260159 [details] Patch
Created attachment 260161 [details] Patch
(In reply to comment #3) > Comment on attachment 251228 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=251228&action=review > > > Source/WebCore/ChangeLog:7 > > + > > I think you need to describe what is problem, what is fixed here. > > > Source/WebCore/ChangeLog:8 > > + I believe this patch cannot be tested because we need a hardware that is not supporting > > I'm not expert in this area though, it looks some tests are testing *highp > float* type. > > e.g) > http://trac.webkit.org/browser/trunk/LayoutTests/fast/canvas/webgl/texture- > complete.html I noticed that some webgl tests have the same highp precision bugs in itself. I'll file another bug for this later.
(In reply to comment #5) > Thank you for reviewing. > I've uploaded a new patch which includes a modified test. There is no modified test anymore. webgl tests were ignored and will be filed as a bug later.
Comment on attachment 260161 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=260161&action=review > Source/WebCore/ChangeLog:15 > + Test: css1/basic/containment.html If you did not add a new test, usually the way to say that is simply: No new tests, covered by existing tests.
Created attachment 260287 [details] Patch
(In reply to comment #11) > Comment on attachment 260161 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=260161&action=review > > > Source/WebCore/ChangeLog:15 > > + Test: css1/basic/containment.html > > If you did not add a new test, usually the way to say that is simply: > > No new tests, covered by existing tests. Thanks for reviewing! I've modified as you suggested.
Is there a way to detect this at runtime or via the headers?
(In reply to comment #14) > Is there a way to detect this at runtime or via the headers? I believe this is already detecting the highp precision supports at runtime, I mean when shaders are being compiled. Khronos suggests to use GL_FRAGMENT_PRECISION_HIGH macro like this. #ifdef GL_FRAGMENT_PRECISION_HIGH precision highp float; #else precision mediump float; #endif https://www.khronos.org/webgl/wiki/WebGL_and_OpenGL_Differences
Comment on attachment 260287 [details] Patch Oh, thanks. I understand now. This seems totally reasonable.
Comment on attachment 260287 [details] Patch Clearing flags on attachment: 260287 Committed r189331: <http://trac.webkit.org/changeset/189331>
All reviewed patches have been landed. Closing bug.