1. 19 Jan, 2019 2 commits
  2. 18 Jan, 2019 8 commits
  3. 17 Jan, 2019 6 commits
    • Include common/platform.h where used · 5fe7c5b9
      Yuly Novikov authored
      Bug: 922443
      Change-Id: I35b9e34266d4a15f8d0769c2770801b1b0511398
      Reviewed-on: https://chromium-review.googlesource.com/c/1418091Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
    • Reland "Don't call Texture::onDestroy twice for the zero textures." · d46165e3
      Geoff Lang authored
      This reverts commit 3adcf1e4.
      
      Reason for revert: Likely not the cause of failures seen.
      
      Original change's description:
      > Revert "Don't call Texture::onDestroy twice for the zero textures."
      > 
      > This reverts commit d3e0e84c.
      > 
      > Reason for revert: likely cause for crbug.com/922296
      > 
      > BUG=chromium:922296
      > 
      > Original change's description:
      > > Don't call Texture::onDestroy twice for the zero textures.
      > > 
      > > The BindingPointer will call onDestroy when all references are removed, no
      > > need to do it explicitly.
      > > 
      > > BUG=angleproject:3070
      > > 
      > > Change-Id: Ic5dd4da8f73e204d26d9d3a3c6e1eff9fded5411
      > > Reviewed-on: https://chromium-review.googlesource.com/c/1409868
      > > Reviewed-by: Jamie Madill <jmadill@chromium.org>
      > > Commit-Queue: Geoff Lang <geofflang@chromium.org>
      > 
      > TBR=geofflang@chromium.org,jmadill@chromium.org
      > 
      > Change-Id: I38097218d49940e7ac3ad914714294b019c154fd
      > No-Presubmit: true
      > No-Tree-Checks: true
      > No-Try: true
      > Bug: angleproject:3070
      > Reviewed-on: https://chromium-review.googlesource.com/c/1413239
      > Reviewed-by: Corentin Wallez <cwallez@chromium.org>
      > Commit-Queue: Corentin Wallez <cwallez@chromium.org>
      
      TBR=geofflang@chromium.org,jmadill@chromium.org,cwallez@chromium.org
      
      # Not skipping CQ checks because original CL landed > 1 day ago.
      
      Bug: chromium:922296, angleproject:3070
      Change-Id: I58b1c445f81e4a7f38df375fd3311043b571e834
      Reviewed-on: https://chromium-review.googlesource.com/c/1417770Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Commit-Queue: Geoff Lang <geofflang@chromium.org>
    • GL: Temporarily disable parallel shader compile. · c66cd693
      Geoff Lang authored
      The Skia bots have been unable to roll ANGLE since parallel compile landed in
      ANGLE.  Speculatively disable parallel compile using a workaround.
      Failed roll: https://skia-review.googlesource.com/c/skia/+/184705
      
      Also seen instability on Linux, Mac and Windows in 922936.
      
      BUG=922936
      BUG=849576
      
      Change-Id: I7116b3f6541425135984c52a8077bdb98d961784
      Reviewed-on: https://chromium-review.googlesource.com/c/1415729Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Commit-Queue: Geoff Lang <geofflang@chromium.org>
    • Revert "Re-enable 2DArray Copy Texture Tests" · b3bdd2ac
      Jamie Madill authored
      This reverts commit 91b95ce0.
      
      Reason for revert: Tests passing in release but failing in Debug.
      
      https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Win10%20FYI%20Debug%20%28NVIDIA%29/2556
      
      [ RUN      ] Texture2DArrayCopy.SnormFormats/ES3_D3D11
      Error getting extension string from EGL Window.
      ../../third_party/angle/src/tests/test_utils/ANGLETest.cpp(493): error: Expected equality of these values:
        (0x3000)
          Which is: 12288
        eglGetError()
          Which is: 12289
      Stack trace:
      Backtrace:
      	StackTraceGetter::CurrentStackTrace [0x00AD4A9A+90]
      	testing::internal::UnitTestImpl::CurrentOsStackTraceExceptTop [0x00AEAD5A+74]
      	testing::internal::AssertHelper::operator= [0x00AEA86B+75]
      	ANGLETestBase::swapBuffers [0x00A743C0+256]
      	ANGLETestBase::ANGLETestTearDown [0x00A73817+167]
      	ANGLETest::TearDown [0x00A7671A+26]
      	angle::CopyTexture3DTest::TearDown [0x002A085D+29]
      
      [  FAILED  ] Texture2DArrayCopy.SnormFormats/ES3_D3D11, where GetParam() = ES3_D3D11 (59 ms)
      [----------] 1 test from Texture2DArrayCopy (59 ms total)
      
      [----------] 3 tests from CubeMapTextureTest
      [ RUN      ] CubeMapTextureTest.RenderToFacesConsecutively/ES2_D3D11_10_0
      Assertion failed: mState.surfaceSet.empty(), file ../../third_party/angle/src/libANGLE/renderer/DisplayImpl.cpp, line 23
      abort() has been called
      Received fatal exception EXCEPTION_BREAKPOINT
      Backtrace:
      
      Original change's description:
      > Re-enable 2DArray Copy Texture Tests
      > 
      > Re-enables 3 tests that were previously failing on Nvidia hardware on
      > D3D11. The tests seem stable after a trybot driver update.
      > 
      > Bug: angleproject:2896
      > Change-Id: I17d76a5a67fd57ba7257ef22aa5a1371bf5ed55e
      > Reviewed-on: https://chromium-review.googlesource.com/c/1308735
      > Commit-Queue: Jamie Madill <jmadill@chromium.org>
      > Reviewed-by: Jamie Madill <jmadill@chromium.org>
      
      TBR=geofflang@chromium.org,jmadill@chromium.org,brandon1.jones@intel.com
      
      # Not skipping CQ checks because original CL landed > 1 day ago.
      
      Bug: angleproject:2896
      Change-Id: I509756e8e6433fd3d04bc68a72e7cc7647485b56
      Reviewed-on: https://chromium-review.googlesource.com/c/1417771Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
    • ES31: Enable several SSBO end2end tests on D3D11 · 94d8a9a4
      Jiawei Shao authored
      This patch enables several SSBO tests on D3D11 in ANGLE end2end
      tests.
      
      Bug: angleproject:1951
      Change-Id: I1ba78133e5bbe581e8330c1c43755c174e28bf39
      Reviewed-on: https://chromium-review.googlesource.com/c/1415721Reviewed-by: 's avatarJiajia Qin <jiajia.qin@intel.com>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
    • ParallelCompile: add GL backend support · a100d8f4
      jchen10 authored
      For GL backend, at first each worker thread must have a naitve context
      for its own to work in. These worker contexts have to be shared from
      the main context, so that all shader and program objects are seen in
      any context. This extends backend displays to create and destroy the
      worker contexts. RendererGL manages and allocates them to the worker
      threads. ShaderImpl has a new compile method added to do the actual
      glCompile work in worker thread. The ProgramGL's link method is broken
      down by introducing the LinkEventGL class.
      
      Bug: chromium:849576
      
      Change-Id: Idc2c51b4b6c978781ae77810e62c480acc67ebb5
      Reviewed-on: https://chromium-review.googlesource.com/c/1373015
      Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
  4. 16 Jan, 2019 9 commits
  5. 15 Jan, 2019 7 commits
  6. 14 Jan, 2019 4 commits
  7. 11 Jan, 2019 4 commits
    • Vulkan: More Vertex Array optimizations. · c759b8b4
      Jamie Madill authored
      Inlines a number of Vulkan vertex array methods.
      
      Also changes the way vertex buffers are bound. Note that Vulkan doesn't
      support NULL buffer bindings. Thus we create an emulated NULL buffer
      to work around the problem of having gaps in the bound vertex buffers.
      This allows us to use a single bind call for ranges of vertex buffers
      even when there are gaps.
      
      Also changes how vertex array dirty bits are reset. Instead of calling
      memset to clear the affected buffers we pass a mutable pointer to the
      Vertex Array sync state. This allows us to only reset the dirty bits
      that we sync. This saves on the memory clearing time.
      
      Improves perf by about 10% in the Vulkan VBO state change test.
      
      Bug: angleproject:3014
      Change-Id: Ib7b742dff7897fc891606a652ea0b64255a24c86
      Reviewed-on: https://chromium-review.googlesource.com/c/1390360
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
    • Vulkan: Put viewport and scissor back in pipeline desc. · 633d5e69
      Jamie Madill authored
      Turns out this is much faster than using dynamic state. When we
      support multiple viewports it might be easier to use dynamic
      state since we won't need to make an overly large pipeline
      description. We could support both methods using a flag to
      indicate the viewport and/or scissor regions are invalid.
      Until then we can remove the pipeline and scissor dirty bits.
      
      Improves perf by about 15% in the Vulkan VBO state change test.
      
      Bug: angleproject:3013
      Change-Id: I4572250626a9a0f0ca3451b17e8f0de186416cae
      Reviewed-on: https://chromium-review.googlesource.com/c/1390359
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarYuly Novikov <ynovikov@chromium.org>
      Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org>
    • Vulkan: Switch to EXT_debug_utils · 5bca4fed
      Shahbaz Youssefi authored
      EXT_debug_utils is a (relatively) new extension that subsumes
      EXT_debug_report and EXT_debug_marker extensions.
      
      This change uses EXT_debut_utils (if available) to receive debug
      messages, keeping EXT_debug_report as fallback.
      
      Bug: angleproject:2798
      Change-Id: Ia6767604548704e18f8150a54d2533c0b1197841
      Reviewed-on: https://chromium-review.googlesource.com/c/1403955
      Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
      Reviewed-by: 's avatarYuly Novikov <ynovikov@chromium.org>
    • Vulkan: Squash Vertex Pipeline info. · 2450d8dd
      Jamie Madill authored
      Instead of using 8 bytes per vertex we can reduce the space used for
      the divisor to 8 bytes. For larger values than 255 we can emulate the
      divisor by unrolling the draw call. We will likely need to do this
      in any case for instanced draws when the instancing extension isn't
      available.
      
      The tighter packing will allow for us to move the viewport and scissor
      back into the pipeline description. It seems this is much faster than
      using dynamic state. Every state change that would pull in a new
      Pipeline would need the viewport and scissor re-applied. It seems
      these driver calls are costly.
      
      Does not improve perf significantly but enables future improvements.
      
      Bug: angleproject:3013
      Change-Id: I1a41c3acadc6fbd47c7a7b961c706e82f78de936
      Reviewed-on: https://chromium-review.googlesource.com/c/1390358
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarYuly Novikov <ynovikov@chromium.org>