src/compiler/OutputGLSLBase.cpp


Log

Author Commit Date CI Message
daniel@transgaming.com 773ff745 2013-01-11T04:12:51 Build fix. BUG= TEST=build fine in Linux Review URL: https://codereview.appspot.com/7071056 git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1707 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 6c1203f8 2013-01-11T04:12:43 In generated shaders, output +INF and -INF as largest single precision floating point number. C++ streams seem to use the representation 1.$ for INF and that isn't valid syntax in GLSL or HLSL. Also preserve the sign of INF in constant expressions that divide by zero. I can't figure out what to do about 0/0 because the shader models we are using do not support NaN. Treating it as +INF as before. Review URL: https://codereview.appspot.com/7057046 git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1706 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 4167cc91 2013-01-11T04:11:53 Incorporated BSD-licensed changes implementing array bounds clamping. BUG=none TEST=ran associated WebKit layout tests in Chromium Review URL: https://codereview.appspot.com/6999052 git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1701 736b8ea6-26fd-11df-bfd4-992fa37f6226
daniel@transgaming.com 0aa3b5a2 2012-11-28T19:43:24 Implement user-defined name hashing. ANGLEBUG=315 Review URL: https://codereview.appspot.com/6818109 git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1469 736b8ea6-26fd-11df-bfd4-992fa37f6226
zmo@google.com f420c424 2011-09-12T18:27:59 Add/remove more functions to use shims. Remove normalize and add cos instead to avoid a crash in Mac with ATI cards (angle bug 193, 202). Also add atan and mod as it's also buggy on Mac/Win with NVIDIA cards. Also, trying to minimize emulated functions by adding masks for fragment/vertex shaders. ANGLEBUG=196 Review URL: http://codereview.appspot.com/4992047 git-svn-id: https://angleproject.googlecode.com/svn/trunk@748 736b8ea6-26fd-11df-bfd4-992fa37f6226
zmo@google.com 32e97315 2011-08-24T01:03:11 Emulate certain buil-in functions to work around driver bugs. This is implemented by adding a new compile option SH_EMULATE_BUILT_IN_FUNCTIONS. The emulated functions are names as webgl_originalName_emu so there will never be naming conflicts. At the moment only three functions are emulated: normalize, abs, sign. Also, the compile option will emulate all three. However, the mechanism to emulate only a selected subset is also imeplemented. It can be turned on easily. ANGLEBUG=196 TEST=with this option, the failed test with abs.frag passes. Review URL: http://codereview.appspot.com/4916043 git-svn-id: https://angleproject.googlecode.com/svn/trunk@738 736b8ea6-26fd-11df-bfd4-992fa37f6226
kbr@chromium.org 57f7ce00 2011-08-15T23:13:05 Output the precision for the return type in function declarations. Tested with GLSL ES conformance suite (which doesn't test this) and the WebGL conformance suite, which now contains tests to ensure that these constructs compile correctly. Chromium bug: http://crbug.com/86952 Review URL: http://codereview.appspot.com/4897045 git-svn-id: https://angleproject.googlecode.com/svn/trunk@731 736b8ea6-26fd-11df-bfd4-992fa37f6226
zmo@google.com 189be2f1 2011-06-16T18:28:53 Emit precisions in function arguments and return type for GLES2. BUG=none TEST=Translator with GLES2 output backend emit precisions for function arguments and return type. Review URL: http://codereview.appspot.com/4643042 git-svn-id: https://angleproject.googlecode.com/svn/trunk@694 736b8ea6-26fd-11df-bfd4-992fa37f6226
zmo@google.com 5601ea0d 2011-06-10T18:23:25 Implement ES2 backend for Angle translator. With this CL, we have the option to select a code output backend: GLSL, GLSL ES, or HLSL. Note that we always emit the highest supported float precision for fragment shader due to anglebug 168. Although this is a temporary solution, it's not against GLSL ES spec, because it's ok for implementation to upgrade precision. Tested with WebGL conformance test suite, GLES2 conformance test suite (only failed 2/1198), and a few webgl demos, including worlds of webgl, aquarium, etc. anglebug=81 test=translator emitting correct GLSL ES code when ES2 backend is selected. Review URL: http://codereview.appspot.com/4550129 git-svn-id: https://angleproject.googlecode.com/svn/trunk@687 736b8ea6-26fd-11df-bfd4-992fa37f6226