1. 18 Nov, 2016 4 commits
    • Framebuffer: Fix getDepthStencilAttachment check. · 44f26482
      Jamie Madill authored
      The check should be using the newer operator== to check if attachments
      are the same - the id() method will hit an UNREACHABLE if it's called
      on a Surface attachment.
      
      I noticed this when using this method in the Vulkan RenderPass
      implementation.
      
      BUG=angleproject:1583
      
      Change-Id: I387b35805893d04003b22a1c7c9c12fc41c726ce
      Reviewed-on: https://chromium-review.googlesource.com/412801Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
    • Use ShaderVars instead of ShaderLang in headers. · 861ebb3b
      Jamie Madill authored
      We only need the typed variable information in our header files.
      The entry point and other enum info can be encapsulated better
      in the cpp files that call through to the translator. The only
      tricky one is the compile options, which we return from our
      implementation - put the typedef for these in the ShaderVars
      header to fix this.
      
      This should partially work around the problem of shaderlang
      for Vulkan and ANGLE's translator (also ShaderLang) using some
      identifiers with the same names.
      
      BUG=angleproject:1576
      
      Change-Id: I43c530486498c210796b9e197a6780bf2f7b3afb
      Reviewed-on: https://chromium-review.googlesource.com/412423Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
    • Fix GLSL float parsing corner cases · 99bd5f40
      Olli Etuaho authored
      This fixes parsing floats that are out-of-range, and floats that have
      more digits than the standard library float parsing functions can
      handle. In these cases, we now fall back to a custom implementation of
      float parsing. The custom parsing path can correctly process floats
      with up to hundreds of millions of digits in their mantissa part.
      
      Rounding behavior of the custom float parser may not be entirely
      consistent with the standard parser, but the error should be at most
      a few ULP. This can be considered acceptable since floating point
      operations are not expected to be exact in GLSL in general. Settling
      for lower accuracy also enables the parser to run in constant memory,
      instead of having to store all the significant digits of the decimal
      mantissa being parsed.
      
      BUG=angleproject:1613
      TEST=angle_unittests
      
      Change-Id: I04a5d9ae5aaca48ef14b79cca5b997078614eb1c
      Reviewed-on: https://chromium-review.googlesource.com/412082
      Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    • TextureGL: track the currently applied state. · 3377f51e
      Corentin Wallez authored
      Use it to implement lazy state setting methods for texture filters and
      swizzle that will be used in subsequent workarounds.
      
      BUG=angleproject:1356
      
      Change-Id: Ia58267c4f125262cf57fbd98438a6d8eb8a04b33
      Reviewed-on: https://chromium-review.googlesource.com/412404Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Commit-Queue: Corentin Wallez <cwallez@chromium.org>
  2. 17 Nov, 2016 5 commits
  3. 16 Nov, 2016 3 commits
  4. 15 Nov, 2016 6 commits
  5. 14 Nov, 2016 4 commits
  6. 11 Nov, 2016 10 commits
  7. 10 Nov, 2016 3 commits
  8. 09 Nov, 2016 1 commit
  9. 08 Nov, 2016 4 commits