Log

Author Commit Date CI Message
Michael Spang a8c7e10f 2020-01-28T19:50:38 Fuchsia: Switch ScenicWindow to use PresentOrReplaceView This avoids a deprecation warning: [01253.076] [WARNING:src/ui/bin/root_presenter/app.cc(109)] Using multiple presentations is deprecated. Call PresentOrReplaceView() to force replacement of current presentation. Bug: angleproject:4360 Change-Id: Icb1898ee542bde8c26a2dcd55c783372fc8ae7c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2027935 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Michael Spang f63fbcd5 2020-01-29T16:13:56 Fuchsia: Limit number of concurrent presents in ScenicWindow The test suite occasionally runs into the following error: [02036.794449][326733][326738][klog] INFO: [ERROR:src/ui/scenic/lib/scenic/session.cc(412)] Scenic session error (session_id: 1): Present2() called with no more present calls allowed. Terminating session. This is actually a problem with the test harness as resetting the window triggers a present with no fences and no OnFramePresentedCallback which means there is no way to know if we will exceed the limit. Add an OnFramePresentedCallback and count presents to stay under the limit. This blocks if there's more than 2 in flight presents. A dedicated async loop is used to avoid re-entering other code while waiting to present (there is no such case in the ANGLE test suite currently, but better safe than sorry). Typically if we run the whole suite there will be a failure in the middle, but re-trying the test that failed won't repro the issue. Add a test that reliably exhausts the limit by calling resetNativeWindow() in a loop. Bug: angleproject:4360 Change-Id: I24eb01fd72fc0be57c36e49b5875023a80d6ab91 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2027934 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang a36f8bd4 2020-01-29T12:10:17 Mark MemoryBuffer allocation functions as NO_DISCARD Not all call sites were checking the return value of MemoryBuffer::resize, mark the return value as NO_DISCARD and fix all the warnings. BUG=chromium:1030835 Change-Id: I762796e3d11efc131a814069d78a195b0d4c9f8f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2028151 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tobin Ehlis 1736c47b 2020-01-31T11:16:41 Vulkan: Remove transient cmd buffer workaround We no longer need this workaround. Also mCommandPoolFreeList dead code. Bug: angleproject:3508 Change-Id: Ib73ddd431eb1bf9a55c3421111af4df5976cc1fb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2033485 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com> Commit-Queue: Tobin Ehlis <tobine@google.com>
angle-autoroll 21a3262e 2020-01-31T17:35:05 Roll third_party/vulkan-validation-layers/src 8317b28e672a..bd4b3a888fca (27 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/8317b28e672a..bd4b3a888fca git log 8317b28e672a..bd4b3a888fca --date=short --first-parent --format='%ad %ae %s' 2020-01-31 tobine@google.com build: Add NOMINMAX to Win ninja build 2020-01-30 mark@lunarg.com build: Move NOMINMAX definition from src to cmake file 2020-01-29 shannon@lunarg.com build: Update known-good for 1.2.132 header 2020-01-28 tony@lunarg.com layers: Fix call to overwrite_range 2020-01-28 s.fricke@samsung.com tests: Added test for VUID 02283 2020-01-28 s.fricke@samsung.com layers: Added VUID 02283 2020-01-28 tony@lunarg.com tests: Add test for 02829 and 02830 2020-01-28 tony@lunarg.com layers: Add validation for 02829 and 02830 2020-01-28 s.fricke@samsung.com layers: Removed redundant sType check 2020-01-28 s.fricke@samsung.com layers: Fix shader not looping correctly 2020-01-27 jeremy@lunarg.com tests: Test specialization constant size 2020-01-27 jeremy@lunarg.com layers: Fix specialization constant size 2020-01-27 tony@lunarg.com tests: Better checking for 1.2 2020-01-24 jzulauf@lunarg.com layers: Optimize descriptor allocation 2020-01-23 Andrew.Fobel@amd.com tests: Add tests for VK_EXT_separate_stencil_usage 2020-01-23 Andrew.Fobel@amd.com layers: Add VK_EXT_separate_stencil_usage support 2020-01-23 jzulauf@lunarg.com build: Update copyright header dates for modified 2020-01-23 jzulauf@lunarg.com layers: Bug fix for parallel iterator 2020-01-23 jzulauf@lunarg.com layers: performance tune ImageSubresourceLayoutMap 2020-01-23 jzulauf@lunarg.com layers: implement small range map and wrapper 2020-01-23 jzulauf@lunarg.com layers: Cleanups and fixes from further unit test 2020-01-23 jzulauf@lunarg.com layers: Fix ImageLayoutIntialState tracking 2020-01-23 jzulauf@lunarg.com layers: Add range map view to image_layout 2020-01-23 jzulauf@lunarg.com layers: Apply google style to new image layout impl 2020-01-23 jzulauf@lunarg.com layers: ImageLayout traversal to iterators 2020-01-23 jzulauf@lunarg.com layers: Refactor heavyweight ForRange/Iterator 2020-01-23 jzulauf@lunarg.com layers: New sparse map for image subresource data Created with: gclient setdep -r third_party/vulkan-validation-layers/src@bd4b3a888fca 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 tobine@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: tobine@google.com Change-Id: Ib96b03f57e54f3e39573482c56cae1a2bd0970a3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2033407 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov 4dc1eb42 2020-01-31T14:05:46 Add UWP builders to CQ Also update doc. Bug: angleproject:3928 Change-Id: I1134e1fa9338fa95d647502bf62edb42555caec8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2033487 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jeff Gilbert a805ac7c 2020-01-31T10:54:21 Allow overriding ANGLE_PLATFORM_EXPORT. Bug: angleproject:4365 Change-Id: I4098ebdd718624e9d0578e0ee69f0a84a5b78183 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2033064 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Charlie Lao 71153201 2020-01-29T14:42:30 Vulkan: Disable restartRenderPassAfterLoadOpClear workaround This workaround was added due to qualcomm driver bug b/129281932. But this has been fixed with recent drivers. Removing the WR here so that it will not negatively affect performance. Bug: angleproject:4344 Change-Id: Iea2ec86082a0ced64bfe843bf916c6bdb2aea60b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2029210 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Tobin Ehlis <tobine@google.com>
Cody Northrop e580ca8b 2020-01-29T16:21:05 Capture/Replay: Implement Manhattan ES 3.0 support Populate the entrypoints required to get gfxBench Manhattan scene to capture and replay correctly from the beginning of the trace. Test: Captured and replayed Manhattan frames 0-500 on both Windows and Linux (Nvidia GPUs) Bug: angleproject:4091 Change-Id: I5447a6835e55e944772d37219f2bd414606f0a70 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2029216 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi c73475fb 2020-01-29T11:37:05 Vulkan: Fix UtilsVk dirtying driver uniforms descriptor set binding Most UtilsVk functions bind a descriptor set to index 0 (same as driver uniforms). If that happens to close a render pass, all is well as starting a new render pass ensures all descriptor sets are rebound. However, if the render pass is not closed, or if a dispatch call is issued (which never rebinds descriptor sets if not explicitly necessary), then the driver uniforms descriptor set may end up never rebound, causing a validation error (and possible crash or corruption). This change makes sure that UtilsVk notifies the context when it binds a descriptor set. The context then dirties the driver uniforms binding as appropriate. Bug: angleproject:4272 Change-Id: Ief20c7884fbe39712f844247489812afc70b30a9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2027938 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll 5de415c5 2020-01-31T07:01:09 Roll third_party/SwiftShader 6c3dc3581eaf..79b36b640692 (13 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/6c3dc3581eaf..79b36b640692 git log 6c3dc3581eaf..79b36b640692 --date=short --first-parent --format='%ad %ae %s' 2020-01-30 capn@google.com Fix use after free 2020-01-30 capn@google.com Have Kokoro accept imports from Piper 2020-01-30 amaiorano@google.com Subzero: fix incorrect cast 2020-01-30 capn@google.com Export Vulkan API entry functions 2020-01-30 capn@google.com Support LLVM 9+ build changes 2020-01-30 bclayton@google.com Regres: Fix unix build 2020-01-29 capn@google.com Regres: aways use build output path for ICD json 2020-01-29 capn@google.com Associate bug IDs with unimplemented functionality 2020-01-29 amaiorano@google.com Fix memory leak in rr::Optimizer 2020-01-29 bclayton@google.com Regres: Make it work on windows. 2020-01-29 amaiorano@google.com Subzero: implement coroutines for Win32 2020-01-29 bclayton@google.com SpirvShaderDebugger: Expose builtins in HLSL / GLSL. 2020-01-29 bclayton@google.com Vulkan/Debug: Add VariableContainer::extend() Created with: gclient setdep -r third_party/SwiftShader@79b36b640692 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 tobine@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: tobine@google.com Change-Id: I9ef2fb4008e8f9061df5b71bbf532f20a9caf188 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2032848 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll dd0f12d0 2020-01-31T07:01:04 Roll third_party/vulkan-tools/src ebe1b7497acb..260679605f98 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/ebe1b7497acb..260679605f98 git log ebe1b7497acb..260679605f98 --date=short --first-parent --format='%ad %ae %s' 2020-01-29 jeremyk@lunarg.com build: Update MoltenVK version in known_good.json Created with: gclient setdep -r third_party/vulkan-tools/src@260679605f98 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 tobine@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: tobine@google.com Change-Id: Ia19dd5c1d3ce0bfbd2197c8e8482b9cd6572399d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2032835 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll e5dbecac 2020-01-31T07:01:02 Roll third_party/vulkan-loader/src 44ac9b2f406f..fb94ccddb725 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/44ac9b2f406f..fb94ccddb725 git log 44ac9b2f406f..fb94ccddb725 --date=short --first-parent --format='%ad %ae %s' 2020-01-28 shannon@lunarg.com build: Update known-good for 1.2.132 header Created with: gclient setdep -r third_party/vulkan-loader/src@fb94ccddb725 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-loader-angle-autoroll Please CC tobine@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: tobine@google.com Change-Id: I4e12eb0260422c2dc86f2a71cc60fbf321647dd2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2032834 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 2742cd10 2020-01-31T07:01:07 Roll third_party/spirv-tools/src 97f1d485b763..7a2d408dea60 (4 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/97f1d485b763..7a2d408dea60 Created with: gclient setdep -r third_party/spirv-tools/src@7a2d408dea60 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 tobine@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: tobine@google.com Change-Id: Ia823c5eff6f7513d78345ef6d0193c026e0bf19e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2032837 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 689295e3 2020-01-31T07:01:08 Roll third_party/glslang/src 9a80305c0897..5e86b28ffb81 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/9a80305c0897..5e86b28ffb81 Created with: gclient setdep -r third_party/glslang/src@5e86b28ffb81 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 tobine@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: tobine@google.com Change-Id: Ia4b90712005cf624f973a43dca3e335f552f963b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2032838 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov 088b1baa 2020-01-30T17:53:07 Change uuid attributes to declspec in winrt. Due to warning C4467: usage of ATL attributes is deprecated Bug: angleproject:3928 Change-Id: I6620acc85ae974445a2a01fc109568fac8c3b23b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2032152 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Kenneth Russell e196bc85 2020-01-17T13:11:20 Add driver bug workaround for rewriting row major matrices. Joint work with syoussefi@, who wrote the RewriteRowMajorMatrices pass, and revised it for this CL to not rely on the NameNamelessUniformBuffers pass - which was breaking it on the GL backend. Hook up previously written RewriteRowMajorMatrices transformation, and enable on all GPU types on macOS. It is needed at least for AMD and Intel GPUs. Add a new test which verifies the behavior of dynamically-indexed arrays of row-major matrices. Bug: angleproject:2273 Bug: angleproject:3843 Change-Id: Id582f9cf6b9b1a59091aab1786539174f360b705 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2008717 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Yuly Novikov c8e486b1 2020-01-30T13:23:42 Roll chromium_revision e1633af636..8ffb18d0b9 (724302:736949) To include Windows toolchain with UWP support from build. Change log: https://chromium.googlesource.com/chromium/src/+log/e1633af636..8ffb18d0b9 Full diff: https://chromium.googlesource.com/chromium/src/+/e1633af636..8ffb18d0b9 Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/dfe5662014..e5293d8fa2 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/6b3e658d6f..afc5b798c7 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/c1b508625d..cf6ed46cff * third_party/googletest: https://chromium.googlesource.com/chromium/src/third_party/googletest/+log/f8eeeb06c0..c83f99e10c * third_party/jsoncpp: https://chromium.googlesource.com/chromium/src/third_party/jsoncpp/+log/1cfec065ed..493c9385c9 * third_party/libjpeg_turbo: https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git/+log/bc13578529..ce0e57e8e6 * third_party/yasm: https://chromium.googlesource.com/chromium/src/third_party/yasm/+log/02a8d2167f..0d0134789a * third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/f262c1b3c4..b9b9a5af7c * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/a9190d6699..953ea7aff8 DEPS diff: https://chromium.googlesource.com/chromium/src/+/e1633af636..8ffb18d0b9/DEPS Clang version changed c2443155a0fb245c8f17f2c1c72b6ea391e86e81:eaabaf7e04fe98990a8177a3e053346395efde1c Details: https://chromium.googlesource.com/chromium/src/+/e1633af636..8ffb18d0b9/tools/clang/scripts/update.py TBR=ynovikov@chromium.org, Bug: angleproject:3928 Change-Id: I8346ac7f178e73388d3dda26c6994302ece79585 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2031764 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill d9884d3e 2020-01-29T15:26:39 Vulkan: Don't dirty index/vertex buffers on each syncState. This will help for the command graph refactor so we can set up the command buffer barriers before we start the render pass for draw. Bug: angleproject:3539 Bug: angleproject:4029 Change-Id: If5a55db6ac1e06609a3a1e2245d7ab351152886a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2028450 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill ee07cb31 2020-01-29T18:02:50 Test Harness: Allow filter with sharding params. Some tweaks to when we call gtest initialization allows this to work. Bug: angleproject:3162 Change-Id: I75159108d3f746f666e57c1a6495a8c8616ef1cf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2024335 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Tobin Ehlis 12c0e765 2020-01-29T13:00:40 Add GN arg to extract native libs in APK Added GN bool arg "angle_extract_native_libs." When "false," which is the default, the native libs are zipped in the ANGLE apk. When true, the libs will be extracted which is useful when capturing flame graphs in order to see the ANGLE function names in your flamegraph. Bug: angleproject:4304 Change-Id: I86c91e5028688142b1137b859c800f2243c124d9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2028524 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tobin Ehlis <tobine@google.com>
James Darpinian e4859ae5 2020-01-27T15:21:58 Fix re-enabling ARB_texture_rectangle My earlier change https://crrev.com/c/1991969 had a bug. If ARB_texture_rectangle is disabled once, it can't be re-enabled because the extension behavior entry is deleted. ResetExtensionBehavior needs to restore it. Bug: angleproject:3770 Change-Id: Icf96acece8ea8d17287c8d09fb4849b61c9c2a36 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023398 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Geoff Lang 80da4214 2020-01-29T10:12:31 D3D11: Copy from Image objects instead of TextureStorage when possible. glCopyTextureCHROMIUM calls in D3D11 would call getNativeTexture on the copy source which would allocate a TextureStorage11 if one did not already exist. This caused full mip-chain allocations in some cases when we could have just copied directly from the staging Image11. When navigating to wikipedia.org: Peak memory | Stable memory Passthrough (before): 142 mb | 119 mb Passthrough (after): 138 mb | 106 mb Validating: 139 mb | 110 mb No mip-mapped textures were allocated after this change. BUG=chromium:1030835 Change-Id: Icd14afaec445299423cfea293cba501d774f6ade Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2028147 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Michael Spang 053929ac 2020-01-24T18:15:38 Fuchsia: Enable perFrameWindowSizeQuery by default Fuchsia won't return VK_ERROR_OUT_OF_DATE_KHR after a size change, so we need to check every frame. In fact we don't even tell Scenic what the new size is during resize, because it does not care - the surface size determines the "window size", not the other way around. Bug: angleproject:4348 Change-Id: I8f9af0d1379f4993865c7ccedc9aba3cab90cf54 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023914 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Alexis Hetu 33027d3e 2020-01-28T16:08:02 Enable GL_OES_depth_texture_cube_map with Vulkan backend GL_OES_depth_texture_cube_map depends on depthTextureOES, but adds the same new texture format/type requirements as GL_OES_packed_depth_stencil, so instead of adding a specific check for GL_OES_depth_texture_cube_map, the Vulkan backend checks for a combination of GL_OES_depth_texture and GL_OES_depth_texture_cube_map to enable GL_OES_depth_texture_cube_map. ANGLE has no specific checks for whether a format is "cubemappable", but Vulkan has no restrictions of the format of cubemaps, so if the proper formats are supported, creating a cube of any of these formats should be implicitly supported. Bug: angleproject:4293 Change-Id: I968dbe8869ba0f50de18dd41f1195e847c06b520 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2026027 Commit-Queue: Alexis Hétu <sugoi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Michael Spang 09d51a57 2020-01-24T17:28:24 Fuchsia: Skip PointSpriteAlternatingDrawTypes on ARM Fuchsia This is not passing currently, skip it for now. Bug: angleproject:4349 Change-Id: If36a144e8d17cc94c2186a7a794358b14223349e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023913 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
shrekshao eca11cc8 2020-01-28T14:18:40 SH_CLAMP_INDIRECT_ARRAY_BOUNDS logic update Remain the old hardware requirement for turning on clampArrayAccess. But also turns it on universally for WebGL context. So that we won't suffer from clampArrayAccess not handled properly on some compute shader deqp tests. Bug: chromium:1042252, angleproject:4361 Change-Id: Ib11affd6df27ce7d2100980d2b8decdee36876e8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2026029 Reviewed-by: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shrek Shao <shrekshao@google.com>
Shahbaz Youssefi b91acdcf 2020-01-21T11:02:26 Vulkan: Cleanup glslang wrapper There are no longer @@ QUALIFIER and or @@ LAYOUT markers. Only @@ XFB-DECL @@ and @@ XFB-OUT @@ markers remain, which are now replaced with simple string manipulation. Bug: angleproject:3394 Change-Id: I9c1883458d9de3ea59ac08aae57a7c8985e7afbe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2012741 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Courtney Goeltzenleuchter cb2b5136 2020-01-10T11:04:38 Vulkan: Simplify format table generation Remove the "override" table. That gets in the way of some solutions. If a format cannot be supported by a native Vulkan format as indicated in the "map" table, then check fallbacks. Also add support for native RGBA4 and R5G5B5A1 support. Previously those formats would be emulated with RGBA8 due to the override, but now code will check if the native format is available and use it. Bug: angleproject:4282 Change-Id: Ib33ea40543d91a2c2a95075b277f825a8822037c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1994538 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Shahbaz Youssefi f1f082e1 2020-01-17T14:53:38 Vulkan: Set varying location & xfb decorations in SPIR-V The shader translator outputs arbitrary location indices. Once compiled by glslang, the SPIR-V transformer modifies these decorations. If the transform feedback extension is used, it will also add the relevant decorations to the varyings that are captured. Bug: angleproject:3394 Change-Id: I5ecafd0536408612a5d4b920dbabbfabe650657c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2008468 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jeff Gilbert 05e08edf 2019-12-26T20:58:48 Disable skipValidation when context is lost. Lost no-error contexts should gracefully handle GetProgramiv, etc. Includes test that a lost no-error context doesn't crash on getProgramiv. Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1601703 Bug: angleproject:4244 Change-Id: I8c37df37e83308ab85ad958df6dab46b0ab348e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2003239 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll 13c44dfe 2020-01-29T07:01:22 Roll third_party/glslang/src 07a55839eed5..9a80305c0897 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/07a55839eed5..9a80305c0897 Created with: gclient setdep -r third_party/glslang/src@9a80305c0897 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 tobine@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: tobine@google.com Change-Id: I3161499b3a6b2e3ad96ef5952782c4409289fa1c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2027195 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 71508b20 2020-01-29T07:01:06 Roll third_party/vulkan-tools/src e39b5cf6a1b6..ebe1b7497acb (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/e39b5cf6a1b6..ebe1b7497acb git log e39b5cf6a1b6..ebe1b7497acb --date=short --first-parent --format='%ad %ae %s' 2020-01-28 charles@lunarg.com vulkaninfo: use patch version from instance Created with: gclient setdep -r third_party/vulkan-tools/src@ebe1b7497acb 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 tobine@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: tobine@google.com Change-Id: I878644e5a636c1a21740dda675b6199a86b9f118 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2027217 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 1f4ddc96 2020-01-29T07:01:08 Roll third_party/SwiftShader 34e16df059f8..6c3dc3581eaf (2 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/34e16df059f8..6c3dc3581eaf git log 34e16df059f8..6c3dc3581eaf --date=short --first-parent --format='%ad %ae %s' 2020-01-28 capn@google.com Support LLVM 8+ build changes 2020-01-28 bclayton@google.com SpirvShaderDebugger: Fix double nesting of struct members Created with: gclient setdep -r third_party/SwiftShader@6c3dc3581eaf 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 tobine@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: tobine@google.com Change-Id: Ie221229f552143cbb8c98b731b5bd4fdd3a17195 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2027194 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 5ca050d1 2020-01-20T14:59:41 Vulkan: Set fragment output locations in SPIR-V The shader translator outputs arbitrary location indices for fragment outputs. Once compiled by glslang, the SPIR-V transformer modifies these decorations. Bug: angleproject:3394 Change-Id: Ib9d8336bccc392e789e4d93031fdcce9c466b7a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2011214 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi bef8ca7d 2020-01-20T14:19:05 Vulkan: Set vertex attribute locations in SPIR-V The shader translator outputs arbitrary location indices for vertex attributes. Once compiled by glslang, the SPIR-V transformer modifies these decorations. Bug: angleproject:3394 Change-Id: I88453b44e3a8770f51e79228148233ff308f1885 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2011212 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi 71e6afb1 2020-01-14T14:12:31 Vulkan: Set set/binding in SPIR-V This change introduces a SPIR-V transformer that modifies shader interface variable decorations directly in SPIR-V instead of manipulating the input GLSL. Currently, descriptor set and binding indices are set by the transformer. The shader translator outputs arbitrary set and binding indices. Once compiled by glslang, the SPIR-V transformer modifies these decorations. The ultimate goal is to be able to modify the SPIR-V again when program pipeline objects decide a different set/binding is necessary. Bug: angleproject:3394 Change-Id: If358265a72bf1fe9f5676562b39a632cb2e05dc4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2001477 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Michael Spang 2bc9cc12 2020-01-24T16:40:46 Fuchsia: Blacklist swiftshader on Fuchsia This doesn't work and is highly misleading as the tests run with the real GPU. Bug: angleproject:4353 Change-Id: Id9139436e39d5e8e063bcc679b7c63f589d3b748 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023912 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Michael Spang 44c75073 2020-01-20T19:59:55 Fuchsia: Disable GLES3 testing on Fuchsia ARM The vulkan driver is missing required extensions so these tests are all failing. Bug: angleproject:4352 Change-Id: Id1af7c40798d8844fbf832c6066260fe3a8bfeda Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023911 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi e28883de 2020-01-25T23:25:43 Vulkan: Fix handling of inactive fragment outputs These were never assigned a location. They are now removed by the translator similar to other inactive variables. Bug: angleproject:4313 Change-Id: I3398d06e1dea3f43b84f206cca07cde5b44b21a8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2021734 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Michael Spang bab2b3de 2020-01-22T14:52:31 Vulkan: Disable global merge for volk This optimization pass breaks the build by exporting volk's internal binding symbols from libGLESv2.so. Since the test binary also links volk, this causes a SEGV as the wrong (uninitialized) function pointer is called. This is an LLVM bug and will be fixed upstream: https://reviews.llvm.org/D73235 Bug: angleproject:4351 Change-Id: Iebe0eabd975f8109231df30eef8c9074af8190e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023910 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Michael Spang <spang@chromium.org>
Michael Spang b630bf9e 2020-01-24T17:27:01 Fuchsia: Implement SystemInfo on Fuchsia The Android vulkan code is reusable, so move that to a new file SystemInfo_vulkan.cpp and call it in the Android & Fuchsia implementations. This is necessary to skip tests based on GPU. Bug: angleproject:4349, angleproject:4352 Change-Id: I8330cfcdbd41f4d51391bd5ed7f0820c55e02801 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023909 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Yuly Novikov e3ba0d7d 2020-01-28T13:46:13 Disable 'nodiscard' warning on MSVC for dEQP. Bug: angleproject:4358 Change-Id: I774b4ba442e27935a676f2ce82356e8c77a0db27 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2024334 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Michael Spang 4a8fa19f 2020-01-27T17:19:57 Fuchsia: Switch to gfx_tests sandbox configuration The default sandbox config for tests built in chromium doesn't allow access to the GPU or display. Switch to the gfx_tests sandbox config to allow the tests to run. Bug: angleproject:4350 Change-Id: Ib80db196ef55df694369cfc7a3cf18327ce7c952 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023908 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
shrekshao 571ceb5f 2020-01-24T13:11:54 Turn on clampArrayAccess globally but off for compute shaders out-of-bounds-uniform-array-access.html could fail on Linux Nvidia OpenGL even if GL_KHR_robust_buffer_access_behavior is available. Turning clampArrayAccess on globally but turn it off for Compute Shader, which is not used by WebGL so should be okay. FYI: The failures when turning this on globally are all in compute shaders. One could be fixed by using int cast instead of float for the clamp modifier. The other is due to array.length() couldn't return correct result for array in SSBO. Bug: chromium:1042252 Change-Id: Ic6f7adae4600d35207646881b18990a0c25a889a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2020463 Commit-Queue: Shrek Shao <shrekshao@google.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill cc414d57 2020-01-28T12:58:30 D3D11: Fix uninitialized BufferEx SRV. This was causing an unrelated error that was complicating diagnosing test failures with the command graph refactor. Bug: angleproject:4029 Change-Id: I31df76e7ea1c7fb731b49e97ac8a527a165efd48 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2024331 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill af5e3822 2020-01-28T10:05:36 Fix overlay build. The overlay define was placed in the libANGLE target instead of in the config. This was causing a compile error in the capture-enabled build. Bug: None Change-Id: I9df02faaf57683119ca49a9b44e41ff049b05556 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023479 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll e3906550 2020-01-28T14:19:42 Roll third_party/vulkan-headers/src 881bbb347a08..726435870206 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/881bbb347a08..726435870206 git log 881bbb347a08..726435870206 --date=short --first-parent --format='%ad %ae %s' 2020-01-21 oddhack@sonic.net Update for Vulkan-Docs 1.2.132 Created with: gclient setdep -r third_party/vulkan-headers/src@726435870206 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 tobine@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 TBR=tobine@google.com Bug: None Change-Id: Id4cb30292b4e2ac7f47d56eae2461acf1a1dbd91 Tbr: tobine@google.com Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2025050 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Ian Elliott a6dfa11f 2020-01-28T09:09:47 Vulkan: SwiftShader now getting correct sample positions This was fixed in SwiftShader and I verified it Bug: angleproject:4213 Change-Id: I6f591b81a62ec4c586d4abb7e6a2345794602833 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2025066 Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
angle-autoroll ccfe9890 2020-01-28T15:33:07 Roll third_party/spirv-tools/src 1b3441036a8f..97f1d485b763 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/1b3441036a8f..97f1d485b763 Created with: gclient setdep -r third_party/spirv-tools/src@97f1d485b763 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 tobine@google.com,syoussefi@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: tobine@google.com,syoussefi@google.com Change-Id: I51395f4148ecce27c60eb6e2743a3e067cc23620 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2025056 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 7488a096 2020-01-27T22:17:59 Add a test to expose location'ed varying link bug Bug: angleproject:4355 Change-Id: I2b914d3e6bf74ccf5d3f42d7bd010e44e45645ea Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2023921 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill f144b77b 2020-01-28T08:27:16 Make run_code_generation fail if git cl format fails. The lack of error code was hiding errors in the Skia auto-roller. Bug: skia:9812 Change-Id: Ib43e5eb1749161e9fa0186bfd4a293dadaf82f8a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2024178 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll 77f99a5a 2020-01-28T07:01:47 Roll third_party/vulkan-loader/src 310fb8617946..44ac9b2f406f (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/310fb8617946..44ac9b2f406f git log 310fb8617946..44ac9b2f406f --date=short --first-parent --format='%ad %ae %s' 2020-01-28 charles@lunarg.com Fix spelling mistakes 2020-01-27 lenny@lunarg.com loader: Update comments for shared aliases Created with: gclient setdep -r third_party/vulkan-loader/src@44ac9b2f406f If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-loader-angle-autoroll Please CC tobine@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: tobine@google.com Change-Id: I59345f736941fb7d09073b23eedb369ec928998f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2024579 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 27389e6e 2020-01-28T07:01:47 Roll third_party/glslang/src b0ada80356ca..07a55839eed5 (6 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/b0ada80356ca..07a55839eed5 Created with: gclient setdep -r third_party/glslang/src@07a55839eed5 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 tobine@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: tobine@google.com Change-Id: Ib661a6253054f7afb03dd0efc331814bb6fd152f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2024580 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 49032645 2020-01-28T07:01:14 Roll third_party/vulkan-tools/src b181c1a7ddb5..e39b5cf6a1b6 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/b181c1a7ddb5..e39b5cf6a1b6 git log b181c1a7ddb5..e39b5cf6a1b6 --date=short --first-parent --format='%ad %ae %s' 2020-01-27 charles@lunarg.com vulkaninfo: update readme, move vulkansdk.exe note Created with: gclient setdep -r third_party/vulkan-tools/src@e39b5cf6a1b6 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 tobine@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: tobine@google.com Change-Id: Ia9354d6ec422d61ea6d8c2b9d78969e7a5844015 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2024322 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 43c07019 2020-01-28T07:01:41 Roll third_party/SwiftShader 748ad200897b..34e16df059f8 (6 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/748ad200897b..34e16df059f8 git log 748ad200897b..34e16df059f8 --date=short --first-parent --format='%ad %ae %s' 2020-01-27 sugoi@google.com Revert "VK_EXT_shader_stencil_export support" 2020-01-27 sugoi@google.com Sample location fix 2020-01-27 capn@google.com Avoid ignoring unsuccessful routine creation 2020-01-27 capn@google.com Implement byte swizzle operations 2020-01-27 bclayton@google.com Docs: Add VulkanShaderDebugging.md 2020-01-27 sugoi@google.com VK_EXT_shader_stencil_export support Created with: gclient setdep -r third_party/SwiftShader@34e16df059f8 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 tobine@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: tobine@google.com Change-Id: I8b32f7b78a5d813b47059889cf869e31ba8e5bbd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2024578 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 086aded3 2020-01-26T13:40:02 Return the correct location count for matrices in structs GetLocationCount() returned secondary size for fields of a struct. For matrices however, the correct value would be the primary size. This is a similar fix to 6423b7fc7ded02a702d24feb0730731ab9f6c061. Bug: angleproject:4200 Change-Id: I2c69b9454729993010766fcde0cabec986b7429d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2021738 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Courtney Goeltzenleuchter d0b4eaf6 2020-01-16T09:38:28 Vulkan: Allow user to specify preferred device On a platform with multiple graphics devices (e.g. laptop with integrated and descrete devices) it's handy to be able to specify the specific device we want ANGLE to use. Setting the environment variable ANGLE_PREFERRED_DEVICE to the device name as returned by VkPhysicalDeviceProperties.deviceName will select that device. Bug: angleproject:4305 Change-Id: Ib16895add2c36a59135942b52401ceb7b6bc0895 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2002737 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 2d1d9d35 2020-01-27T12:09:41 Fix atomicAdd validation w.r.t to swizzles Bug: angleproject:4150 Change-Id: I22c0c0382a2b208dd983fa1981ffc75f1b1945e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2022359 Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jonah Ryan-Davis 1a1a1427 2020-01-23T13:57:21 Expose eglGetMscRateCHROMIUM from EGL_CHROMIUM_sync_control When ANGLE is using the GL backend on GLX, we can expose eglGetMscRateCHROMIUM via glXGetMscRateOML. Otherwise, this function should return false. Bug: chromium:1042393 Change-Id: Id9b308c2217e07ee9860e2869be0e23b7a0c7411 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2017048 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi a1f1cce6 2020-01-27T11:34:58 Vulkan: updateActiveImages: process each image once There are two issues with processing the images multiple times: - The graph trips up because on the first addWriteDependency, the current writer pointer of the image will be set to the recorder, and which on the next addWriteDependency creates a self-dependency. - We transition the layout of the whole of the image, so doing that multiple times is inefficient. Bug: angleproject:4312 Change-Id: Ibae72e8698edf5db97139f48d68624d3e9a1d5db Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2022355 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 60a3d848 2020-01-27T07:01:47 Roll third_party/vulkan-loader/src 37d3a235af2c..310fb8617946 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/37d3a235af2c..310fb8617946 git log 37d3a235af2c..310fb8617946 --date=short --first-parent --format='%ad %ae %s' 2020-01-24 shannon@lunarg.com loader: Update copyright date to include 2020 Created with: gclient setdep -r third_party/vulkan-loader/src@310fb8617946 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-loader-angle-autoroll Please CC timvp@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: timvp@google.com Change-Id: Id295d999da84a9787906274b29a5cf2704f41d5e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2022607 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 78fdcee1 2020-01-27T07:01:18 Roll third_party/spirv-tools/src b97057e7f747..1b3441036a8f (6 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/b97057e7f747..1b3441036a8f Created with: gclient setdep -r third_party/spirv-tools/src@1b3441036a8f 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 timvp@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: timvp@google.com Change-Id: I74460814982034369877ec0f33a803c9d181a656 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2022605 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 41a98380 2020-01-27T07:01:41 Roll third_party/SwiftShader 5ef91b82cbed..748ad200897b (6 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/5ef91b82cbed..748ad200897b git log 5ef91b82cbed..748ad200897b --date=short --first-parent --format='%ad %ae %s' 2020-01-24 capn@google.com Don't override vkQueuePresentKHR() failure codes with VK_SUBOPTIMAL_KHR 2020-01-24 capn@google.com Discern between per-swapchain and vkQueuePresent command results 2020-01-24 amaiorano@google.com Subzero: replace globals with external memory for constant vectors 2020-01-24 amaiorano@google.com SubzeroReactor: implement missing atomic ops 2020-01-24 bclayton@google.com Regres: add cmd/run_testlist 2020-01-24 bclayton@google.com Regres: Restructure directories for main packages Created with: gclient setdep -r third_party/SwiftShader@748ad200897b 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 timvp@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: timvp@google.com Change-Id: I413c92d71d802c0df2d06d416c93d0f313e8a51e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2022606 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 589b1875 2020-01-27T07:01:14 Roll third_party/vulkan-tools/src 93ab50fc27de..b181c1a7ddb5 (4 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/93ab50fc27de..b181c1a7ddb5 git log 93ab50fc27de..b181c1a7ddb5 --date=short --first-parent --format='%ad %ae %s' 2020-01-24 charles@lunarg.com vulkaninfo: use gpu version instead of instance 2020-01-24 shannon@lunarg.com vulkaninfo: Update copyright date to include 2020 2020-01-24 shannon@lunarg.com winRT: Update copyright date to include 2020 2020-01-24 charles@lunarg.com vulkaninfo: remove duplicate flags/bitmasks Created with: gclient setdep -r third_party/vulkan-tools/src@b181c1a7ddb5 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 timvp@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: timvp@google.com Change-Id: I1e713740496a8749fc0b8c82b542ef16f2d12855 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2022604 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Ethan Lee fcef6dcb 2020-01-24T22:41:35 For GGP builds, define __ggp__ manually. Unlike other platforms' definitions, the GGP SDK expects the project files to define this instead of having the compiler define it for us. Bug: angleproject:4237 Change-Id: I8f10311fdff785a74c5e49fc53a512f1c050bff3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2021010 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 52ef28dc 2020-01-24T09:55:01 Vulkan: Update active textures before setupDraw(). The linear command graph prohibits rendering outside the render pass *after* we begin a renderpass. The prior code would render outside a render pass (changing image layouts) even after a RenderPass was started in setupDraw(). The new code changes the image layouts in ContextVk::syncState so we no longer need to "prepend" image layout changes after we started a RenderPass. Now we record layout changes followed by the draw calls or other renderpass ops. Bug: angleproject:4029 Bug: angleproject:3539 Change-Id: I420858907ac38f995400c1b566c856d966a4e979 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2015940 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com>
Jeff Vigil 564eb6f2 2019-11-22T16:46:02 Implement EGL_IMG_context_priority Change RendererVk to have 3 VkQueues instead of one. Each queue has a priority. To match extension: Low, Med, High. gl::Context contains priority. ContextVk contains a reference to one of the queues. Every call to vulkan that uses queue, uses the associated context queue. Bug: angleproject:3962 Change-Id: Ibd913a07a81c77bd975921d6dbae6a222842e88b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1978154 Commit-Queue: Jeff Vigil <j.vigil@samsung.com> Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Cody Northrop 080d711b 2020-01-08T13:04:44 Tests: Add a perf test using traces This test will load traces and cycle through a set of frames. The new tests are: TracePerfTest.Run/gl_trex_200_210 TracePerfTest.Run/gl_trex_800_810 TracePerfTest.Run/gl_trex_900_910 TracePerfTest.Run/gl_trex_1300_1310 To download the traces, you must be granted access and authenticate with the cloud. See the steps in RestrictedTraces.md for this. Then add the following to the end of your .gclient file: "custom_vars": { "checkout_angle_internal":"True" }, And run `glcient runhooks`. To enable building the test, add the following GN arg: build_angle_trace_perf_tests = true See the new markdown document for ways to execute the tests. Bug: angleproject:3630 Change-Id: Ic25cd94fb36b35fcf187e88d3bf9548c65f59755 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1949605 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 3712b2e4 2020-01-24T17:08:30 Vulkan: Command graph linearization (Step 1). This initial prototype introduces a new feature to the Vulkan back-end that disables the deferred command recording. The intent is to have a lower CPU overhead during submission calls which currently walk a DAG. The feature is not complete. Currently it only passes the ANGLE SimpleOperationTests. Moreover it is extremely simple and only allows use of one command buffer at a time. In the future we'll allow open command buffers for recording outside and inside render pass commands at the same time. We'll also support collapsing RenderPasses together for some use cases. Currently the prototype only passes "SimpleOperationTest". There are quite a few unimplemented features like queries, XFB, etc. Bug: angleproject:4029 Change-Id: I82760986683f55e37ac4ea559de6f4cffb6ef84e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1953485 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com>
Tibor Dusnoki d5d8ffa8 2020-01-17T14:59:34 Disable ANGLE GL and Vulkan on Windows on ARM Currently Windows on ARM doesn't support OpenGL but it is enabled in ANGLE by default. Vulkan is only supported via Swiftshader so we should not test native Vulkan. Therefore it causes crashes and fails on Windows on ARM when running angle_end2end_tests. Bug: angleproject:4318 Change-Id: I70349ed53a2248df2dc8e7a0c0b3a6a5537a1110 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2007414 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Jeff Gilbert 23521ca3 2020-01-22T18:42:56 Validate `context` before use in ValidateStreamConsumerGLTextureExternalAttribsNV. Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1608235 Bug: angleproject:4333 Change-Id: I957b6412f7c744e4bbaa7d8084b3c81ee58d45ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2015838 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Artem Bolgar e93a438b 2020-01-10T01:48:24 GL_OVR_multiview shouldn't be defined for WebGL spec'ed shaders According to the latest change in WebGL's OVR_multiview2 spec, the GL_OVR_multiview should NOT be defined. Refer to https://www.khronos.org/registry/webgl/extensions/OVR_multiview2/ I.e. this shader should NOT fail compilation: #version 300 es #extension GL_OVR_multiview2 : require #ifdef GL_OVR_multiview #error legacy GL_OVR_multiview support must be forbidden #endif .... Bug: angleproject:4279 Change-Id: Ic94cba6785ea3a1fa14d5131dc0960214aa574be Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1994830 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
James Darpinian 512abe85 2020-01-23T13:28:01 Clamp array accesses when robust buffer access not available Apple doesn't support GL_KHR_robust_buffer_access_behavior, so we don't know if we can trust the driver to be safe with out of bounds array accesses. It's not currently failing the out of bounds access tests, but this may be coincidental. In general it makes sense to always clamp array accesses when GL_KHR_robust_buffer_access_behavior is not supported. The validating command decoder actually enables this workaround unconditionally, but that seems unnecessary. Bug: angleproject:2978 Change-Id: Ib061dd4db10e044ced0dff95d0aac6a91f15b100 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2018182 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Jamie Madill 0a3f58f1 2020-01-24T09:54:31 Fix undefined behaviour in ClearTest. We were expecting an uninitialized texture to contain black. However the contents of the texture data may be undefined. Discovered when working with the Vulkan command stream refactor. Bug: angleproject:4029 Change-Id: Ia5d24707746819b116ac0053fabb48033574569a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2017978 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill c67252ea 2020-01-24T10:19:35 Add feature flags to EGLPlatformParameters "tie". The missing flags were causing the configs to be reused and improperly tested. Noticed when working with the Vulkan command graph feature. Bug: angleproject:4029 Change-Id: I2fea73fc0637d1adbf73577eb5dfcfa4a759c066 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2019503 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Michael Spang <spang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 453926f5 2020-01-19T14:49:32 Vulkan: Remove inactive shader inputs in the translator Inactive vertex attributes are harmless to remove. Between two consecutive stages, the input varyings must be a subset of the previous stage's output varyings. This means removing inactive input varyings is also harmless. Removing inactive output varyings is not possible though. GLSL allows a varying to not be written by the previous stage even if it's used in the current stage (values will be undefined, but it's not an error). This means that an inactive output varying may still need to exist as part of the shader interface in case the following stage has that varying as input (and is active). Bug: angleproject:3394 Change-Id: I7302973d2b8356d9f54a66f8259c32f245a99904 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2009986 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 1d480fcc 2020-01-23T16:08:53 Fix image linking not verifying same format Bug: angleproject:4316 Change-Id: I7508c0f9b0546bf3a23f819de49e7a91a74b6bc9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2018046 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 4e98dfea 2020-01-24T07:01:14 Roll third_party/vulkan-tools/src aaba1e4e6aec..93ab50fc27de (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/aaba1e4e6aec..93ab50fc27de git log aaba1e4e6aec..93ab50fc27de --date=short --first-parent --format='%ad %ae %s' 2020-01-23 ben.e.saunders@gmail.com vulkaninfo: Use a helper for the two-call idiom 2020-01-23 charles@lunarg.com vulkaninfo: Fix UUID printing Created with: gclient setdep -r third_party/vulkan-tools/src@93ab50fc27de 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 timvp@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: timvp@google.com Change-Id: Ic9f6fa78a33b2a7a7f10cf982259427e89902a73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2018732 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 817587fa 2020-01-24T07:01:41 Roll third_party/SwiftShader c514ab001bb0..5ef91b82cbed (4 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/c514ab001bb0..5ef91b82cbed git log c514ab001bb0..5ef91b82cbed --date=short --first-parent --format='%ad %ae %s' 2020-01-23 amaiorano@google.com Subzero: temp fix Float4 % Float4 (FRem) 2020-01-23 capn@google.com Use UNIMPLEMENTED() for missing functionality we claim support for 2020-01-23 capn@google.com Replace all UNIMPLEMENTED() with UNSUPPORTED() 2020-01-23 swiftshader.regress@gmail.com Regres: Update test lists @ c514ab00 Created with: gclient setdep -r third_party/SwiftShader@5ef91b82cbed 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 timvp@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: timvp@google.com Change-Id: Ic2ad208df92cff61b75498d05456c20e3c156df9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2018734 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi f3b4e6c3 2020-01-13T17:07:13 Vulkan: No inactive samplers left to cleanup in glslang wrapper Loose inactive samplers are already removed in RemoveInactiveInterfaceVariables. In-struct samplers are always marked active by CollectVariables if the uniform is active. If the uniform is inactive, it is removed entirely by the translator. Thus no inactive samplers are left for glslang wrapper to clean up. Bug: angleproject:3394 Change-Id: Ic0fef052afa992bd612fd22ffa1e5b9aa72a17bc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1999488 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 8dfe472c 2020-01-13T15:20:51 Vulkan: Output qualifiers in the translator With the exception of varyings, every other qualifier can be directly output by the translator. This simplifies and optimizes glslang wrapper. Varyings' in/out qualifiers are still placed in @@ QUALIFIER macros so glslang wrapper can remove them, if inactive, not by commenting them out, but by turning them into global variables. Bug: angleproject:3394 Change-Id: I9a3d18df2cfd36a38308bf8f71ac12f1e1513ece Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1998839 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
angle-autoroll 813b0277 2020-01-23T18:55:19 Roll third_party/spirv-tools/src ab7ac60f14ae..b97057e7f747 (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/ab7ac60f14ae..b97057e7f747 Created with: gclient setdep -r third_party/spirv-tools/src@b97057e7f747 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 timvp@google.com,syoussefi@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: timvp@google.com,syoussefi@google.com Change-Id: Ia17ee85af3920b6a7ee048c82edd80cd1b93d30e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2017650 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 2439a3af 2020-01-23T07:01:41 Roll third_party/SwiftShader b766e5e7fbf4..c514ab001bb0 (8 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/b766e5e7fbf4..c514ab001bb0 git log b766e5e7fbf4..c514ab001bb0 --date=short --first-parent --format='%ad %ae %s' 2020-01-23 capn@google.com Evaluate interpolants at pixel center when multisampling disabled 2020-01-23 capn@google.com Use pixel centers for non-multisampled rasterization 2020-01-22 sugoi@google.com Improve 565 and 5551 precision 2020-01-22 bclayton@google.com CMake: Make the use of endif() / endif(EXPR) consistent 2020-01-22 bclayton@google.com Vulkan debugger: Don't wait for debugger by default. 2020-01-22 bclayton@google.com CMakeLists: Allow overriding of building cppdap 2020-01-22 bclayton@google.com CMakeLists: Only expose options if they're not set as vars 2020-01-22 capn@google.com Don't use VK_TRUE comparisons Created with: gclient setdep -r third_party/SwiftShader@c514ab001bb0 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 timvp@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: timvp@google.com Change-Id: I67f196099db31fb4b81cfb9026b7dd74b98e0310 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2016467 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 525b679e 2020-01-23T07:01:14 Roll third_party/vulkan-tools/src ca9b61a4455f..aaba1e4e6aec (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/ca9b61a4455f..aaba1e4e6aec git log ca9b61a4455f..aaba1e4e6aec --date=short --first-parent --format='%ad %ae %s' 2020-01-22 charles@lunarg.com vulkaninfo: erroneous presentation surfaces Created with: gclient setdep -r third_party/vulkan-tools/src@aaba1e4e6aec 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 timvp@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: timvp@google.com Change-Id: Ieced0aa2ef75002d81d4cc12e34d2026e6ee07b8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2016466 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 3fbe51cc 2020-01-23T07:01:43 Roll third_party/vulkan-validation-layers/src ac02c61ffc63..8317b28e672a (6 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/ac02c61ffc63..8317b28e672a git log ac02c61ffc63..8317b28e672a --date=short --first-parent --format='%ad %ae %s' 2020-01-22 johnz@lunarg.com layers: update minor version for linux json files 2020-01-22 mark@lunarg.com chassis: Rename debug logging mutex 2020-01-22 mark@lunarg.com chassis: Add debug log message helpers to framework 2020-01-22 mark@lunarg.com tests: Delete some unused vars & init from framework 2020-01-22 tony@lunarg.com layers: Don't examine attachments if imageless fb 2020-01-22 tony@lunarg.com layers: Update json files for 1.2 Created with: gclient setdep -r third_party/vulkan-validation-layers/src@8317b28e672a 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 timvp@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: timvp@google.com Change-Id: Ib69c079ec225fa979d2d3b7962f59aed08a03cfe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2016468 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll ba63b1a6 2020-01-23T07:01:47 Roll third_party/vulkan-loader/src af8c7e040f93..37d3a235af2c (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/af8c7e040f93..37d3a235af2c git log af8c7e040f93..37d3a235af2c --date=short --first-parent --format='%ad %ae %s' 2020-01-22 mark@lunarg.com loader: Improve 1.2 promoted extension fix 2020-01-22 mark@lunarg.com loader: Fix handling of promoted device extensions Created with: gclient setdep -r third_party/vulkan-loader/src@37d3a235af2c If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-loader-angle-autoroll Please CC timvp@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: timvp@google.com Change-Id: I4524d731537d1f76896d49e98b59d79e742cc990 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2016469 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 24627fa4 2020-01-21T11:39:56 Row-major test: switch to compute Based on Nvidia's recommendation that the following: all(lessThan(gl_FragCoord.xy, vec2(1.0, 1.0))) isn't necessarily true for only a single FS invocation, even when not multisampling. The tests that do the above are changed to compute instead. Bug: angleproject:3831 Change-Id: I22d935f797c2e385218bc6af31e98a7f672a7707 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2012743 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 135f8fcb 2020-01-13T16:18:41 Vulkan: Remove inactive uniforms in the translator By removing inactive uniforms in the translator, glslang wrapper doesn't need to comment them out. Additionally, inactive uniforms don't find their way in the default uniform block, reducing its size if there's a mix of active and inactive uniforms. As collateral, it also fixes a bug where inactive uniforms of struct type were not correctly removed by glslang wrapper. Bug: angleproject:3394 Bug: angleproject:4211 Bug: angleproject:4248 Change-Id: I874747070e875fe24bf59d39d1322e319e280a16 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1999278 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Michael Spang abaeb415 2020-01-20T20:33:23 Vulkan: Fix setupDraw when VK_EXT_transform_feedback is not enabled There's no dirty bit handler if VK_EXT_transform_feedback disabled, but we're setting that dirty bit in syncState. This results in calling a null method pointer. Skip the invalidate if the extension is not enabled. gl::LogMessage::~LogMessage() at ./../../third_party/angle/src/common/debug.cpp:0 rx::ContextVk::setupDraw(gl::Context const*, gl::PrimitiveMode, int, int, int, gl::DrawElementsType, void const*, angle::BitSetT<11ul, unsigned long, unsigned long>, rx::vk::priv::SecondaryCommandBuffer**) at ./../../third_party/angle/src/libANGLE/renderer/vulkan/ContextVk.cpp:844 rx::ContextVk::drawArrays(gl::Context const*, gl::PrimitiveMode, int, int) at ./../../third_party/angle/src/libANGLE/renderer/vulkan/ContextVk.cpp:1698 gl::Context::drawArrays(gl::PrimitiveMode, int, int) at ./../../third_party/angle/src/libANGLE/Context.inl.h:112 gl::DrawArrays(unsigned int, int, int) at ./../../third_party/angle/src/libGLESv2/entry_points_gles_2_0_autogen.cpp:926 (anonymous namespace)::AttributeLayoutNonIndexed::Draw(int, unsigned int, unsigned short const*) at ./../../third_party/angle/src/tests/gl_tests/AttributeLayoutTest.cpp:431 (anonymous namespace)::AttributeLayoutTest::Run(bool) at ./../../third_party/angle/src/tests/gl_tests/AttributeLayoutTest.cpp:305 [This stack is from the added assert; calling a null function pointer crashes without producing a useful stack trace.] Bug: angleproject:4326 Change-Id: I036ae322bddc4865229fa3fe7ea72a4344b99f83 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2011408 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Courtney Goeltzenleuchter 13881af3 2020-01-21T12:52:56 Vulkan: Fix cast of float to unsigned int for ARM ARM devices cast float to unsigned int differently than Intel devices. Need to do additional work to ensure consistent behavior. This was causing negative API tests to fail because the invalid parameter was being turned into a 0 which is valid, but not what was intended (should have been 0xffffffff). Bug: angleproject:4323 Change-Id: I7447842d0f56362d9eb2db4d04b5416c78e51d27 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2012746 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi b36e46ab 2020-01-08T15:49:18 Vulkan: Line raster emulation through specialization constant In preparation for compiling shaders early at link time, this change reworks line raster emulation such that it uses specialization constants instead of a preprocessor condition. This means drawing both triangles and lines with this program will still result in a one-time shader compilation. The compilation is still done at draw time in this change. Bug: angleproject:3394 Change-Id: I0bf91398868d7f7147456533b728906b505192b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1992365 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Alexis Hetu 6d6b91a6 2020-01-21T15:58:19 Enable GL_NV_fence with Vulkan backend Implemented FenceNVVk, based on the existing vk::SyncHelper class. Bug: angleproject:4295 Change-Id: I3f44a66e27ce3bd24461894dae4757b25321a6a4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2013880 Commit-Queue: Alexis Hétu <sugoi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi 8247ae78 2020-01-22T11:58:34 Manually roll spirv-headers https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/af64a9e826bf..dc77030acc9c The spirv-tools autoroller didn't roll this repo. Bug: chromium:1044061 Change-Id: I5ad841e1957d48506f6b3c4a1a57e003b35b6f24 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2014882 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 230e14dd 2020-01-21T23:32:06 Add support for layout(early_fragment_tests) in; Bug: angleproject:4314 Change-Id: I37b228f37201cc4188834e68459cd7294727c3ac Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2014240 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 01e28144 2020-01-21T13:15:18 Row-major test: Clarify std140's stride calculation Bug: angleproject:3830 Change-Id: I5fa213927b609ef33c729ded5d42add8f148dcb1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2012622 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 5a7356ae 2020-01-16T23:22:31 Add support for non-float mix The non-float variations of the mix builtin were conditioned to desktop GLSL, but they are present in ESSL 3.1+. This change also implements constant folding of these builtins as exercised by dEQP. Bug: angleproject:4300 Change-Id: Iec34de4cf370e00d67fd605148cd7848f9e122f8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2006809 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Courtney Goeltzenleuchter a8614528 2020-01-17T15:48:19 Update expectations after dEQP test fixes Latest dEQP roll included some test fixes for GLES 3.1 Remove those exclusions from expectations file. Bug: angleproject:3590 Bug: angleproject:4323 Change-Id: If08c474490c24f63d2f8cc198ee7e3dc85d7f999 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2008128 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Tobin Ehlis <tobine@google.com>
Jamie Madill 7d45184d 2020-01-22T08:34:48 Vulkan: Fix naming in CommandGraphResource. Accidentally submitted a patch set without requested changes. This corrects the function names to 'hasRecordedCommands' and 'hasRunningCommands'. Bug: angleproject:4029 Change-Id: I1cf3046052ace304594ef939566b0b36bae822df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2013924 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Anders Leino f6506799 2020-01-22T11:50:08 Reduce fail expectations dEQP-GLES31.functional.program_interface_query.buffer_variable.* There are still a subset of failing tests, but the failures mentioned in angle bug 2277 are no longer expected. Bug: angleproject:2277 Change-Id: I6c55283911bb7be4208b41e9bcd1a4960ed5fc5a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2012948 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>