Log

Author Commit Date CI Message
angle-autoroll 6774f9bd 2020-03-30T07:01:40 Roll third_party/SwiftShader 02e15b249b12..1c29477aa06e (19 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/02e15b249b12..1c29477aa06e git log 02e15b249b12..1c29477aa06e --date=short --first-parent --format='%ad %ae %s' 2020-03-29 capn@google.com Don't expose the sampling routine cache's mutex 2020-03-29 capn@google.com Create PowerVR targets if submodule already exists 2020-03-28 bclayton@google.com Regres: Generate coverage data on nightly runs 2020-03-28 bclayton@google.com Subzero Coroutines: Use ultra-low-level marl APIs 2020-03-28 bclayton@google.com Subzero: Ensure coroutines are same-thread. 2020-03-28 capn@google.com Rename constant cache to snapshot cache 2020-03-28 capn@google.com Add sampling routine documentation 2020-03-27 sugoi@google.com Fix Android.bp following the SPIRV-Tools update 2020-03-27 bclayton@google.com Regres: Switch to building with LLVM 10 2020-03-27 bclayton@google.com Regres: Add llvm.Version.Download() to download and verify a LLVM toolchain 2020-03-27 bclayton@google.com Kokoro: Test LLVM 10 backend for ubuntu 2020-03-27 bclayton@google.com Coverage: Add 'turbo-cov': a faster reimplementation of llvm-cov 2020-03-27 capn@google.com Don't download all submodules for Kokoro tests 2020-03-27 bclayton@google.com Reactor: Disable more warnings to get LLVM 10 building 2020-03-27 bclayton@google.com LLVM 10: Add configs/common and configs/darwin. 2020-03-27 bclayton@google.com LLVM 10: Add configs/common and configs/linux. 2020-03-27 sugoi@google.com Update SPIR-V Tools to fd773eb50 2020-03-27 sugoi@google.com Update SPIR-V Headers to f8bf11a02 2020-03-27 digit@google.com Remove two minor compiler warnings/errors: Created with: gclient setdep -r third_party/SwiftShader@1c29477aa06e 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 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: I46d87ba91dbad14dacc8e1aac9994917912edf25 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2126481 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 8eb3ec7e 2020-03-30T07:01:42 Roll third_party/vulkan-loader/src cc481ef27631..b0c27ce32864 (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/cc481ef27631..b0c27ce32864 git log cc481ef27631..b0c27ce32864 --date=short --first-parent --format='%ad %ae %s' 2020-03-27 mikew@lunarg.com tests: Use complete version from header 2020-03-27 mikew@lunarg.com loader: Use complete version from header Created with: gclient setdep -r third_party/vulkan-loader/src@b0c27ce32864 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 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: I4d3d4af2ac995fb18150c03942b4cb3969fef2b6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2126482 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 47e3be4e 2020-03-30T07:01:12 Roll third_party/glslang/src 99508c1ce389..344bd0889ac9 (4 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/99508c1ce389..344bd0889ac9 Created with: gclient setdep -r third_party/glslang/src@344bd0889ac9 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 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: Id2316c86a9281d419b78fe8f8e48fb601ef6e0a1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2126478 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tim Van Patten 1b2dd6f9 2020-03-02T16:28:15 Vulkan: Refactor varying validation for separable programs The varying validation is being refactored to better handle separable programs. Some additional validation is being added as well regarding: - Number of varyings (inputs vs outputs) - Precision This refactor will also allow ProgramPipelines to validate varyings between shaders that are in different Programs. Bug: angleproject:3570 Change-Id: I13f324da2ffea039e696962d6971a54f7a7b6f77 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2083847 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Tim Van Patten b387ce93 2020-02-21T16:05:41 Vulkan: Move ProgramInfo/ShaderInfo to ProgramExecutableVk The classes ProgramInfo and ShaderInfo are being moved into ProgramExecutableVk along with the ProgramVk members mDefaultProgramInfo and mLineRasterProgramInfo. This refactor is necessary since these members are common between ProgramVks and ProgramPipelineVks. Bug: angleproject:3570 Change-Id: I94cdb1096c6a0c007d858135af694da58d7897ff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2068901 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tim Van Patten f47dccab 2020-02-21T15:40:36 Vulkan: Create TransformSpirvCode() To support Program Pipeline Objects, the SPIR-V transformations must be completed at draw time once all of the variable locations are known. To achieve this, the transformation work is being refactored into TransformSpirvCode() which can be called separately from GlslangGetShaderSpirvCode(). Bug: angleproject:3570 Change-Id: Ia479cb2e4b4201e37acd0859c70081cecb80d0bf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2068900 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten 85c076ee 2020-02-20T17:54:35 Vulkan: Make mVariableInfoMap a gl::ShaderMap<> The ShaderInterfaceVariableInfoMap information is specific to each shader stage, since the locations are determined for each shader stage. This change makes mVariableInfoMap a gl::ShaderMap<> to handle this, which will make it easier to compile separable programs, determine the variable locations, and transform the SPIR-V. Bug: angleproject:3570 Change-Id: I28b71a37efe54bbcfe1dcd445fa03ee71e74f0a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2062741 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Tim Van Patten abaa3573 2020-02-20T10:23:02 Vulkan: Only calculate variable locations once Variable locations and descriptor set/binding values are calculated multiple times: - Compiling GLSL->SPIR-V - Creating the Vulkan pipeline layout - Updating descriptor sets These values should instead be calculated once and reused throughout since they won't change without recompiling the shader program. Bug: angleproject:3570 Change-Id: I5d8767b3b2e2f741aade7fec9991eea53ee2eb98 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2067101 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tim Van Patten 10ade024 2020-02-13T18:11:54 Create the ProgramExecutableVk Class The ProgramExecutableVk class is being created to collect data structures that are common to both ProgramVks and ProgramPipelineVks, as well as any shared functions. This allows callers to make Program-/ProgramPipeline- specific queries without needing to know exactly which responded by querying the current ProgramExecutableVk. This will also allow the necessary data structures to only be populated and stored within the ProgramExecutableVk when necessary and reused as often as necessary. A few things are being moved into this class: - mVariableInfoMap This information will be required to defer translating the SPIR-V until when the vulkan pipeline layout is determined and the actual locations are known.   This will also allow removing determining these locations twice (during GLSL->SPIR-V compilation and pipeline layout). - createPipelineLayout() - update*DescriptorSet() - Descriptor Set Layout lists - Pipeline Layout - Various other functions/members related to pipeplines, descriptor sets, etc. Bug: angleproject:3570 Change-Id: I4b5ababeafec865148783c8ffd4c15f659f4856d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2055656 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Yuly Novikov b19000f3 2020-03-27T19:47:08 Skip KHR-GLES31.core.shader_image_load_store.advanced-allMips-* tests Were previosly FAIL, but crash on Windows SwANGLE. Bug: angleproject:4414 Change-Id: Iefe1625f7ad3eec8ba091ec3543e8cb699c62c65 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2125370 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill d03b15b2 2020-03-26T17:22:18 Vulkan: Mask out Depth/Stencil RTs in feedback loops. This should enable some cases of limited support for feedback loops with depth/stencil buffers. For example with Manhattan and the Vulkan back-end. Increases the number of RenderPasses in Manhattan slightly. This will regress performance slightly until we can work out a better solution that is also conformant with the spec. Bug: angleproject:4517 Change-Id: I2758e6b4c2a930474c09cdc0950f3b6c34541089 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2106670 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Tim Van Patten 68083e89 2020-03-04T15:55:53 Vulkan: Move cached samplers/images and has*() to ProgramExecutable The active samplers and images are being moved from Program into ProgramExecutable to unify interacting with them for Programs and ProgramPipelines Also, create some helper functions for gl::Program that ProgramExecutable can call to make it easier for ProgramPipeline to respond to similar queries for each of the Programs in the ProgramPipeline. Bug: angleproject:3570 Change-Id: I0b37f1a379e56b9659d82d92f6d7a546beee11cd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2087648 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill bd2bdf9f 2020-03-26T15:40:09 Fix feedback loop clearing detection. Bug: angleproject:4517 Change-Id: I3231b129718019f83495843404cd011eb2cd480d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2122689 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com>
Jamie Madill 0bba1100 2020-03-27T14:39:44 Update OWNERS information. Also includes some documentation maintenance. Bug: angleproject:4511 Change-Id: I7ecce494909f06387875ff85a10004d0c446bbaf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2124597 Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 13c139e7 2020-03-21T15:25:50 Support masking out DS feedback loops in RenderTargetCache. Currently this is a pure refactor and doesn't change any functionality. In a follow-up we can us this bit to mask out DS RTs when Manhattan and other apps render with feedback loops. Bug: angleproject:4517 Change-Id: I80ccd022d90a781506791110d11be195db8cd3e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2112936 Reviewed-by: Cody Northrop <cnorthrop@google.com>
Geoff Lang 0e65abea 2020-03-27T10:32:18 D3D11: Serialize and deserialze mImage2DUniforms. mImage2DUniforms was not saved with the program binary causing shaders with images to fail compilation when loaded from binary. BUG: angleproject:4519 BUG: b:152292873 Change-Id: I51581031ae1f9d4b4d986057ef3f876d809c7f24 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2124587 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Tim Van Patten 7e0699a2 2020-02-05T17:04:06 Create the ProgramExecutable Class The ProgramExecutable class is being created to collect data structures that are common to both Programs and ProgramPipelines, as well as any shared functions. This allows callers to request the current ProgramExecutable from the State and make Program-/ProgramPipeline-specific queries without needing to know exactly which responded. This will also allow the necessary data structures to only be populated and stored within the ProgramExecutable when necessary and reused as often as necessary. Bug: angleproject:3570 Change-Id: I101f08ab03421894667b4a426a04d2147489f0e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2040512 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll fd3480d2 2020-03-27T07:01:42 Roll third_party/vulkan-loader/src acbf316040c3..cc481ef27631 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/acbf316040c3..cc481ef27631 git log acbf316040c3..cc481ef27631 --date=short --first-parent --format='%ad %ae %s' 2020-03-26 udknight@gmail.com docs: Fix wrong type name in InterceptFunctionName prototype Created with: gclient setdep -r third_party/vulkan-loader/src@cc481ef27631 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 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: I8ba7480037117cce4e2ba8f5f851fa1cce890b88 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2123983 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 651fc45d 2020-03-27T07:01:12 Roll third_party/glslang/src 2df8c71258de..99508c1ce389 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/2df8c71258de..99508c1ce389 Created with: gclient setdep -r third_party/glslang/src@99508c1ce389 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 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: I9ddd9b7cfdee4b54da8e1a36a8c46283ef09e75d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2123981 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 6431673e 2020-03-27T07:01:37 Roll third_party/vulkan-validation-layers/src 443c2caa1714..55f01953d6e9 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/443c2caa1714..55f01953d6e9 git log 443c2caa1714..55f01953d6e9 --date=short --first-parent --format='%ad %ae %s' 2020-03-26 s.fricke@samsung.com layers: Fix renderpass2 VUID Created with: gclient setdep -r third_party/vulkan-validation-layers/src@55f01953d6e9 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 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: Ib8b7160e7c1691cec71a50509676fa739919d520 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2123982 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll c1f94204 2020-03-27T07:01:12 Roll third_party/SwiftShader 77090261dabc..02e15b249b12 (8 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/77090261dabc..02e15b249b12 git log 77090261dabc..02e15b249b12 --date=short --first-parent --format='%ad %ae %s' 2020-03-26 bclayton@google.com third_party: Create scripts for updating spirv-[tools|headers] 2020-03-26 capn@google.com Fix taking aspect into account for image view identifiers 2020-03-26 bclayton@google.com Kokoro: Move llvm configs into 7.0 subdirectory, create 10.0 copies. 2020-03-26 bclayton@google.com Regres: Add support for generating collated coverage info 2020-03-26 bclayton@google.com CMake: Emit coverage-toolchain.txt file next to ICD json 2020-03-26 bclayton@google.com CMake: Add SWIFTSHADER_EMIT_COVERAGE option 2020-03-26 bclayton@google.com CMake: Add option for selecting LLVM version. 2020-03-26 bclayton@google.com Merge "Initial drop of LLVM 10 to third_party/llvm-10.0" Created with: gclient setdep -r third_party/SwiftShader@02e15b249b12 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 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: I6250b123e1feed7defddeeb0197b03f7182d43e4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2123980 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Cody Northrop f2bee304 2020-03-25T22:41:32 Capture/Replay: Implement more GLES entrypoints Tested with several apps that can't be captured otherwise. Bug: angleproject:3611 Change-Id: I2ad18c3bfcab48b0b385b2a868f57369c292b602 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1998838 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop d8c1b03c 2020-03-26T07:06:25 Roll glslang and Vulkan validation layers Autoroller for glslang was paused, breaking layer build. Replaces: https://crrev/c//2119884 TBR: courtneygo@google.com Bug: b:152298150 Bug: angleproject:4510 Change-Id: I6c431a76455c991cbbb8621050dbf74acf8eea41 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2121903 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
angle-autoroll bf6b8d4a 2020-03-26T07:02:22 Roll third_party/vulkan-headers/src fb7f9c9bcd1d..0e78ffd1dcfc (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/fb7f9c9bcd1d..0e78ffd1dcfc git log fb7f9c9bcd1d..0e78ffd1dcfc --date=short --first-parent --format='%ad %ae %s' 2020-03-24 oddhack@sonic.net Update for Vulkan-Docs 1.2.136 Created with: gclient setdep -r third_party/vulkan-headers/src@0e78ffd1dcfc 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 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 TBR=cnorthrop@google.com Bug: None Change-Id: I17d7b9ba8e96fa1e3dab15260436b71887d55536 Tbr: cnorthrop@google.com Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2121708 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll da984675 2020-03-26T07:01:42 Roll third_party/vulkan-loader/src ff44f21a0178..acbf316040c3 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/ff44f21a0178..acbf316040c3 git log ff44f21a0178..acbf316040c3 --date=short --first-parent --format='%ad %ae %s' 2020-03-23 charles@lunarg.com scripts: stubs in dispatch table lacked matching return types Created with: gclient setdep -r third_party/vulkan-loader/src@acbf316040c3 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 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: I5505867022ca850e4b94e1bf4454c03ec93850a8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2119885 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 0ee5eb6d 2020-03-26T07:01:04 Roll third_party/SwiftShader 540bdf92531d..77090261dabc (10 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/540bdf92531d..77090261dabc git log 540bdf92531d..77090261dabc --date=short --first-parent --format='%ad %ae %s' 2020-03-25 capn@google.com Identify image views based on their state 2020-03-25 capn@google.com Provide packed VkFormat to uint8_t mapping 2020-03-25 capn@google.com Uniquely identify sampler state 2020-03-25 capn@google.com Split vk::Sampler state off into a structure 2020-03-25 capn@google.com Fix handling Memset<> assignment and comparison 2020-03-25 bclayton@google.com Add script for updating llvm 10 2020-03-25 amaiorano@google.com regres: add daily run against SwiftShader/Subzero 2020-03-25 bclayton@google.com CMake: Don't export LLVM_INCLUDE_DIR to PARENT_SCOPE 2020-03-25 bclayton@google.com CMake: Move LLVM rules out to third_party/llvm-7.0 2020-03-25 bclayton@google.com Add missing copyright header to CMakeLists.txt Created with: gclient setdep -r third_party/SwiftShader@77090261dabc 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 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: Ie880cfbad88061a571bedcf2b41a2876275fdd81 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2119882 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 7a58e5b7 2020-03-26T07:01:14 Roll third_party/spirv-tools/src 1346dd5de119..fd773eb50d62 (4 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/1346dd5de119..fd773eb50d62 Created with: gclient setdep -r third_party/spirv-tools/src@fd773eb50d62 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 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: I6349d641ed962bb159f0659054055896eaa3b9c2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2119883 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Courtney Goeltzenleuchter 6719f54a 2020-03-24T08:36:41 Update Vulkan header and related repos Vulkan header was updated with non-backward compatible change so need to update all dependencies simultaneously. Bug: b:152298150 Bug: angleproject:4510 Change-Id: I46ac9a3a0ccb52184fd183df617804c866b63453 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2118151 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop b69c4e14 2020-03-24T15:02:06 Capture/Replay: Update CaptureReplay sample for compression * Move DecompressBinaryData to a shared helper * Start using it in CaptureReplay sample * Error out if decompress callback isn't set correctly Test: AngryBirds and CandyCrush captures replay on desktop Test: angle_perftests --gtest_filter="*Trace*" Bug: angleproject:4484 Change-Id: I0432004fdb0cfb0fd61f9a66f792591c9aa40d9b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2118790 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Cody Northrop 78c77361 2020-03-20T13:50:24 Perf: Add a single Manhattan trace Now that TRex is up and working and Manhattan runs cleanly: * Add a single compressed Manhattan trace. * Allow errors from tests to fail the test * Restore the working directory between each trace test Test: angle_perftest --gtest_filter=TracePerfTest* Bug: b:151349786 Bug: angleproject:3630 Bug: angleproject:4496 Change-Id: I9e9d9342efb23431380f484befb9a19915c4bd0a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2113230 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Yuly Novikov a7510f06 2020-03-04T18:39:32 Re-enable angle_end2end_tests on 32-bit Windows SwiftShader In order to add angle_end2end_tests on Win 32-bit SwANGLE bots. Bug: angleproject:4421, angleproject:4092 Change-Id: I6923ca461492469f05503aebf2256763ea7061aa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2088654 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill c77cb596 2020-03-24T14:39:32 No-op draw calls with rendering feedback loops. This is quite within spec and protects our various back-ends from FB loops. Also makes the check more cached for optimization purposes. Bug: angleproject:4490 Change-Id: Ia82ec88244d07670d68ce53495b5893b8a75ac42 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2118153 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
angle-autoroll 38152bda 2020-03-25T07:01:03 Roll third_party/SwiftShader 6c11cf2ad9ca..540bdf92531d (2 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/6c11cf2ad9ca..540bdf92531d git log 6c11cf2ad9ca..540bdf92531d --date=short --first-parent --format='%ad %ae %s' 2020-03-24 bclayton@google.com Regres: Add new run_testlist flags 2020-03-24 bclayton@google.com Merge changes I9862d8e2,Ie1024655 Created with: gclient setdep -r third_party/SwiftShader@540bdf92531d 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 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: I9c4fb01c33c816001c65959bf14c33c09d1e3070 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2119920 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov 107e4e98 2020-03-24T21:23:16 Lift SwANGLE dEQP-GLES3.functional.fbo.blit.conversion.* suppression Fixed by https://swiftshader-review.googlesource.com/c/SwiftShader/+/42548/ Bug: angleproject:4416 Change-Id: I703608d7d3fa15f2428a832896a68893efbb35ae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2119234 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Ian Elliott d0800d29 2020-03-24T15:01:22 Vulkan: Fix crashes/failures in array-of-struct uniforms When array-of-struct support was added to ANGLE, it was not added to the shader cache serialize/deserialize functions. This affects many GLES 2/3/3.1 dEQP tests, such as: dEQP-GLES2.functional.uniform_api.value.assigned.by_value.render.struct_in_array.sampler2D_samplerCube_vertex Bug: angleproject:4475 Bug: b:151387995 Change-Id: I159f6340db255ec50c16b59fec23a61ed05aa8f7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2118152 Commit-Queue: Ian Elliott <ianelliott@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill b91d2630 2020-03-24T13:17:58 Speculative fix for assertion failure with samplers. This was crashing for example here: https://chromium-swarm.appspot.com/task?id=4b174a9710848410 https://chromium-swarm.appspot.com/task?id=4b214baec2ee7e10 With this stack: libglesv2!gl::TextureState::isBoundAsSamplerTexture libglesv2!gl::Texture::onUnbindAsSamplerTexture libglesv2!gl::State::unsetActiveTexture+0x9 libglesv2!gl::State::updateActiveTextureState+0x2d2 libglesv2!gl::State::updateActiveTexture+0x3aa libglesv2!gl::State::setSamplerTexture+0x4a1 libglesv2!gl::Context::bindTexture+0x1ab libglesv2!gl::BindTexture+0x99 chrome!GrGLFunction+0x1f chrome!GrGLGpu::bindTexture+0x1a0 chrome!GrGLProgram::bindTextures+0x1b9 chrome!GrGLOpsRenderPass::onBindTextures+0x50 chrome!GrOpsRenderPass::bindTextures+0x106 chrome!GrOpFlushState::bindTextures+0xf chrome!`anonymous namespace'::FillRectOp::onExecute+0xd3 It's unclear how we could end up with a Texture bound that doesn't go through the normal setter functions. I did see a potential hole where textures might not get an unbind call when a Context is torn down. This could lead to bugs in multi-context situations. This protects the set/unset functions in a helper class to ensure we always call onBind/onUnbind and forces the destructor to call unbind. Bug: angleproject:4490 Change-Id: Ied64e02bbe3a37efcab6cbdd4bf2d1b6dcb8b3ac Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2118254 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Kenneth Russell e39d055d 2020-03-23T17:45:57 Fix robust resource initialization with clipped CopyTexSubImage2D. When CopyTexSubImage2D calls were clipped against the bounds of the read framebuffer by the underlying renderer backends, the robust resource initialization code assumed that the original destination area would be overwritten by the renderer, which was not the case. Add new tests which were previously failing on macOS with the ES2_OpenGL and ES3_OpenGL backends. The Metal backend is still failing and a follow-on bug has been filed. Bug: angleproject:4504 Change-Id: I34821dd90597f31b3cbf0921b94756556e485c91 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2116873 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Jamie Madill ed0e932c 2020-03-23T16:46:38 Supress test failing with new Intel driver. EGLDirectCompositionTest.RenderSolidColor/ES2_D3D11_NoFixture failing with the 26.20.100.7870 driver. Bug: chromium:1063962 Change-Id: I48ef5915c67e05cc86a568c28115dae26dc78db2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2116871 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll 954f3d83 2020-03-24T07:01:14 Roll third_party/spirv-tools/src 60104cd97446..1346dd5de119 (4 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/60104cd97446..1346dd5de119 Created with: gclient setdep -r third_party/spirv-tools/src@1346dd5de119 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 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: Ic133e60c657d4f9b2eaf8f28dfa26a3527bffe37 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2117477 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 20983e35 2020-03-24T07:01:05 Roll third_party/SwiftShader 22d73d15e778..6c11cf2ad9ca (5 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/22d73d15e778..6c11cf2ad9ca git log 22d73d15e778..6c11cf2ad9ca --date=short --first-parent --format='%ad %ae %s' 2020-03-24 capn@google.com Remove unused sampler parameter 2020-03-24 capn@google.com Specialize sampling routine for immutable sampler data 2020-03-23 amaiorano@google.com CMake: make SWIFTSHADER_DCHECK_ALWAYS_ON work on Windows 2020-03-23 chrisforbes@google.com Refactor vertex fetch to use VkFormat more aggressively 2020-03-23 bclayton@google.com Merge changes I2b7adc3c,I5873dfa8 Created with: gclient setdep -r third_party/SwiftShader@6c11cf2ad9ca 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 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: I301e41b5044c90f43228d8b01fb6d26ae249fee6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2117476 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill 6fead375 2020-03-21T14:06:19 Vulkan: No-op redundant FB state changes. This uses a trick by comparing the prior to the updated FB description to filter out rendundant changes. Will allow the front-end syncState to sometimes noisily report state changes when there aren't any in the back-end. Ideally we wouldn't generate any updates when there aren't real changes. However because Manhattan often transitons between a few zero states it gets a bit difficult to determine in the front-end. Also adds a no-op for redundant samples changes in the front-end. Fixes a regression in the number of RenderPasses in Manhattan from work to support rendering feedback loops. Bug: angleproject:4490 Change-Id: Ibf83d584107a4561da7ad47a2d3fb543e63e31f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2112935 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Alexey Knyazev 31e36a63 2020-03-14T21:40:58 Reland "Refactor BitCount" This is a reland of baecb7d55c692a93a29a46939029b8262174ca62 Directly use NEON instructions on ARM/ARM64 on MSVC. Original change's description: > Refactor BitCount > > POPCNT intrinsics cannot be used without hardware support, so a CPUID > check and polyfills are required for some CPUs when using MSVC to > avoid runtime failure. > > Other changes include: > - Clang: use builtins on all platforms to provide exact intent to the > compiler; > - MSVC on ARM: use dedicated intrinsics; > - x86/x64 fallback is now branchless and works in constant time. > > Bug: angleproject:4462 > Change-Id: I00fcabda1c842677d8cb4bfd280d932d0d10c0a5 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2102811 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Geoff Lang <geofflang@chromium.org> Bug: angleproject:4462 Change-Id: Ia58ae00fa4230f77d981d4ba393fa3481806c5b0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2113570 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll 4c7460ac 2020-03-23T07:01:03 Roll third_party/SwiftShader 1c9f24263e6c..22d73d15e778 (1 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/1c9f24263e6c..22d73d15e778 git log 1c9f24263e6c..22d73d15e778 --date=short --first-parent --format='%ad %ae %s' 2020-03-20 amaiorano@google.com Subzero: fix CoroutineBegin generation Created with: gclient setdep -r third_party/SwiftShader@22d73d15e778 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: angleproject:4482 Tbr: courtneygo@google.com Change-Id: I0336b02843d138a16749a5ad76dd44e666b66e83 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2114840 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov cb7e7387 2020-03-20T22:15:39 Remove 32-bit Subzero GLES31 SwANGLE suppressions Remaining Windows crashes fixed by https://swiftshader-review.googlesource.com/c/SwiftShader/+/42608 Bug: angleproject:4482 Change-Id: If1d6b6c4bd172c36108d31e01f561e001f49683f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2113716 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov 6b462120 2020-03-20T19:23:17 Skip flaky SwANGLE end2end tests. AttributeLayoutNonIndexed.Test AttributeLayoutBufferIndexed.Test EGLSurfaceTest.ResizeWindowWithDraw Bug: angleproject:4453, angleproject:4502 Change-Id: I6dbd333e428d61d84bb17bf0c4112fa66cff9846 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2113711 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Geoff Lang c0b267cc 2020-03-20T17:28:50 Skip ExternalWrapTest on Ozone. Ozone only supports external target for images created with EGL_EXT_image_dma_buf_import. BUG=angleproject:4443 BUG=chromium:1063462 Change-Id: Ia62fdd92198bdcc2d9840765305b4cc613fd3f7c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2113450 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Mohan Maiya ca2b6e1f 2020-03-19T16:30:21 Vulkan: Implement EXT_shader_non_constant_global_initializers Enables the translator to handle non-constant global initializers in all essl versions iff the shader enables the extension to do so. Bug: angleproject:4468 Test: angle_end2end_tests --gtest_filter=ShaderNonConstGlobalInitializerTest.* Change-Id: I8f138c12fc83d2f38ff8f45ca9133222b01e4087 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2102959 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Geoff Lang 13ea5b7f 2020-03-19T12:43:12 Implement gl[Get]MemoryObjectParameterivEXT These functions are required to tell the driver that the memory object is dedicated memory. This is required for AMD drivers on Linux. Bug: chromium:1049218 Change-Id: I17d69cde5e6308791dc90784f4d6e348503a6ed6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2110051 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang dd4e09ef 2020-03-20T14:54:36 Update conditions for exposing ASTC extensions. Add commenents to explain the Vulkan ASTC situation. Expose GL_KHR_texture_compression_astc_sliced_3d when the HDR profile exists. Bug: angleproject:4447 Change-Id: I00a86cb3c44873a28397aab33a47fb363d4ecfe9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2112283 Reviewed-by: Alexis Hétu <sugoi@chromium.org> Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang 07467b4a 2020-03-20T10:40:56 Remove GL_CHROMIUM_path_rendering Bug: chromium:1063193 Bug: angleproject:4270 Change-Id: I35b24b7d8d892181955e49dd2495655bc57cb0df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2112275 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang 95a4ded5 2020-03-20T14:36:48 Android.bp: Ignore unknown warning flags. Clang and Chrome build with different versions of clang which support different warning flags. Ignore unknown warning flags when building in Android. Bug: b:142320172 Change-Id: I35eb424aa5a146fec7dabf9f3aa71bd6dd9d8f50 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2112282 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Alexis Hetu 91f44a9a 2020-03-20T12:08:24 ASTC: LDR support doesn't imply HDR support There are SwiftShader related failures related to enabling the textureCompressionASTCHDRKHR feature without properly checking if the VK_EXT_texture_compression_astc_hdr extension is available, so HDR support shouldn't be enabled only based on the LDR support being enabled. Bug: angleproject:4447 Change-Id: Icde34892c9e2efff4b71e8c4e960c2fcff786700 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2080594 Commit-Queue: Alexis Hétu <sugoi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Nico Weber cd6028de 2020-03-20T14:07:44 Suppress two -Wunreachable-code warnings on Fuchsia in Angle. Bug: chromium:346399 Change-Id: Ibf9cefdee52e487d9e73b9dff98a12267ac82af6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2112281 Commit-Queue: Nico Weber <thakis@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 4fb3c28f 2020-03-19T19:10:45 Vulkan: Fix Framebuffer cache depth/stencil issue. The DrawBuffers resetting logic didn't update the depth/stencil serial. Fix this and add a regression test that would crash in this situation. Note that the Manhattan benchmark could trigger this under some cases. Bug: angleproject:4322 Bug: angleproject:4490 Change-Id: Ie4b24efeb5991ecaa85bf8f964f77476bd6f167d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2111333 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill 1c88cf27 2020-03-18T18:00:01 Add optimized rendering feedback loop tracking. This can be used both for WebGL and the Vulkan back-end workaround for Manhattan. Uses the recently added tracking for Textures being bound as samplers. Then caches this information in the Framebuffer using the Subject/Observer pattern. Bug: angleproject:4490 Change-Id: I08bef0a1b95c4333da19c2dae1f02a993e5835e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2109335 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Cody Northrop a4337121 2020-03-19T15:31:00 Perf: Limit TracePerfTest to single compressed TRex Update the TRex trace to: * Incorporate recent fixes for compressed textures * Incorporate support for compressing the trace * Simplify the tag on the trace (drop the end frame) Update TracePerfTest to: * Temporarily support only a single trace (TRex200). Test: angle_perftests --gtest_filter="*Trace*" Bug: angleproject:4484 Bug: angleproject:4488 Bug: angleproject:4496 Change-Id: Ice0c4ee9de3ad9ae4596305a93c51c6eac842123 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2112629 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Mohan Maiya 62b72552 2020-03-20T07:51:26 Add support for EXT_EGL_image_external_wrap_modes Allows for more wrap modes to TEXTURE_EXTERNAL_OES textures Test: angle_end2end_tests --gtest_filter=ExternalWrapTest.* Bug: angleproject:4443 Change-Id: I37bde091b166d7471c13c14fd6b0174136b52ecf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2103433 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 32c1bf54 2020-03-19T14:12:39 Remove util.gni. This file was no longer referenced and is dead code. Bug: None Change-Id: Id4469b9575a14e31c6f715c2d290f2f8945cd25b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2110331 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 26f8f1a9 2020-03-20T14:54:11 Revert "Refactor BitCount" This reverts commit baecb7d55c692a93a29a46939029b8262174ca62. Reason for revert: Broke Skia Win/ARM builder. See issue for details. Original change's description: > Refactor BitCount > > POPCNT intrinsics cannot be used without hardware support, so a CPUID > check and polyfills are required for some CPUs when using MSVC to > avoid runtime failure. > > Other changes include: > - Clang: use builtins on all platforms to provide exact intent to the > compiler; > - MSVC on ARM: use dedicated intrinsics; > - x86/x64 fallback is now branchless and works in constant time. > > Bug: angleproject:4462 > Change-Id: I00fcabda1c842677d8cb4bfd280d932d0d10c0a5 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2102811 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Geoff Lang <geofflang@chromium.org> TBR=geofflang@chromium.org,jmadill@chromium.org,lexa.knyazev@gmail.com Change-Id: Ia1756abdf7da2aa9574149eb388915f97758bba0 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:4462 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2112276 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Xiaoxuan Liu 2709f40f 2020-03-17T14:22:42 Skip updating viewport and scissor info if the same If glViewport() or glScissor() is called with same info, skip updating viewport or scissor info and related dirty bits. Bug: angleproject:4487 Change-Id: I9a0f3eb0df789beb99447ebc98383f502fbc763d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2105528 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll 12a1c373 2020-03-20T07:01:14 Roll third_party/spirv-tools/src 18d3896a15fc..60104cd97446 (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/18d3896a15fc..60104cd97446 Created with: gclient setdep -r third_party/spirv-tools/src@60104cd97446 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 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: I3dcd66069fea3caf8aca5e10bc0dad5eb9d661dc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2111884 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 92941f2c 2020-03-20T07:01:03 Roll third_party/SwiftShader bc98fbeec99b..1c9f24263e6c (2 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/bc98fbeec99b..1c9f24263e6c git log bc98fbeec99b..1c9f24263e6c --date=short --first-parent --format='%ad %ae %s' 2020-03-19 sugoi@google.com Fix float to r11g11b10 conversion 2020-03-19 amaiorano@google.com marl: manually apply partial patch to fix x86 crashes Created with: gclient setdep -r third_party/SwiftShader@1c9f24263e6c 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: angleproject:4482 Tbr: courtneygo@google.com Change-Id: I6c49a595ffe084fbf6d80f57638011c96384384e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2111883 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov 0e069b42 2020-03-19T21:40:51 Skip SwANGLE GLES31 tests which crash with 32-bit Subzero only on Windows Linux 32-bit crashes were fixed. Bug: angleproject:4482 Change-Id: I3efd7c760dfec1f8b909eee2ed84f5f9ebc33c3a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2111970 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov ca45852d 2020-03-19T22:04:47 Skip flaky TransformFeedbackTest.MultiContext on Win Intel Vulkan Bug: angleproject:4497 Change-Id: I92e7ad9f0c34fe0b5f67318271ececc218c20757 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2111781 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill b1eb44bf 2020-03-18T15:33:13 Track if a Texture is bound as a sampler. This will more easily allow us to detect rendering feedback loops. We'll need to support feedback loops to enable Manhattan. Bug: angleproject:4490 Change-Id: I442deebd89dcf0139411688eaa204c5e5b2c2799 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2109334 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Alexey Knyazev baecb7d5 2020-03-14T21:40:58 Refactor BitCount POPCNT intrinsics cannot be used without hardware support, so a CPUID check and polyfills are required for some CPUs when using MSVC to avoid runtime failure. Other changes include: - Clang: use builtins on all platforms to provide exact intent to the compiler; - MSVC on ARM: use dedicated intrinsics; - x86/x64 fallback is now branchless and works in constant time. Bug: angleproject:4462 Change-Id: I00fcabda1c842677d8cb4bfd280d932d0d10c0a5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2102811 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Mohan Maiya 7daf31d8 2020-03-18T09:19:52 Vulkan: Use device local memory for conversion buffers that can be converted with the GPU When converting a vertex buffer by using GPU, the conversion buffer doesn't need to be host mappable. Hence the conversion buffer can be allocated on device local memory for faster GPU access times. Bug: angleproject:3534 Change-Id: I2efabec20186992479920bddd3abd36f9c13babc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2108706 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 9d812d35 2020-03-18T15:31:14 Vulkan: Remove public FramebufferVk::getFramebuffer. Goal: enable rendering feedback loop detection for Manhattan. Making getFramebuffer private prevents direct access to the Framebuffer internals. Hiding access lets the FramebufferVk class switch up its implementation to support different VkFramebuffers for feedback loop cases. Also this is a general code cleanup. Bug: angleproject:4490 Change-Id: Ib4f5e34d476ccd8fc43a1adb031933ab347ca7b7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2109333 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll bff3b200 2020-03-19T07:01:16 Roll third_party/spirv-tools/src 25ede1ced679..18d3896a15fc (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/25ede1ced679..18d3896a15fc Also rolling transitive DEPS: third_party/spirv-headers/src a17e17e36da4..f8bf11a0253a Created with: gclient setdep -r third_party/spirv-tools/src@18d3896a15fc 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 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: Idc630e487903f425e849f1bed5997bb88875a328 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2109619 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jian Li 8aa20069 2020-03-18T17:55:06 Skip some tests on Mali because of a known issue Type decorations may be ignored when using multiple OpAccessChains. Bug: angleproject:4492 Change-Id: I2e51af600394a69cb5f7e02228ca7e4fd1c826e0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2105529 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll a38e20e4 2020-03-19T07:01:04 Roll third_party/SwiftShader 440fc9959f06..bc98fbeec99b (3 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/440fc9959f06..bc98fbeec99b git log 440fc9959f06..bc98fbeec99b --date=short --first-parent --format='%ad %ae %s' 2020-03-18 amaiorano@google.com Subzero: fix external function calls on x86-32 2020-03-18 amaiorano@google.com Subzero: fix partially initialized ManagedStatic assert 2020-03-17 digit@google.com [vulkan]: Support multiple external semaphore implementations. Created with: gclient setdep -r third_party/SwiftShader@bc98fbeec99b 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: angleproject:4482 Tbr: courtneygo@google.com Change-Id: I09384435c826f4dd4eb3003006da8a8315e7c959 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2109617 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill dadeffa3 2020-03-18T21:56:05 Capture/Replay: Fix stride in compressed texture caching. We were saving "width" bytes instead of "width * pixelSize". This was causing incorrect rendering in T-Rex and Manhattan. Bug: angleproject:4488 Change-Id: Ib5d38aaf813fb26905aedc155cc13b9d1597ec4c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2109336 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill f955fb45 2020-03-16T16:36:55 Roll chromium_revision 86e00b5dd2..fa9d5805c4 (743688:750702) Change log: https://chromium.googlesource.com/chromium/src/+log/86e00b5dd2..fa9d5805c4 Full diff: https://chromium.googlesource.com/chromium/src/+/86e00b5dd2..fa9d5805c4 Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/5d6bdfc4f1..a1cbf6469a * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/feb2d0c562..4164a30562 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/74854b3f7b..3e21eec53c * third_party/googletest: https://chromium.googlesource.com/chromium/src/third_party/googletest/+log/703ca235f0..c96dc32110 * third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/c2eb8a7f7a..156be8c52f * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/eeaa53b76f..d60a6a8084 DEPS diff: https://chromium.googlesource.com/chromium/src/+/86e00b5dd2..fa9d5805c4/DEPS Clang version changed c29003813ab9bd6ea7b6de40ea8f1fe21979f13f:9284abd0040afecfd619dbcf1b244a8b533291c9 Details: https://chromium.googlesource.com/chromium/src/+/86e00b5dd2..fa9d5805c4/tools/clang/scripts/update.py TBR=jmadill@chromium.org, Bug: angleproject:4484 Change-Id: I4e7bcd3f184ad29a7d9cffc125d58387445052af Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2106453 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll 9817f9ad 2020-03-18T13:45:38 Roll third_party/vulkan-validation-layers/src 6cd8cbdaab99..caeb15a056a0 (15 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/6cd8cbdaab99..caeb15a056a0 git log 6cd8cbdaab99..caeb15a056a0 --date=short --first-parent --format='%ad %ae %s' 2020-03-17 s.fricke@samsung.com tests: Add support for VUID 01762 2020-03-17 s.fricke@samsung.com layers: Add support for VUID 01762 2020-03-17 s.fricke@samsung.com layers: Add support for Map Memory VUIDs 2020-03-17 s.fricke@samsung.com layers: Removed redundant looping in graphics pipeline 2020-03-17 s.fricke@samsung.com tests: Add support for VUID 02801 2020-03-17 s.fricke@samsung.com layers: Add support for VUID 02801 2020-03-17 s.fricke@samsung.com tests: Add support for VUID 01510 2020-03-17 s.fricke@samsung.com layers: Add support for VUID 01510 2020-03-17 s.fricke@samsung.com tests: Add support for VUID 01442 2020-03-17 s.fricke@samsung.com layers: Add support for VUID 01442 2020-03-17 s.fricke@samsung.com tests: Add support for VUID 01188 2020-03-17 s.fricke@samsung.com layers: Add support for VUID 01188 2020-03-17 s.fricke@samsung.com tests: Add support for VUID 00968 2020-03-17 s.fricke@samsung.com layers: Add support for VUID 00968 2020-03-17 jmadill@chromium.org Fix Chromium warning about copying iterators. Created with: gclient setdep -r third_party/vulkan-validation-layers/src@caeb15a056a0 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,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: courtneygo@google.com,jmadill@google.com Change-Id: Ib1b355f9b47418f1f360d7a7bbd277a2b548893a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2108103 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Courtney Goeltzenleuchter 4422d298 2020-03-18T09:54:54 Vulkan: Must call vkFlush while memory is mapped Update to Vulkan validation layers pointed out that vkFlushMappedMemoryRanges needs to be called when the memory is mapped. Bug: b:151820847 Change-Id: I3860306080bca435c063046f9ae20943a8601d17 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2108705 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Tobin Ehlis 4119f033 2020-03-17T13:34:09 Vulkan:Set one-time bit on all command buffers All Vulkan command buffers are only submitted once so we can set the VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT which may help performance. Bug: angleproject:4304 Change-Id: Ibd116dcac4e78a2c058eb3da54489057d6fa8f44 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2107800 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Tobin Ehlis <tobine@google.com>
Courtney Goeltzenleuchter 4df67871 2020-03-17T16:13:23 Be sure to clear all program state at unlink At Program::unlink we clear out the program's state but forgot mBufferVariables. That was causing us to hit an assert when trying to load a shader from cache. Only see the issue on Android as that's the only platform where shader caching is supported. Test: KHR-GLES31.core.explicit_uniform_location.uniform-loc Bug: angleproject:4132 Change-Id: Iae9c26a3e3b2d11983cc7d90bcd54a10c0fa9934 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2107235 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Jamie Madill 23d63fc3 2020-03-17T20:34:50 Capture/Replay: Fix MEC Query capture. In Manhattan the test generates a bunch of queries that it doesn't start until later frames. In ANGLE these queries will be stored as nullptr entries in the QueryMap. By default the QueryMap Iterator skips over nullptr entries. This manifested later as GL errors during replay. Fix this by adding a new Iterator type to ResourceMap that does not skip over nullptr values. Bug: angleproject:4489 Change-Id: If56b908fb233de0df0445f9ea19fc322f2c42976 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2107762 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Jamie Madill e54f7ed7 2020-03-17T18:20:44 Capture/Replay: Fix compressed texture subImage caching. The prior code was caching the last subImage data. In fact we should be caching and updating a pixel rectangle. Multiple subImage calls will update the same rectangle until the final capture call sets up the replay with the complete initial data. This was causing an issue with Manhattan and the initial data for 3D compressed textures. Manhattan uploads these one layer at a time. So the prior code was trying to pass a single layer's data to the subImage call for the entire level. Bug: angleproject:4488 Change-Id: I76765dcea884f9d8ea07908c44e97578ddb0ff0d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2107761 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Jamie Madill 7e453a25 2020-03-15T22:11:03 Capture/Replay: Use zlib to compress data files. Gives about a 2-3x reduced data file size. Should help reduce the time we spent transferring trace files on Android. This feature is implemented as a parameter to the capture/replay tool. This keeps backwards compatiblity if we ever need to integrate a cpp replay into an environment that doesn't have access to zlib for decompression. We'll need to update the traces to take advantage of the compression. Bug: angleproject:4484 Change-Id: Id7994efe3c0d529b85fa7e7f1b00444e630dd2cd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2104555 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Mohan Maiya 78a85f2c 2020-03-16T10:28:59 Vulkan: Request device local memory for glBuffer with GL_STATIC* usage glBuffer objects with GL_STATIC_* usage patterns will now request the storage to be allocated in device local memory. For glBuffer objects with GL_DYNAMIC_* usage patterns we request a host cached memory. Bug: angleproject:4480 Change-Id: I7ca968f5ddfb59e4df3ecd07ae65df2bbf734190 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2102958 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Amy Liu f98084ed 2020-03-12T10:06:26 Fix ShaderStorageBufferReadWriteOffset end2end test Test: ShaderStorageBufferTest31.ShaderStorageBufferReadWriteOffset. Align kBufferOffset to bufferAlignOffset correctly. Bug: angleproject:4471 Change-Id: I71084839a845138b32d58d8bd2cf6fed2633a9be Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2100047 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll 273f9c7c 2020-03-17T07:01:41 Roll third_party/SwiftShader 3a50a43df988..440fc9959f06 (1 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/3a50a43df988..440fc9959f06 git log 3a50a43df988..440fc9959f06 --date=short --first-parent --format='%ad %ae %s' 2020-03-16 swiftshader.regress@gmail.com Regres: Update test lists @ 3a50a43d Created with: gclient setdep -r third_party/SwiftShader@440fc9959f06 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: I95262d4bfe2eafab7865082de2d7d0fd6a60a69c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2107107 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll af0891b5 2020-03-17T07:01:47 Roll third_party/glslang/src 9b620aa0c12d..4b2483ee88ab (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/9b620aa0c12d..4b2483ee88ab Created with: gclient setdep -r third_party/glslang/src@4b2483ee88ab 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 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: Ic397f97c031c67c88ddbf2be63ae1f4dbea05401 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2107108 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll f748ee6c 2020-03-17T07:01:34 Roll third_party/vulkan-validation-layers/src be663d752e45..6cd8cbdaab99 (7 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/be663d752e45..6cd8cbdaab99 git log be663d752e45..6cd8cbdaab99 --date=short --first-parent --format='%ad %ae %s' 2020-03-16 jbolz@nvidia.com scripts: Add aliased types to handle_types 2020-03-16 jbolz@nvidia.com layers: Fix RayTracing VUIDs to use buffer->createInfo.size 2020-03-16 jbolz@nvidia.com tests: Disable a test case in VkLayerTest.ValidateGeometryNV 2020-03-16 s.fricke@samsung.com tests: Extra test to check multi-planar copies 2020-03-16 s.fricke@samsung.com layers: Add support for 01548 2020-03-16 mark@lunarg.com docs: Update layer config and overview doc 2020-03-16 jakub@okonski.org tracker: Fix work retiring for queue submissions Created with: gclient setdep -r third_party/vulkan-validation-layers/src@6cd8cbdaab99 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: Id80bddb98cd6236ed7d7d29e96d03c307726bda7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2107106 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 8bc374dd 2020-03-17T07:01:14 Roll third_party/vulkan-loader/src f1d9f12a19de..64c36933d4f2 (2 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/f1d9f12a19de..64c36933d4f2 git log f1d9f12a19de..64c36933d4f2 --date=short --first-parent --format='%ad %ae %s' 2020-03-16 joshua@froggi.es loader: Handle no surface for surface caps 2 funcs 2020-03-16 joshua@froggi.es loader: Migrate get surface caps 2 funcs to wsi Created with: gclient setdep -r third_party/vulkan-loader/src@64c36933d4f2 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 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: I9a716acb93ba63d7a7b3c2898dd7896b53a4dc14 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2107105 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill a8acd779 2020-03-16T22:28:50 Roll third_party/zlib/ c2eb8a7f7..156be8c52 (1 commit) https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/c2eb8a7f7a0f..156be8c52f80 $ git log c2eb8a7f7..156be8c52 --date=short --no-merges --format='%ad %ae %s' 2020-03-16 jmadill Fix zlib build on UWP. Created with: roll-dep third_party/zlib Bug: angleproject:4484 Change-Id: I182ff15c092ed1b327f9622429aa97bdebe45c84 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2106795 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill d24752e6 2020-03-15T21:34:10 Capture/Replay: Write to single binary data file. Previously the tool would save to a separate file for every frame and one additional file for the setup function. Frames without binary data would not get an "angledata" binary file. Using a single file has a few advantages: - makes it simpler to track the data dependencies in GN - should be easier to compress and decompress for speed up transfers - no need to wonder if we have frames with missing data files - less overhead reading from the HDD since the whole trace is buffered We might need to worry about extemely huge memory use cases. For now buffering the whole file into memory on startup is simple and fast. Also makes the binary data loader function more robust. Bug: angleproject:4484 Change-Id: Ia74fb0bc65200adf7a21c3143f98aa4da86457b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2104554 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill 7c334c56 2020-03-15T17:37:15 Re-enable optimization for angle_perftests. This CL restricts the workaround to the trace perf tests. These trace tests are too big to optimize. Also includes a fix for a 32-bit Windows warnings. We'll need to update the build file to remove a suppression once the traces are updated. Bug: angleproject:3630 Change-Id: Id13a0050fc2a645aa572b8c9079908023b232f28 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2103084 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill 42c453fe 2020-03-15T18:23:15 Move perf test common files to a source set. Similarly to a prior patch this organizes the common perf test sources into a single target. This will allow us to more easily support setting compiler flags on particular perf test sources. This also fixes some build errors that popped up when new warnings were enabled. Bug: angleproject:3630 Change-Id: I866885199f93a5055e8d160e39f72d1f8209bc75 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2103086 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill 5df2c9ea 2020-03-15T17:28:43 Refactor ANGLE common test utils. This reduces code duplication by including a common set of sources in a single place. New test sets will be a bit easier to add. It also encapsulates the dependencies a bit better when we pull the test utils out of the test targets. Unblocks a follow-up CL that moves the trace perf test sources into their own file so we can re-enable optimizations in the main perf test target. New warnings popped up in a few of the files because of the new source set enabling more warnings. This CL also fixes all of those. Bug: angleproject:3630 Change-Id: Ic30cb30fb4288c4dbbbd29f9bdf04be51e8a6b30 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2103083 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 41b4ab19 2020-03-16T19:18:56 Roll third_party/spirv-tools/src dd3d91691f1e..25ede1ced679 (5 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/dd3d91691f1e..25ede1ced679 Also rolling transitive DEPS: third_party/spirv-headers/src dc77030acc9c..a17e17e36da4 Created with: gclient setdep -r third_party/spirv-tools/src@25ede1ced679 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 courtneygo@google.com,ynovikov@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,ynovikov@google.com Change-Id: Ief155818d9aa7a143d36cb05bce5b761b6983d13 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2106235 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 113b9d42 2020-03-16T16:46:18 Fix documentation typo. "Montitor" Bug: angleproject:1944 Change-Id: I4321265e22d7e878ff1f3223a7d8a00959c1db39 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2106454 Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 457588ef 2020-03-16T14:11:33 Add more documentation on testing infrastructure. Adds more info on the amount of testing ANGLE runs and our various configs. Adds a few other notes and cross-links. Bug: angleproject:1944 Change-Id: I76e46783bd6a3f84d3e170bd30ea2e6d57911143 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2105715 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Xiaoxuan Liu f1eb10ef 2020-03-10T16:40:53 GLES: Skip tests if vertex SSBO were not supported Skip tests if GPU doesn't support vertex shader storage buffer object. Bug: angleproject:4466 Change-Id: Icc7b6e686d7b4d5ecd2e05f6f09551f839f5302d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2096740 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill a8631f68 2020-03-15T20:38:20 Fix running trace tests in non-standard directories. The change to make the trace tests load the data files using a relative path only worked when running the tests from the "standard" out path. By setting the CWD to the executable dir in test setup we are able to run the tests from any local dir when testing. Also cleans up some repeated code in the test init switch statement. Bug: angleproject:3630 Change-Id: I8e9e5e6e1e9cd31c5b3c7b2f52420d0ba75cf76b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2104548 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll d1d96d73 2020-03-16T07:01:41 Roll third_party/SwiftShader 18daa81e3d3d..3a50a43df988 (14 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/18daa81e3d3d..3a50a43df988 git log 18daa81e3d3d..3a50a43df988 --date=short --first-parent --format='%ad %ae %s' 2020-03-14 bclayton@google.com SpirvShaderDebugger: Implement scope nesting 2020-03-13 sugoi@google.com Compile Vulkan library with Subzero in Chromium 2020-03-13 bclayton@google.com SpirvShader: Silence warnings of unexpected opcodes 2020-03-13 amaiorano@google.com Subzero: hide dependency on Marl 2020-03-13 amaiorano@google.com BUILD.gn: add missing dependency onto marl for SubzeroReactor 2020-03-13 capn@google.com Consistently use TRUE/FALSE in CMakeLists.txt 2020-03-13 capn@google.com Exclude all static libraries from "all" build target 2020-03-13 amaiorano@google.com Subzero: replace Win32 fibers with Marl for couroutines 2020-03-13 bclayton@google.com SpirvShaderDebugger: Add flag for printing opcodes as they're executed 2020-03-13 bclayton@google.com SpirvShaderDebugger: Make Function extend Scope 2020-03-13 bclayton@google.com SpirvShaderDebugger: Add string helper for debug kinds 2020-03-13 bclayton@google.com SpirvShader: Implement OpenCLDebugInfo100DebugInfoNone 2020-03-13 bclayton@google.com SpirvShaderDebugger: Stub UNIMPLEMENTED() opcodes 2020-03-13 bclayton@google.com SpirvShader: Implement OpenCLDebugInfo100DebugInlinedAt Created with: gclient setdep -r third_party/SwiftShader@3a50a43df988 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: Ia1c5ef7d6f8c9cd9991c71f0aa8aeb2fc0f6ff3c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2104696 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov cb9a86a9 2020-03-15T14:24:32 Skip SwANGLE GLES31 tests which crash with 32-bit Subzero. Started with https://swiftshader-review.googlesource.com/c/SwiftShader/+/42108 Bug: angleproject:4482 Change-Id: I48effe26aa7ce1b574f9df8ad9c3f560cb599cf3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2104406 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill a4a42e6d 2020-03-15T18:25:21 Format perf_test.cc. This was missed when our git cl format protection was temporarily broken. A subsequent change caused the file to get fully formatted so this CL pulls that diff into a split change. Bug: angleproject:3630 Change-Id: I14ed53708783b38039e8fa64cb38837e25911893 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2103085 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 869e901a 2020-03-14T20:27:09 Temporarily disable optimizations in angle_perftests. The optimization for the large trace perf tests was so costly that in some configs it would fail to build at all. This could cause build failures in the ANGLE CQ. Disable optimization to work around this until we can isolate the compiler flags to just the trace perf tests. Note: this only applies to the test harness. ANGLE itself is still optimized in release builds by default. Trace trimming would also help alleviate this problem. We could also consider removing a few traces temporarily. Bug: angleproject:3630 Change-Id: I2bd8fb76f330692aa715249ca8656965b5a29d8c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2103674 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>