1. 11 Sep, 2015 1 commit
    • Re^4-land "Move Uniform and UBO info to the gl::Program layer." · 2ae1ee61
      Jamie Madill authored
      This data was previously stored entirely in the Impl level. Move
      as much as possible to the GL level, using a read-only view in the
      Impl level. Some information in D3D-specific, and should be stored
      separately in the Impl.
      
      This patch has a lot of refactoring that splits the D3D and GL info,
      and moves as much validation as possible to the GL layer, where it
      is shared between the back-ends.
      
      Re-land with fix for dEQP unused uniforms. The fix involves storing
      a local copy of all uniform data in the GL layer. This will also
      let us validate sampler indexes during draw calls at the GL layer.
      
      Re-re-land with a fix for multiply defined symbols on Clang.
      
      Re-re-re-land with a fix for boolean uniforms and Uniform{1234}f.
      
      Re^4-land with a fix for boolean uniform arrays and UBO uniforms.
      
      BUG=angleproject:1123
      TEST=end2end_tests, bots, dEQP GLES3.ubo and GLES2.uniform_api
      
      Change-Id: I4c9f5ed31b81380507bef7981f97086d642801ae
      Reviewed-on: https://chromium-review.googlesource.com/298451
      Tryjob-Request: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Tested-by: 's avatarJamie Madill <jmadill@chromium.org>
  2. 10 Sep, 2015 5 commits
  3. 09 Sep, 2015 12 commits
  4. 08 Sep, 2015 11 commits
  5. 07 Sep, 2015 1 commit
    • Don't evaluate short-circuited preprocessor expressions · 6ffe6135
      Olli Etuaho authored
      ESSL 3.00 spec section 3.4 mentions that the second operand in a logical
      && or || preprocessor operation is evaluated only if the first operand
      doesn't short-circuit the expression. The non-evaluated part of a
      preprocessor expression may also have undefined identifiers.
      
      Make the expression parser follow the spec by ignoring errors that are
      generated inside short-circuited expressions. This includes undefined
      identifiers and divide by zero.
      
      BUG=angleproject:347
      TEST=dEQP-GLES3.functional.shaders.preprocessor.undefined_identifiers.*
           angle_unittests
      
      Change-Id: Ieed02a71298af838f784a5d1197d4f4a9ba0e3c8
      Reviewed-on: https://chromium-review.googlesource.com/295033Reviewed-by: 's avatarZhenyao Mo <zmo@chromium.org>
      Tested-by: 's avatarOlli Etuaho <oetuaho@nvidia.com>
  6. 04 Sep, 2015 10 commits