1. 31 May, 2017 2 commits
    • ES31: Implement binding layout for uniform blocks · af713a24
      jchen10 authored
      The binding point of uniform blocks can be specified in shaders with
      this CL. See spec ESSL 3.10, section 4.4.4, page 58 for more info.
      
      dEQP-GLES31.functional.ubo.* still can't completely pass as
      the missing of arrays-of-arrays feature. Neither can
      dEQP-GLES31.functional.layout_binding.ubo.* due to the incomplete
      implementation of program interface APIs.
      
      TEST=angle_end2end_tests:UniformBufferTest
      BUG=angleproject:1442
      
      Change-Id: If95d468fc109834a132b9b817730d3fdc3a615da
      Reviewed-on: https://chromium-review.googlesource.com/483848
      Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
      Commit-Queue: Corentin Wallez <cwallez@chromium.org>
      Reviewed-by: 's avatarOlli Etuaho <oetuaho@nvidia.com>
      Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
    • Initialize uninitialized globals in GLSL output · 0ffc441e
      Olli Etuaho authored
      Initializing globals is done by the DeferGlobalInitializers AST
      transformation, which makes sure that the global variable init
      proceeds in the correct order. This is important since some global
      variables may use other uninitialized globals in their initializers.
      
      The global variable init is only done in case the WebGL shader spec is
      being followed. This avoids adding global initializers twice in case
      the same shader goes through multiple translations, assuming only one
      of them is a WebGL shader translation.
      
      BUG=angleproject:1966
      TEST=angle_end2end_tests, WebGL conformance tests
      
      Change-Id: Iea701d3ae40edc906abd87303f2aa27fd23bf55a
      Reviewed-on: https://chromium-review.googlesource.com/509689
      Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
  2. 30 May, 2017 3 commits
  3. 29 May, 2017 9 commits
  4. 26 May, 2017 3 commits
  5. 25 May, 2017 3 commits
  6. 24 May, 2017 12 commits
  7. 23 May, 2017 1 commit
  8. 22 May, 2017 1 commit
  9. 19 May, 2017 4 commits
  10. 18 May, 2017 2 commits
    • Fix names of some crashing shader tests. · bb580b1b
      Kenneth Russell authored
      The names were wrong, so the test expectations weren't applying.
      
      BUG=722345
      
      Change-Id: Ic64abf08e512dbf3c297ee89a74b614cd4590b58
      Reviewed-on: https://chromium-review.googlesource.com/508166Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Commit-Queue: Kenneth Russell <kbr@chromium.org>
    • D3D11: Add resource manager classes. · 403c1682
      Jamie Madill authored
      The resource manager tracks the allocations and deallocations of all
      D3D11 resources that have device memory: Buffers and Textures (which
      are either 2D or 3D). It also tracks the number of active Views (DSV,
      RTV, and SRV, potentially UAV with ES 3.1).
      
      A new smart pointer type will wrap the resource deallocation so that
      the object notifies the manager when ANGLE is done with the resouce.
      This allows us to track precisely how much GPU memory we think we're
      using at any point, and will help prevent resource leaks for these
      object types. It also makes initialization and releasing much more
      trivial.
      
      The base class for a resource uses a template template parameter so
      that we can use a unique or shared pointer depending on if the object
      in question needs unique or shared ownership. For some resources
      (in our case, SRVs are shared between the TextureStorage11 and
      RenderTarget11 classes, and Textures are shared in many places) we
      need to have the ability to have shared ownership. Unique ownership is
      a little bit more efficient so supporting both can be helpful.
      
      In this patch RenderTargetView allocation is moved to use the unique
      smart pointer.
      
      BUG=angleproject:2034
      
      Change-Id: Idb1245c24cd66733b8b5ca524c727350b2d2c745
      Reviewed-on: https://chromium-review.googlesource.com/503248
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>