Log

Author Commit Date CI Message
Yuly Novikov 0253940d 2020-01-09T15:30:22 Add UWP bots winuwp-x64-dbg and winuwp-x64-rel CI and Try bots. Bug: angleproject:3928 Change-Id: Ifc54f6daae1090f9c68be6edcd8b1a069f0c5fc2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1993691 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll c792a6ba 2020-01-10T07:01:43 Roll third_party/vulkan-validation-layers/src ac72777ef763..c17344df6cca (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/ac72777ef763..c17344df6cca git log ac72777ef763..c17344df6cca --date=short --first-parent --format='%ad %ae %s' 2020-01-09 petr_kraus@email.cz scripts: Report unassigned VUIDs in stats 2020-01-09 petr_kraus@email.cz scripts: Add best practices tests to stats Created with: gclient setdep -r third_party/vulkan-validation-layers/src@c17344df6cca If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I670cc25dee3714a451636bfa1e66145d8f77181f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1994252 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll dcc57015 2020-01-10T07:01:41 Roll third_party/SwiftShader 77c89ff847b6..110236f3ce70 (5 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/77c89ff847b6..110236f3ce70 git log 77c89ff847b6..110236f3ce70 --date=short --first-parent --format='%ad %ae %s' 2020-01-09 sugoi@google.com Enable filtering depth+stencil formats 2020-01-09 bclayton@google.com Kokoro: Disable ASAN for debug mac builds 2020-01-09 bclayton@google.com SpirvShader: Move extension list out of for loop. 2020-01-09 bclayton@google.com C++14: Use std::make_unique where possible. 2020-01-09 swiftshader.regress@gmail.com Regres: Update test lists @ 77c89ff8 Created with: gclient setdep -r third_party/SwiftShader@110236f3ce70 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: Ibe4bccbad9c9f306953164aa7c0faf8c778ba68c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1994251 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Kenneth Russell 12ce8f68 2020-01-03T16:40:06 Upstream WebKit's iOS port of ANGLE. Added the EAGL backend authored by Dean Jackson from Apple, and the refactoring changes needed to support it side-by-side with the macOS backend. Ran "git cl format" against these diffs. Defined the EGL_ANGLE_device_eagl extension and allocated an enum out of ANGLE's reserved range. The iOS backend is not yet included in any of the GN files. Bug: angleproject:4263 Change-Id: I631c32930433c03bb16a242955ffedf55174bb29 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1987278 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: James Darpinian <jdarpinian@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Kenneth Russell 7a37d3ac 2020-01-05T13:52:03 Work around Intel driver bug with CopyTex{Sub}Image2D/DeleteTextures. Dependencies seem to be incorrectly tracked in some Intel OpenGL drivers (on macOS specifically), causing crashes in glDeleteTextures if a GL command buffer is being constructed where those textures are destinations of CopyTexImage2D/CopyTexSubImage2D. Work around this bug by flushing before texture deletion if CopyTex{Sub}Image have been called recently. The tracking is only done on a per-context rather than a per-device basis, but seems sufficient to work around the problem as identified. Tested both with new ANGLE test on affected hardware, and in WebKit's ANGLE backend for WebGL. Works around the crash reported in https://bugs.webkit.org/show_bug.cgi?id=205707 . Bug: angleproject:4267 Change-Id: I2266a5590759f6a3f19080def08710ef4b66d463 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1987932 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Tobin Ehlis 697b2241 2020-01-09T12:19:07 Vulkan:Clarify volk license file name Need to explicitly specifly volk LICENSE.md filename in README.chromium file. Bug: angleproject:4225 Change-Id: I5d71ef0c28063f6e036f94ddb7d2c9e289fe79d2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1993397 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tobin Ehlis <tobine@google.com>
James Darpinian 27db2458 2019-10-03T13:46:28 Optimize disabling ARB_texture_rectangle In https://crrev.com/c/1838418 I added the ability to disable ARB_texture_rectangle so that we can use it in the WebGL implementation but disable it when compiling user shaders. Unfortunately disabling and re-enabling the extension causes the shader translator to be reinitialized which turns out to be more expensive than the actual work of shader translation, at least for small shaders. It's slow enough to cause timeouts in WebKit's WebGL conformance test runs. This introduces an alternate method of disabling ARB_texture_rectangle in the translator which is much faster because it avoids reinitializing the translator. Bug: angleproject:3956 Change-Id: I5d31b683ff19a59bdfd289cfd3c609f64ef5e25b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1991969 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
angle-autoroll bf8bd805 2020-01-09T15:00:53 Roll third_party/spirv-tools/src e70b009b0f1e..fb2e819819ef (14 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/e70b009b0f1e..fb2e819819ef Created with: gclient setdep -r third_party/spirv-tools/src@fb2e819819ef If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Please CC cwallez@google.com,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com,jmadill@google.com Change-Id: Ife103b6f2c902c3ec357ab5058c1afe0c5648119 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1993380 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 1c40e03a 2020-01-09T07:01:41 Roll third_party/SwiftShader 45a4d0f36bd6..77c89ff847b6 (13 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/45a4d0f36bd6..77c89ff847b6 git log 45a4d0f36bd6..77c89ff847b6 --date=short --first-parent --format='%ad %ae %s' 2020-01-08 bclayton@google.com Build: Verify that we're compiling with C++14. 2020-01-08 bclayton@google.com Build: Move from using C++11 to C++14. 2020-01-08 bclayton@google.com Kokoro: Update from GCC 4.8 to GCC 7. 2020-01-08 bclayton@google.com Pipeline/SpirvShader: Move setActiveLaneMask() 2020-01-08 bclayton@google.com Pipeline/SpirvShader: Support more OpExtInsts 2020-01-08 bclayton@google.com Pipeline/SpirvShader: Process OpString instructions 2020-01-08 bclayton@google.com Pipeline/SpirvShader: Add Impl struct 2020-01-08 bclayton@google.com Vulkan/Debug: Expose Frames from Thread 2020-01-08 sugoi@google.com Enable B10G11R11_UFLOAT blending 2020-01-08 bclayton@google.com Vulkan/Debug: Add Reference value type. 2020-01-08 chrisforbes@google.com Add storage image support for R16G16_{UINT,SINT,SFLOAT} 2020-01-08 bclayton@google.com Vulkan: Plumb the debug context down to SpirvShader 2020-01-08 bclayton@google.com Vulkan: Add debugging of the command buffer. Created with: gclient setdep -r third_party/SwiftShader@77c89ff847b6 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I9f7014f2de23f3f9411f07a4b95c0cc48ab5e6ac Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1993043 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 0561d46e 2020-01-09T07:01:43 Roll third_party/vulkan-validation-layers/src 258b887827ab..ac72777ef763 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/258b887827ab..ac72777ef763 git log 258b887827ab..ac72777ef763 --date=short --first-parent --format='%ad %ae %s' 2020-01-08 mark@lunarg.com corechecks: Fix immutable sampler write fall-through case Created with: gclient setdep -r third_party/vulkan-validation-layers/src@ac72777ef763 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: Id7c2391bdd232852542eb65a5d8372f73cf6d4d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1993044 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll f6228fdf 2020-01-09T07:01:47 Roll third_party/glslang/src 1642ca11282a..51813670627c (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/1642ca11282a..51813670627c Created with: gclient setdep -r third_party/glslang/src@51813670627c If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: Id259094225cc9d58472153114d5836bddb4b6aaf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1993045 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill c431d596 2019-12-16T10:59:44 Add Serial to all GL resources. The Serial will help track active resources for filtering out inactive setup calls in capture/replay. Bug: angleproject:4223 Change-Id: I64ba50f27d656c12d45155dc735e9b6f9c04528f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1969062 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tobin Ehlis 99c274ba 2020-01-08T09:39:03 Vulkan:Roll volk All ANGLE volk changes have been upstreamed to volk repo so rolling volk to sync with latest. Going forward we can just roll when/if we need newer versions of Vulkan Header supported by volk. Bug: angleproject:4225 Change-Id: I6132a94010bbc5f3356ebb0b7e2b2b661ecc68b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1991722 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tobin Ehlis <tobine@google.com>
Eric Binet b84cdffe 2020-01-06T14:59:44 Fix colored indexed point tests not using color in vertex buffer. In the previous version, the IndexedPointsTestUInt tests named VertexWithColorUnsignedIntOffset* were redundant with UnsignedIntOffset*. Bug: angleproject:3923 Change-Id: I6b9b8f2bd78882bcac7c3b89e798291ee94eea70 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1988998 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll e5d3c659 2020-01-08T07:01:43 Roll third_party/vulkan-validation-layers/src b416ed86e4b2..258b887827ab (3 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/b416ed86e4b2..258b887827ab git log b416ed86e4b2..258b887827ab --date=short --first-parent --format='%ad %ae %s' 2020-01-07 mark@lunarg.com tests: Add test for a write update to an immutable sampler 2020-01-07 mark@lunarg.com tests: Add test for copying to immutable samplers 2020-01-07 mark@lunarg.com corechecks: Add validation for writing to immutable samplers Created with: gclient setdep -r third_party/vulkan-validation-layers/src@258b887827ab If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I4fdaffd02584138c7d4e9d6f0c69221d628cf8ef Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1990983 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 20ed6bcb 2020-01-08T07:01:41 Roll third_party/SwiftShader 068dd89cab31..45a4d0f36bd6 (5 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/068dd89cab31..45a4d0f36bd6 git log 068dd89cab31..45a4d0f36bd6 --date=short --first-parent --format='%ad %ae %s' 2020-01-08 capn@google.com Disable unused function warning 2020-01-07 bclayton@google.com Regres: Apply fix for invalid SPIR-V in 12 tests. 2020-01-07 capn@google.com Disable LLVM & Subzero stack traces and crash handling 2020-01-07 digit@google.com vulkan: use a marl::Event in the VkSemaphore implementation. 2020-01-07 digit@google.com [vulkan] Simplify vk::Semaphore implementation. Created with: gclient setdep -r third_party/SwiftShader@45a4d0f36bd6 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I5b338a33ea57117912e019075c52f09351badea7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1990982 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 90bf5bec 2020-01-08T07:01:47 Roll third_party/glslang/src 1d258ac34698..1642ca11282a (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/1d258ac34698..1642ca11282a Created with: gclient setdep -r third_party/glslang/src@1642ca11282a If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I6a686ddc411f6e2087b146fbd146c6a63675bf34 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1990984 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll d0788509 2020-01-08T07:01:14 Roll third_party/vulkan-tools/src 55333361f9a1..2c436960d2c0 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/55333361f9a1..2c436960d2c0 git log 55333361f9a1..2c436960d2c0 --date=short --first-parent --format='%ad %ae %s' 2020-01-07 charles@lunarg.com vulkaninfo: Make presentation surface names a set Created with: gclient setdep -r third_party/vulkan-tools/src@2c436960d2c0 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-tools-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: If653af60cbc98b72138c4e1768ec7ccae4f6543c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1990981 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tobin Ehlis db49bc7d 2020-01-07T09:18:43 Vulkan:Roll volk Roll volk to the latest version which supports Vulkan 1.1.130. I'm attempting to upstream our customizations to that version so this roll is in preparation of those changes hopefully landing. Bug: angleproject:4225 Change-Id: I02f3bd3808f812c0ec8196b6c815a781e7ab5eeb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1989479 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tobin Ehlis <tobine@google.com>
Ian Elliott c8d7f047 2020-01-07T10:06:07 Vulkan: Update number of samples when changing draw framebuffer This fixes a crash (preceeded by Vulkan validation errors) when running the following test: --gtest_filter=dEQP.KHR_GLES31/core_texture_storage_multisample_FunctionalTests_blitting_multisampled_depth_attachment* --use-angle=vulkan The problem is that GraphicsPipelineDesc::updateRasterizationSamples() is rarely called (e.g. glBindFramebuffer). The above dEQP test changes between draw attachments that do and don't have multisampling enabled. The number of samples is set (the first time) to have multisampling enabled, and never changed, even though other attachments don't have multisampling. FramebufferVk::syncState() now calls updateRasterizationSamples(). That fix uncovered a latent problem: when an application destroys all framebuffers (including the draw framebuffer), the ContextVk still points at the old draw framebuffer's FramebufferVk (now freed). This is fixed with new plubming to clean-up ContextVk::mDrawFramebuffer. Bug: angleproject:4240 Change-Id: I151ec40ab821efc07c26323c34275c9165ad2ed5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1983393 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Ian Elliott <ianelliott@google.com>
Tobin Ehlis 2c63b83c 2020-01-03T15:44:30 Vulkan:Enable DebugUtils extension for Android Enable DebugUtils Vulkan extension for Android. This rolls VK Validation Layer dep forward to include a fix that allows this extension to work correctly with Android loader. Here's the Validation layer fix: https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/1464 Bug: angleproject:3852 Change-Id: I74c55c0a66a7ee4db3b623221c8fb6c4433a39af Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1985175 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez cbbb3aaf 2020-01-07T15:03:20 Suppress VertexAttributeTest.DrawArraysWithBufferOffset on Mac NVIDIA The test fails with the following at a very low flake rate: ../../third_party/angle/src/tests/gl_tests/VertexAttributeTest.cpp:230: Failure Expected equality of these values: angle::MakeGLColor(255, 255, 255, 255) Which is: White angle::ReadColor((midPixelX + viewportSize[2]) / 2, midPixelY) Which is: Transparent Black TBR=jmadill@chromium.org Bug: angleproject:4269 Change-Id: I82752acfbcb2a067ccb35a7a456def03299c359f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1987258 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
angle-autoroll ce396c03 2020-01-07T07:01:43 Roll third_party/SwiftShader 10a900e5ffaf..068dd89cab31 (7 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/10a900e5ffaf..068dd89cab31 git log 10a900e5ffaf..068dd89cab31 --date=short --first-parent --format='%ad %ae %s' 2020-01-06 bclayton@google.com SPIRV-Tools: Update Android.bp to fix build. 2020-01-06 capn@google.com Limit Vulkan memory allocation size to 1 GiB 2020-01-06 bclayton@google.com IDs: Move inline impls below class. 2020-01-06 bclayton@google.com Pipeline: Store builtins on SpirvRoutine... 2020-01-06 bclayton@google.com Style: clang-format the tests source too 2020-01-06 bclayton@google.com Merge changes Id1120acb,Ifc6afcda,I8b5da04a,I9389ad9e,I35d60f68 2020-01-06 sugoi@google.com Improve 1010102 blend precision Created with: gclient setdep -r third_party/SwiftShader@068dd89cab31 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I9df3cbc0059453193adfbee90f767d06c0149fa2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1989339 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 806b06a2 2020-01-07T07:01:41 Roll third_party/glslang/src 6334d594f68c..1d258ac34698 (3 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/6334d594f68c..1d258ac34698 Created with: gclient setdep -r third_party/glslang/src@1d258ac34698 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: If27787415b62ecdeee7192fdb6663e8b80cdec79 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1989337 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 0d467595 2020-01-07T07:01:41 Roll third_party/vulkan-validation-layers/src 2be3fe0f8471..b416ed86e4b2 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/2be3fe0f8471..b416ed86e4b2 git log 2be3fe0f8471..b416ed86e4b2 --date=short --first-parent --format='%ad %ae %s' 2020-01-06 mark@lunarg.com layers: Added stub functions for instance exts and funcs Created with: gclient setdep -r third_party/vulkan-validation-layers/src@b416ed86e4b2 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I1b8ae6d289e25c34c731c4acd42c30dead3ea6d4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1989338 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 806d812e 2020-01-03T13:48:30 Vulkan: Reorder descriptor sets This change moves driver uniforms to a set with a lower id than the one that includes (emulation) transform feedback buffers. Imagine the following: - Program 1 with xfb: UniformsSet: 1 VS uniforms buffer, 1 FS uniforms buffer, 1 xfb buffer - Program 2 without xfb: UniformsSet: 1 VS uniforms bufer, 1 FS uniforms buffer. Previously, UniformsSet was index 0, and DriverUniformsSet was index 3. When switching from Program 1 to Program 2, the layout of UniformsSet changes, which means every subsequent set needs to be rebound. This is a Vulkan pipeline layout compatibility rule. This is done with invalidateCurrentTextures() and invalidateCurrentShaderResources() already when handling gl::State::DIRTY_BIT_PROGRAM_EXECUTABLE. The bug is that the driver uniforms are not invalidated. This is normally not an issue, because usually when switching from Program 1 to Program 2, transform feedback is paused, and this state change does invalidate driver uniforms. However, the following scenario doesn't do this: - Begin Xfb - Pause Xfb - Use Program 1 - Draw - Use Program 2 - Draw - End Xfb There is no driver state change between the two draw calls, which means the second draw will attempt to draw using the driver uniforms bound for the first draw call. There is a Vulkan validation error here due to the above pipeline layout validation rule. The issue manifests itself only when the second draw call actually uses driver uniforms, as otherwise that set is inactive and not validated; i.e. when line raster emulation is used. In summary, the validation error manifests itself when: - Transform feedback and line raster both use emulation - Transform feedback is paused - A draw with an xfb program is followed by a non-xfb program - The second draw is a line draw A test is added for this. The solution is to reorder the sets so that DriverUniformsSet is placed before UniformsSet. This way, changes to the layout of UniformsSet don't invalidate DriverUniformsSet. In fact, based on the above, any change in the layout of the program should have required an invalidation of the driver uniforms. This bug is probably masked by the fact that ContextVk::handleDirtyDescriptorSetsImpl() always rebinds the graphics driver every time any descriptor set needs rebinding. That should be removed in a follow up change. Bug: angleproject:4261 Change-Id: I21ad4152b454a1fe70554be02e18a9c94fb3e7a8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1986927 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
shrekshao 51e653f0 2020-01-02T13:53:03 Suppress flaky failure with MacOS/NVIDIA/OPENGL Seeing intermittent failure on this test only on MacOS/NVIDIA/OPENGL. Suppress for now. Bug: angleproject:4258 Change-Id: Ibda30954019410e3b6d069986b2cd0ad26533c00 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1984850 Reviewed-by: Shrek Shao <shrekshao@google.com> Commit-Queue: Shrek Shao <shrekshao@google.com>
Jeff Vigil 8c0bbfbb 2019-11-25T14:48:11 EGL: Implement EGL_ANDROID_framebuffer_target Add attribute to configs. Add attribute matching logic. Does not set attribute in Vulkan configs, need solution to query Android for which formats are valid. anglebug.com/4208 New end2end test. Bug: angleproject:3961 Test: angle_end2end_tests --gtest_filter=EGLAndroidFramebufferTargetTest* Change-Id: I7e14c47b39e9539f6181c3c1d75c76fe63ca0f8c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1960508 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Courtney Goeltzenleuchter 7dfc99e5 2019-12-18T16:37:20 Vulkan: Update dEQP source for test fixes Also fix scripts/gen_vk_gl_cts_build.py to always use '/' as file separator. Otherwise, running the script on Windows uses '\' which Linux doesn't like. Test: angle_deqp_gles31_tests --use-angle=swiftshader --gtest_filter=dEQP.GLES31/functional_debug_negative_coverage_get_error_vertex_array_draw_range_elements Bug: angleproject:2324 Bug: angleproject:4234 Change-Id: I3b212e0d0ba97996f1d86f7fc81e58c3b03a9cbb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1975020 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 0721cc8b 2020-01-03T23:26:08 Vulkan: No line raster emulation code if extension A flag is added to the translator to disable generation of Bresenham line raster emulation code when the Bresenham line raster Vulkan extension is present. This is primarily for the sake of conversion of line raster emulation condition to specialization constant: - Avoid dead SPIR-V code in every shader - Avoid ANGLEUniforms being active in every shader stage even if it's not used anywhere but in line raster emulation. - Optimize SPIR-V transformations by both having fewer instructions to iterate through, and to avoid generating line raster patches. - Reduce the severity of anglebug.com/4251 where the location assignment of ANGLEPosition can incorrectly overlap a varying array or struct, by making only platforms without Bresenham extension afflicted by the bug. Bug: angleproject:3394 Change-Id: Ic0ae6ce0392b4eae0cc79cb94bbcd0805b276a31 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1986379 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi f8ae5dc6 2019-12-20T16:32:09 GL: Enable EXT_gpu_shader5 Bug: angleproject:3569 Change-Id: I08666bde75ac158e051817e689e2c0b82d6b6f70 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1978579 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Ethan Lee d36780ba 2020-01-02T12:28:26 Fix UWP build Bug: angleproject:4246 Change-Id: Ifcbb6fe51ee2df6baf86a308de74bab640ded834 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1982632 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Eric Binet f64ddcfd 2020-01-06T13:27:30 Add missing steps in DevSetup Bug: angleproject:4268 Change-Id: Ib7f58ba241c24acb35d8705d994c57422d9b73e4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1987908 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Ethan Lee 56fd2bce 2019-12-17T10:00:55 Fix GGP build Bug: angleproject:4246 Change-Id: I80906196ebc3c904e75516e8c53b05dd81c5fa5c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1982633 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Le Hoang Quyen ab42afa6 2019-11-21T10:13:44 Metal: fix vertex attribute's conversion lost after changing buffer binding. After vertex buffer's attribute is converted and stored in conversion buffer. Binding the same attribute to another buffer, then binding it back to previous buffer will result in previous conversion information lost. The conversion method would skip the conversion due to buffer's content hadn't been changed, however it didn't reuse the old conversion result. This CL also changed the way binding offset is used in Metal backend. - Previous, the offset would be assigned to the offset field of MTLVertexAttributeDescriptor, then the buffer would simply be bound to the command encoder with offset=0 i.e. setVertexBuffer(buffer, index, 0) - However this approach has several disadvantages. Since Metal doesn't allow MTLVertexAttributeDescriptor's offset to be larger than the vertex attribute's stride, the old approach would force the back-end to convert the attribute and store in conversion buffer. New approach: - MTLVertexAttributeDescriptor's offset will be zero. The offset will be used to bind the buffer itself to the render command encoder. i.e. setVertexBuffer(buffer, index, offset) This way the "offset <= stride" restriction no longer exists. The only restriction is the offset must be multiple of attribute's size. Added 3 new tests: - SimpleStateChangeTest.RebindTranslatedAttribute - VertexAttributeTest.DrawWithLargeBufferOffset - VertexAttributeTest.DrawWithLargeBufferOffsetAndLessComponents Bug: angleproject:2634 Change-Id: I6c2fa8091436e4a24405d791f86d17d97df02d64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1940009 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Jeff Vigil 3311ef65 2020-01-03T11:52:15 update date comments to 2020 run_code_generation.py updated comments with 2019 to 2020. Put all date updates into this one CL. This also updated hashes. Bug: angleproject:4262 Change-Id: Ia213dd5e47f155986cbb4161d777724355878af0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1986994 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Kenneth Russell 1031d2c6 2020-01-03T14:28:26 Upstream Mac logging changes from WebKit. Use os_log_with_type in ANGLE's logging facility rather than fprintf. Bug: angleproject:4263 Change-Id: I0c418fc5544001bf4f47ff511d05de2f0ebaa1de Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1987145 Reviewed-by: Kai Ninomiya <kainino@chromium.org> Reviewed-by: James Darpinian <jdarpinian@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
shrekshao 81ee4d29 2019-12-04T17:05:11 Workaround EXT_texture_norm16 for OpenGL ES drivers Implement a workaround for widespread bugs calling glReadPixels with RGBA/UNSIGNED_SHORT against R16/RG16 color attachments. Read back the data using the GL_IMPLEMENTATION_COLOR_READ_FORMAT, and then rearrange the read back pixels to fit the RGBA layout. Also skip RGB16/RGB16_SNORM texture sample test on Nexus 5X/Nexus 6P due to a another driver bug. Bug: chromium:1000354, angleproject:4214, angleproject:4215, angleproject:4245 Change-Id: Iedea6f4136878cac5ad0dec3757c77b73502e1cd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1952166 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Shrek Shao <shrekshao@google.com>
angle-autoroll de97fb4a 2020-01-03T07:01:41 Roll third_party/vulkan-validation-layers/src e4a2b7f22782..2be3fe0f8471 (7 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/e4a2b7f22782..2be3fe0f8471 git log e4a2b7f22782..2be3fe0f8471 --date=short --first-parent --format='%ad %ae %s' 2020-01-02 jzulauf@lunarg.com layers: Record initial layout on release barriers 2020-01-02 mark@lunarg.com corechecks: Plumb VtxIndex VUIDs through to helper func 2020-01-02 mark@lunarg.com corechecks: Remove obsolete perf warning 2020-01-02 mark@lunarg.com tests: Removed PerfWarning test from VkLayerTest harness 2020-01-02 mark@lunarg.com bestpractices: Use BP VUID in place of corechecks one 2020-01-02 mark@lunarg.com tests: Added test for missing vtx buffers to BP harness 2020-01-02 mark@lunarg.com bestpractices: Added perf warning for missing vtx buffers Created with: gclient setdep -r third_party/vulkan-validation-layers/src@2be3fe0f8471 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC courtneygo@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: courtneygo@google.com Change-Id: I80a335bf862d776bc1533f366316f5b899fbfb09 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1986605 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 93061d4e 2019-12-30T23:45:08 Vulkan: Support vertex-only line emulation draw with xfb The code that patches the line raster emulation directive assumed both vertex and fragment shaders would be present. This is invalid if only a vertex shader is present. This change adds the directive to any stage that's available. This includes the possibility of a missing vertex shader also, which can be useful for separable shaders and program pipeline objects. Bug: angleproject:3394 Change-Id: I84555db81b59c318300003f7108a01f330e4259f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1982782 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi 35e6050f 2019-12-30T23:47:51 Vulkan: Correct error message for VK_ERROR_INVALID_SHADER_NV If an invalid shader is generated, generate the appropriate message instead of "Unknown error". Bug: angleproject:3394 Change-Id: I586c99e95cd72daeaf74b4d1eff352942e01d8b7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1982783 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Xinghua Cao 1fdf6ca5 2019-12-31T14:25:35 D3D11: Restrict to translate uniform block to StructuredBuffer Only translate uniform block to StructuredBuffer when system is Windows 10 and later. Bug: angleproject:3682 Change-Id: I27e3f4503392791883a44e1d486ffe9512e04bd8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1984863 Commit-Queue: Xinghua Cao <xinghua.cao@intel.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll cbbfa2f2 2019-12-31T07:01:43 Roll third_party/SwiftShader 59465799210b..10a900e5ffaf (1 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/59465799210b..10a900e5ffaf git log 59465799210b..10a900e5ffaf --date=short --first-parent --format='%ad %ae %s' 2019-12-30 chrisforbes@google.com Add assert in GenericValue constant access Created with: gclient setdep -r third_party/SwiftShader@10a900e5ffaf If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC courtneygo@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: courtneygo@google.com Change-Id: Id7ec364a7df7c8389d3bab78761f4b1061d93e10 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1984961 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Mohan Maiya 942d9152 2019-12-23T15:31:52 EGL: Add support for EGL_KHR_gl_colorspace extension If the Vulkan backend supports VK_EXT_swapchain_colorspace extension, enable the option for applications to create surfaces with non-linear formats. Not all formats have non-linear versions and is platform specific. Tests: dEQP-EGL.functional.wide_color.* angle_deqp_egl_tests --use-angle=vulkan --deqp-gl-context-type=egl --deqp-case=dEQP-EGL.functional.wide_color.* Bug: angleproject:2514 Change-Id: I441ee797cceef92c84473bfa18605c4fd8180de1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1951963 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
angle-autoroll c1fc6de8 2019-12-30T07:02:09 Roll third_party/vulkan-headers/src 0e57fc1cfa56..f63dd5c9d874 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/0e57fc1cfa56..f63dd5c9d874 git log 0e57fc1cfa56..f63dd5c9d874 --date=short --first-parent --format='%ad %ae %s' 2019-12-28 flibitijibibo@gmail.com GN: Make PLATFORM_XCB optional, based on a user-defined variable. Created with: gclient setdep -r third_party/vulkan-headers/src@f63dd5c9d874 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-headers-angle-autoroll Please CC ynovikov@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md TBR=ynovikov@chromium.org Bug: None Change-Id: I57e5f53b741fce8a14d27af4445fcc31ea860c70 Tbr: ynovikov@chromium.org Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1984191 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi f02490d1 2019-12-23T14:06:12 Vulkan: clean up arguments to glslang wrapper Some flags were sent as parameters while an Options parameter was added. This change moves those flags to the GlslangSourceOptions struct. Bug: angleproject:3394 Change-Id: Iff5c1c83dd564d7bcfcbd84e6df244b7356d669d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1984108 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 7fad424e 2019-12-30T00:07:09 Avoid vector copy in BinaryOutputStream::writeIntVector Also adds a unit test to make sure readIntVector and writeIntVector match. It was not immediately clear that writing the vector size in writeIntVector is writing an int instead of a size_t. Bug: angleproject:3394 Change-Id: I09a003c169dbc47e40c0cd3e4da6f1d7a905c6da Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1983162 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 9fac1817 2019-12-30T07:01:40 Roll third_party/glslang/src 5de15a256eb0..6334d594f68c (4 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/5de15a256eb0..6334d594f68c Created with: gclient setdep -r third_party/glslang/src@6334d594f68c If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC ynovikov@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: ynovikov@chromium.org Change-Id: I13837b1d19eccf54aae171349dfadd0d37d7ef77 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1984164 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll fca5a005 2019-12-27T07:01:40 Roll third_party/glslang/src bd97b6f9f213..5de15a256eb0 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/bd97b6f9f213..5de15a256eb0 Created with: gclient setdep -r third_party/glslang/src@5de15a256eb0 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC ynovikov@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: ynovikov@chromium.org Change-Id: I2324cfed3dd1026a11ead024c805b216481d47ea Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1982965 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll ebed8559 2019-12-27T07:01:43 Roll third_party/SwiftShader 6e3a387c0159..59465799210b (1 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/6e3a387c0159..59465799210b git log 6e3a387c0159..59465799210b --date=short --first-parent --format='%ad %ae %s' 2019-12-27 capn@google.com Remove Reactor/MutexLock.hpp Created with: gclient setdep -r third_party/SwiftShader@59465799210b If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC ynovikov@chromium.org on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: ynovikov@chromium.org Change-Id: I10048c2c0d1fd7843762ea3636b1ef29b7200359 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1982966 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 01dd6f6c 2019-12-25T07:01:28 Roll third_party/vulkan-tools/src 37af49fa7b55..55333361f9a1 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/37af49fa7b55..55333361f9a1 git log 37af49fa7b55..55333361f9a1 --date=short --first-parent --format='%ad %ae %s' 2019-12-24 charles@lunarg.com vulkaninfo: exit on invalid gpu selected Created with: gclient setdep -r third_party/vulkan-tools/src@55333361f9a1 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-tools-angle-autoroll Please CC cnorthrop@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: cnorthrop@google.com Change-Id: I3a08dd0ecc6c3745d29a149fa75d825ddd3b7860 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1981930 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi a35aa03a 2019-12-20T16:15:53 Vulkan: EXT_gpu_shader5: textureGatherOffsets The validation of the offsets parameter is added in this change. Bug: angleproject:3569 Change-Id: Ide2ea4b9e88b28ca5ef34d5f3f5203f6e48d5f74 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1979133 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jiajia Qin <jiajia.qin@intel.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi beb33691 2019-12-20T16:15:20 Vulkan: EXT_gpu_shader5: Fix textureGatherOffsets builtin This function is the only builtin with arrays as parameter. A new constexpr constructor is added to TType to support this, and gen_builtin_symbols is changed to emit the correct type for offsets parameter of this function. Bug: angleproject:3569 Change-Id: I55af58b43f24cd605c622ee685b359535e11ef85 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1975431 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Gary Sweet 52dae168 2019-12-19T12:03:30 Vulkan : Fix maxVertexOutputComponents GL_MAX_VERTEX_OUTPUT_COMPONENTS should mirror Vulkan's reported maxVertexOutputComponents; this shouldn't include any gl_Position adjustments. It was previously set as maxVaryingVectors * 4. The workaround for AMD that reserved an extra varying due to driver instability is no longer required (see: https://chromium-review.googlesource.com/c/angle/angle/+/1980272) Bug: angleproject:4233 Change-Id: I8d7b8eafa7edd4c56005dad039fe69e072692fca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1975851 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 86d9c93a 2019-12-16T16:07:04 Use TSpan for TType's array sizes Until C++20, std::vector doesn't have a constexpr constructor, which means TType cannot use a `TVector` for `mArraySizes` if an arrayed type needs to be created constexpr. This is needed for the upcoming textureGatherOffsets implementation. A new TSpan class is introduced, based on std::span (from C++20) that holds the pointer/size allocated from a TVector without owning it. Since TVector's allocation are made from a pool, the allocated memory will live beyond the vector's destruction. `TType::mArraySizes` is changed to this type. This change will allow a new constexpr constructor to be added to TType that takes a TSpan as array directly, a value which is constexpr initialized from a static array (instead of TVector). Bug: angleproject:3569 Change-Id: I78793b0f4c64519e0ebe30cf6e0de995ba70035d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1968260 Reviewed-by: Jiajia Qin <jiajia.qin@intel.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tobin Ehlis c713abfd 2019-12-23T12:03:02 Vulkan:Transform/feedback instanced draw support These fixes allow dEQP 3.1 KHR-GLES31.core.vertex_attrib_binding.basic-input* test cases to pass. This fixes a bug in instanced drawing with transform feedback buffers where we were overwriting the initial transform feedback output as new instances were drawn. To fix this, the vertices in each draw are passed into a uniform value and the output is offset based on the current instance and the number of vertices in the draw. It also fixes a validation error where transform feedback descriptor was sometimes setting a buffer range of 0. This is not allowed, so in the 0 case we pull the actual buffer size from the bufferHelper object. Bug: angleproject:4236 Change-Id: Ib72898a0e6caab96c446c1e996a6124d2c001193 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1979600 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Tobin Ehlis <tobine@google.com>
Tobin Ehlis 67d8b63a 2019-12-23T11:35:52 Vulkan:Update Vulkan Vertex Attribute Offsets This fixes most of the test for dEQP 3.1 KHR-GLES31.core.vertex_attrib_binding.basic-input* The bug fixes is that we were not correctly setting the vertex attribute offset for vertex attribs that were converted into their own buffer. We kept the attrib offset from the frontend as if the converted attribs were in the original buffer, but converted vtx attrib buffers in the VK backend are tightly packed from the start of the buffer so when converting the actual offset should be 0. Also, in order to avoid a VK validation error, this change includes a tmp workaround to make sure transform feedback output buffer range is never 0, but sets VK_WHOLE_SIZE in that case. A follow-on fix that focuses on transform feedback fixes will address this validation error more fully. Bug: angleproject:4145 Bug: angleproject:4236 Change-Id: I8c218954725945414a8f18beb4f964b90da7062a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1980906 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 87607526 2019-12-23T22:48:06 Disable flaky test on Metal Bug: chromium:1037665 Bug: angleproject:4177 Change-Id: I38f05f1567803e7ac0c631d94056f26dc122a4f2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1980278 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Khushal c41f2e56 2019-12-23T13:33:58 Disable UniformBufferTests on Windows 7 / D3D11 / NVIDIA. Bug: chromium:1037644 Change-Id: Ic8bf76bb0c1b8bdcf36f6af5a8d91ac815334917 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1981070 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Shahbaz Youssefi e2fc92ca 2019-12-23T14:21:28 Vulkan: Fix swiftshader device selection A recent SwS roll changed the deviceName of swiftshader to include the backend (LLVM for example). That made ANGLE no longer recognize SwiftShader. This change looks for the known SwS device name as a prefix of the deviceName retrieved from the device, rather than a complete match. Bug: angleproject:3876 Change-Id: If6dacb1e5685493d5334cad2015439f0f6b71124 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1980275 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 07f0f019 2019-12-19T14:47:46 Translator: Memory qualifiers on SSBO fields These were not output prior to this CL. Of these qualifiers, readonly and writeonly are unnecessary as ANGLE already does the appropriate validation, but the rest (coherent, volatile, restrict) are necessary, even though the tests pass on the bots by coincidence of driver behavior/test simplicity. Bug: angleproject:3602 Change-Id: Ie75fee0f004944b50ef21124ba25c4315e082b85 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1976499 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 80943776 2019-12-17T16:58:06 Refactor TType's constructors Instead of duplicating the initialization of every field, use one of the constructors to initialize the other ones. Bug: angleproject:3569 Change-Id: Ie342111218235ecb4124deb2f0147f97cdbed51a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1972889 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll f5c3afec 2019-12-23T07:01:40 Roll third_party/glslang/src ebf634bcaa3e..bd97b6f9f213 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/ebf634bcaa3e..bd97b6f9f213 Created with: gclient setdep -r third_party/glslang/src@bd97b6f9f213 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Icc6edef982018a13e978f307491e333e41a64c82 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1980455 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 392c9809 2019-12-23T07:01:41 Roll third_party/vulkan-validation-layers/src 6b71f08cc83e..e4a2b7f22782 (4 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/6b71f08cc83e..e4a2b7f22782 git log 6b71f08cc83e..e4a2b7f22782 --date=short --first-parent --format='%ad %ae %s' 2019-12-20 mark@lunarg.com statetracker: Fetch shader float control properties 2019-12-20 mark@lunarg.com test: Fix ByteCount test failure on Pixel3 2019-12-20 mark@lunarg.com tests: Add CmdDrawIndirectByteCountEXT stride test 2019-12-20 mark@lunarg.com stateless: Added check for XformFeedback vertexStride Created with: gclient setdep -r third_party/vulkan-validation-layers/src@e4a2b7f22782 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I9fc5f15dcfd281021d5c89e9b0739aba45e68174 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1980456 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll c92b5991 2019-12-23T07:01:43 Roll third_party/SwiftShader 6d29348ddb7e..6e3a387c0159 (4 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/6d29348ddb7e..6e3a387c0159 git log 6d29348ddb7e..6e3a387c0159 --date=short --first-parent --format='%ad %ae %s' 2019-12-20 capn@google.com Exclude padding bytes from image size limit 2019-12-20 amaiorano@google.com Vulkan: include backend name in deviceName 2019-12-20 amaiorano@google.com Debug: add trace to debug out 2019-12-20 swiftshader.regress@gmail.com Regres: Update test lists @ 6d29348d Created with: gclient setdep -r third_party/SwiftShader@6e3a387c0159 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Ic67a12b7547b8563f195ff800ed02cd19e86481b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1980457 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Gary Sweet 07d3bcf1 2019-12-20T11:23:26 Correct calculation of GL_MAX_VARYING_COMPONENTS GL_MAX_VARYING_COMPONENTS does not equal maxVertexOutputComponents. The minimum supported limit for GL_MAX_VARYING_COMPONENTS is 60, whereas the minimum for maxVertexOutputComponents is 64. On devices that have the minimum limits the existing code will report a limit for GL_MAX_VARYING_COMPONENTS that is too large (64 vs 60). Report instead as (GL_MAX_VARYING_VECTORS * 4). Bug: angleproject:4233 Change-Id: I920a32cf21040ff5b64746fcf3489db740028d48 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1978638 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Xinghua Cao 0af8b596 2019-09-03T16:24:45 D3D11: Translate uniform blocks to StructuredBuffer when necessary fxc exhibits slow compile performance with dynamic cbuffer indexing. So when a uniform block contains only one large array member, which is an array of structures, translate this uniform block to a StructuredBuffer instead. Bug: angleproject:3682 TEST=angle_end2end_tests.UniformBufferTest.* Change-Id: Ife80dba8aae65b761737e095895e00a570230f88 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1782046 Commit-Queue: Xinghua Cao <xinghua.cao@intel.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 291be9ac 2019-12-18T14:36:17 Add DEP to pull internal capture files To enable, add the following to your .gclient file: "custom_vars": { "checkout_angle_internal":"True", }, Bug: angleproject:3630 Change-Id: I639ba5236fc6d90060a7b50bd0942fe2d0285a25 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1949604 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Cody Northrop 84f45f10 2019-12-18T14:34:29 Use checkout_angle_internal for non-public files The previous flag was too broad, pulling all Chromium internal files. We only need one repository. Bug: angleproject:3630 Bug: chromium:1032708 Change-Id: I8aac322e2f748570432be27f2981f927bd264fce Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1969735 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Ian Elliott abc8f277 2019-12-19T10:47:31 Vulkan: Disallow multisampling with a sample count of 1 GLES uses a sample count of 0 to indicate non-multisampling, and a sample count of 1 or greater to indicate multisampling.  While the Vulkan specification seems to support multisampling with a sample count of 1, the following spec language effectively disallows it (even when the underlying Vulkan driver supports it): If the image was created with VkImageCreateInfo::samples equal to VK_SAMPLE_COUNT_1_BIT, the instruction must have MS = 0. The following GLES 3.1 dEQP tests use shaders that look for the sample position, with a sample count of 1: dEQP-GLES31.functional.texture.multisample.samples_1.* For Vulkan drivers that fully support multisampling with a sample count of 1, these tests pass, but get Vulkan validation errors because of the above spec language. This was discussed in the Khronos-private issue tracker (see: https://gitlab.khronos.org/vulkan/vulkan/issues/1925).  The Vulkan working group wondered if ANGLE could live with not supporting a sample count of 1 (but upgrading such requests to the next-largest supported sample count, per the GLES specification).  This change implements that approach. Bug: angleproject:4197 Bug: angleproject:4212 Change-Id: I009ba47b48efe5af464011c7c15022fc01f45e76 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1974842 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Jonah Ryan-Davis 9d03c297 2019-12-20T11:53:32 Skip all Metal dEQP tests First step in running dEQP tests on the Metal backend on the bots Bug: angleproject:4235 Change-Id: Ib191205179d98bc907cc7d48340744ea719a0bc2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1978577 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Courtney Goeltzenleuchter 816132a3 2019-12-17T15:47:09 Do not send attribute data for built-ins Built-ins (e.g. gl_VertexID or gl_InstanceID) were settings dirty bits in the driver's ActiveAttribLocationsMask which would later cause the Vulkan back-end to issue bind commands on these built-in attributes that don't have / need anything bound. Test: angle_deqp_khr_gles31_tests --use-angle=swiftshader --gtest_filter=dEQP.KHR_GLES31/core_shader_storage_buffer_object_advancedswitchBuffersvs Bug: angleproject:4107 Change-Id: Id1f1c6699d512d0726b22d9bb0c16abad179950d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1972200 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
angle-autoroll 7f2930fc 2019-12-20T07:01:43 Roll third_party/SwiftShader 4fd7fccd6db5..6d29348ddb7e (3 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/4fd7fccd6db5..6d29348ddb7e git log 4fd7fccd6db5..6d29348ddb7e --date=short --first-parent --format='%ad %ae %s' 2019-12-19 sugoi@google.com Enable filtering depth only formats 2019-12-19 bclayton@google.com Kokoro: Add style presubmit checks 2019-12-19 swiftshader.regress@gmail.com Regres: Update test lists @ 4fd7fccd Created with: gclient setdep -r third_party/SwiftShader@6d29348ddb7e If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I301672b05e9440fe89ebd115a95a5739b203dac8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1978599 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 2303ff5b 2019-12-20T07:01:28 Roll third_party/vulkan-tools/src 246503e9c085..37af49fa7b55 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/246503e9c085..37af49fa7b55 git log 246503e9c085..37af49fa7b55 --date=short --first-parent --format='%ad %ae %s' 2019-12-19 tony@lunarg.com cube: Leave uniform memory mapped Created with: gclient setdep -r third_party/vulkan-tools/src@37af49fa7b55 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-tools-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I3f954505f6186b894d5515b1395f0e22960f183e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1978597 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 21e894d7 2019-12-20T07:01:41 Roll third_party/vulkan-validation-layers/src e8e8f32d1b7a..6b71f08cc83e (4 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/e8e8f32d1b7a..6b71f08cc83e git log e8e8f32d1b7a..6b71f08cc83e --date=short --first-parent --format='%ad %ae %s' 2019-12-19 locke@lunarg.com tests: Remove UnexpectedError 2019-12-19 locke@lunarg.com layers: Skip PARTIALLY_BOUND 2019-12-19 tony@lunarg.com gpu: Initialize report_data for instance 2019-12-19 petr_kraus@email.cz layers: Fix wrong version reported by tooling Created with: gclient setdep -r third_party/vulkan-validation-layers/src@6b71f08cc83e If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I23c37bcf3db43fb582be4711c319e7ac353db5d6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1978598 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi fe2ed33a 2019-12-19T14:43:25 Translator: Output memory qualifiers in OutputTree Bug: angleproject:3602 Change-Id: I673d8080be874bea0a73a89f7499b652549c2f3d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1976498 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Le Hoang Quyen fbe6c1d2 2019-12-14T21:54:34 Metal: correctly clamp stencil reference values According to GL spec: - If stencil ref value is larger than max value the stencil buffer can represent, clamp it to max value (2^bits - 1) - The stencil clear value & mask will be truncated to stencil buffer's bits instead of clamping. Metal API is very vague on how it handles the stencil ref value larger than the stencil bits can represent, so we need to handle it manually. In fact, the Metal API seems to have bugs when dealing with large stencil ref value, i.e. > 0xff for example. Bug: angleproject:2634 Change-Id: I86f61f0bfd19dfc0fa459c84d98785a1af857a6b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1966185 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Gary Sweet 7b55aac3 2019-12-12T10:14:10 Add Broadcom as a known vendor Broadcom's vendor ID wasn't listed anywhere. Fixed the sort order of vendor names in a number of places also. Bug: angleproject:4218 Change-Id: Iddc504fa35833ac14375cb77e7a2b1cc405f0e80 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1972714 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 9dec123f 2019-12-19T11:05:04 Ignore nameless vim swap files Starting vim with no file name creates a swap file in the form of .swp, .swo etc. Add these files to .gitignore. Bug: None Change-Id: Id9639f626daebc993ccc9ab0a9049a18e0f80862 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1975612 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll f321db9a 2019-12-19T07:01:48 Roll third_party/spirv-tools/src 38d7fbaad0a3..e70b009b0f1e (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/38d7fbaad0a3..e70b009b0f1e Created with: gclient setdep -r third_party/spirv-tools/src@e70b009b0f1e If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I8c577825cd88e3b8a502a36399a8988b0bba6020 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1974923 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll f23d5401 2019-12-19T07:01:43 Roll third_party/SwiftShader 21be09d8e699..4fd7fccd6db5 (4 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/21be09d8e699..4fd7fccd6db5 git log 21be09d8e699..4fd7fccd6db5 --date=short --first-parent --format='%ad %ae %s' 2019-12-18 chrisforbes@google.com Regres: Roll deqp forward to latest 1.1.6 2019-12-18 sugoi@google.com Allow 32F texture to use linear filtering 2019-12-18 capn@google.com Remove sw::Vector, Point, and Matrix 2019-12-18 swiftshader.regress@gmail.com Regres: Update test lists @ 21be09d8 Created with: gclient setdep -r third_party/SwiftShader@4fd7fccd6db5 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I496b3ce51d50ec10f72ccc523027dff7c77a135e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1974922 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll b0172d37 2019-12-19T07:01:41 Roll third_party/vulkan-validation-layers/src 2b19f3916726..e8e8f32d1b7a (4 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/2b19f3916726..e8e8f32d1b7a git log 2b19f3916726..e8e8f32d1b7a --date=short --first-parent --format='%ad %ae %s' 2019-12-19 mark@lunarg.com tests: Add ClearColorImage SHARED_PRESENT layout check 2019-12-19 mark@lunarg.com corechecks: Fix CmdClear layout validation 2019-12-18 tony@lunarg.com layers: Guard against ATTACHMENT_UNUSED 2019-12-17 mark@lunarg.com objlifetimes: Fix undestroyed object reporting Created with: gclient setdep -r third_party/vulkan-validation-layers/src@e8e8f32d1b7a If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Ice1e926ff24301c807b0acdf13d087e8b1242634 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1974921 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll ecc96617 2019-12-19T07:01:28 Roll third_party/vulkan-tools/src 9c5719ab7149..246503e9c085 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/9c5719ab7149..246503e9c085 git log 9c5719ab7149..246503e9c085 --date=short --first-parent --format='%ad %ae %s' 2019-12-18 shannon@lunarg.com winrt: Update `VulkanRT-License.txt` text Created with: gclient setdep -r third_party/vulkan-tools/src@246503e9c085 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-tools-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I68bb42383831cbf9aebc75e3daeae17cba45219b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1974920 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 4b80fbc8 2019-12-18T23:40:15 Fix textureGatherOffsets classification sampler2DRect was placed under ESSL while sampler2DArrayShadow was placed under desktop GLSL. They are swapped. Bug: angleproject:3569 Change-Id: Ibf39868d4cd702d9d1da7fc286171bb70b80d6df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1975430 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten 6423b7fc 2019-12-04T18:45:24 Return the correct location count for Matrices GetLocationCount() is currently returning the number of rows in the matrix, rather than the columns, which leads to shader validation errors (and test failures). This fix returns the number of columns in a matrix. Bug: angleproject:4200 Test: dEQP-GLES31.functional.separate_shader.random.63 Change-Id: I8d25eb3733c2ddbe53ff54794f480c1d43e22a88 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1952173 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Ian Elliott 20432bf3 2019-12-18T08:51:34 Vulkan: Update GLES 3.1 expectations for now-passing tests. Bug: angleproject:4099 Bug: angleproject:4100 Bug: angleproject:4102 Change-Id: I975485baea3ff6ec8247cbb5c92efdb907974ebc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1974271 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Courtney Goeltzenleuchter cd129d17 2019-12-16T15:08:11 Reset binding offset & size when unbinding Bug: angleproject:4147 Change-Id: I4ace1221d32631cdb14a95c71ee9a1617837a5ea Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1970495 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Yan 17b3c2f3 2019-10-14T14:13:59 Implement SamplerVideoWEBGL for WEBGL_video_texture extension on desktop WEBGL_video_texture is an extension that will improve uploading video frame to WebGL performance. (https://www.khronos.org/registry/webgl/extensions/proposals/WEBGL_video_texture/) This extension introduced a new texture type TEXTURE_VIDEO_IMAGE_WEBGL and a new sampler type samplerVideoWEBGL to sample it. In chromium implementation, TEXTURE_VIDEO_IMAGE_WEBGL maps to different native texture type based on platform. On desktop, it maps to GL_TEXTURE2D(Currently supported). On Android, it should map to GL_TEXTURE_EXTERNAL(TODO). SamplerVideoWEBGL needs to be mapped to sampler2D or samplerExternalOES according to TEXTURE_VIDEO_IMAGE_WEBGL implementation. This patch implements samplerVideoWEBGL in Angle to support WEBGL_video_texture on desktop. In this case, samplerVideoWEBGL should map to sampler2D. Bug: chromium:776222, angleproject:3889 Change-Id: Idb0a5fcde37ca75ccc1181226b91f257212e7500 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866274 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll 65e2f03b 2019-12-18T07:01:42 Roll third_party/SwiftShader fbbfeb700295..21be09d8e699 (17 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/fbbfeb700295..21be09d8e699 git log fbbfeb700295..21be09d8e699 --date=short --first-parent --format='%ad %ae %s' 2019-12-18 sugoi@google.com Enable samplerAnisotropy 2019-12-18 chrisforbes@google.com Advertise variableMultisampleRate feature 2019-12-17 bclayton@google.com clang-format the src/WSI directory 2019-12-17 bclayton@google.com clang-format the src/Vulkan directory 2019-12-17 bclayton@google.com clang-format the src/System directory 2019-12-17 bclayton@google.com clang-format the src/Reactor directory 2019-12-17 bclayton@google.com clang-format the src/Pipeline directory 2019-12-17 bclayton@google.com clang-format the src/Device directory 2019-12-17 bclayton@google.com Start a custom .clang-format rule 2019-12-17 capn@google.com Remove spaces after control statements keywords 2019-12-17 sugoi@google.com Enable blending for 32FP formats 2019-12-17 capn@google.com Make use of vec<T, N> vector broadcasts 2019-12-17 capn@google.com Replace vector() and replicate() with float4 constructors 2019-12-17 capn@google.com Create a generic vec<T, N> class 2019-12-17 capn@google.com Typedef int4/float4 from a vec4<T> template 2019-12-17 capn@google.com Prefer alignas() over ALIGN() 2019-12-17 sugoi@google.com R11G11B10F support Created with: gclient setdep -r third_party/SwiftShader@21be09d8e699 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Iff5532b2838a657d66fc51751fd95036d35f3f30 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1973467 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll e5c2e047 2019-12-18T07:01:02 Roll third_party/vulkan-tools/src 0c2618b2c31e..9c5719ab7149 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/0c2618b2c31e..9c5719ab7149 git log 0c2618b2c31e..9c5719ab7149 --date=short --first-parent --format='%ad %ae %s' 2019-12-17 charles@lunarg.com vulkaninfo: safely handle device groups not supported Created with: gclient setdep -r third_party/vulkan-tools/src@9c5719ab7149 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-tools-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Idca41eac95939e072b5e9317ffbfbcce57646ff6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1973466 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Brandon Schade 751e7888 2019-12-16T17:21:02 Update with official gl.xml and re-sort added formats Use latest Khronos gl.xml file and re-sort format enums that angle had already added to this file Bug: angleproject:4093 Change-Id: Ic5c1abc2a79fec14f3c53856a429c9b2489e3275 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1972199 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Ian Elliott c3f833f3 2019-12-17T16:06:59 Vulkan: Update expectations for newly-passing tests Bug: angleproject:4101 Bug: angleproject:4105 Change-Id: Ida462f69660a55e13b48ebea22ffc2a6b6bfe867 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1972202 Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Jamie Madill 17217c6e 2019-12-17T17:31:17 Vulkan: Fix layers being disabled in tests. The ANGLE_ENABLE_VULKAN_VALIDATION_LAYERS_BY_DEFAULT define shouldn't be being checked in tests. Enable the debug layers by default. Bug: angleproject:4227 Bug: angleproject:4229 Change-Id: I9717cb1c611ebd585a5c03ba2057036e1b086001 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1972497 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Jamie Madill d205ee3a 2019-12-16T10:59:43 Pass GLImplFactory to Query constructor. This makes the code more consistent and allows for the Query constructor to generate a Serial. Bug: angleproject:4223 Change-Id: I6cc683b11ed364f13d303f97aa0984e63260953e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1969061 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tobin Ehlis 545c6142 2019-12-17T13:53:28 Vulkan:Lazily link libvulkan Move libvulkan to a data_dep as we no longer statically link it. Bug: angleproject:4225 Change-Id: I96458d4727d2d47d8c259ec51d91fd852067c059 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1972192 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill d50151d3 2019-12-17T13:57:12 Move Serial utils to their own file. This will let the front-end access them without pulling in the rest of renderer_utils. The Serial class in particular will be useful for capture/replay. Also adds a very minimal unit test. Bug: angleproject:4223 Change-Id: I9e63b8a8227a245b20a8f024b960fcf60c7840db Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1954611 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill e60d05b2 2019-12-17T13:59:24 Make Sync constructors take GLImplFactory. Makes them consistent with the rest of the code. Will allow the Sync class to call methods in GLImplFactory to generate a resource Serial. Also updates the unit test to the new design. Bug: angleproject:4223 Change-Id: Ic5ba69c3a6a51d4b51d876c3b5e7eb7bc44a9ae8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1969060 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 44722daa 2019-12-06T22:31:08 Vulkan: Enable inactive SSBO with unsized array tests The change introduced in https://chromium-review.googlesource.com/c/angle/angle/+/1951523 removes inactive shader interface declarations. That automatically resolves an issue where glslang wrapper doesn't handle inactive SSBO declarations with unsized arrays, by removing those declarations at translation time altogether. Bug: angleproject:3714 Change-Id: I710d59546d716bfb5bc0112b5152fed20a810a52 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1954615 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 7e19e25e 2019-12-16T10:59:42 Vulkan: Fix SwiftShader disabled build. Disabling SwiftShader in the GN build led to a compile error when trying to use ANGLE_VK_SWIFTSHADER_ICD_JSON. Bug: angleproject:4223 Change-Id: I076a88e6bc58adf1e34bbb7286b1f46028cd021a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1969059 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi d674e1e5 2019-12-12T14:47:24 Vulkan: EXT_gpu_shader5: non-const offset in textureGatherOffset This change includes preparatory work for textureGatherOffsets as well, though that requires special handling which is addressed in a follow-up change. This special handling is due to the fact that this family of functions is the only built-in with an array parameter, and our built-in table generation doesn't handle it correctly. Bug: angleproject:3569 Change-Id: Ic1c8dd03878a184be00f578ab9fc42af8f6e47ea Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1965435 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jiajia Qin <jiajia.qin@intel.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>