Log

Author Commit Date CI Message
Scott Marcy 4ebb28d7 2024-05-30T11:36:58 Fix stack overflow crash by traversing a too-deep AST This simply moves the check for a too-deep AST before the first attempts to traverse the AST (i.e., `validateAST()`). Bug: angleproject:343505104 Change-Id: Iafb658a30f74a666beab8c69745ca53d17d70dd3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5585186 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com> Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com> Auto-Submit: Scott M <mscott@apple.com>
Josip Sokcevic f4bacd79 2024-05-31T01:58:50 [DEPS] Rely on buildtools recursedep to fetch clang-format buildtools has first party support to fetch clang-format so no longer needed to use custom hooks. Bug: chromium:336843583 Change-Id: I6464baad7ab7269768c8065b5ce61167cb864b1d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5585281 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Josip Sokcevic <sokcevic@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev 67036978 2024-05-30T00:00:00 Update Intel PCI IDs Synced with Mesa headers: * Changed one EHL PCI ID * Changed four ADL PCI IDs * Added six more RPL PCI IDs Fixed: angleproject:343037865 Change-Id: I5218c94265e33bb640e2c3109ce62e93255e8d28 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5580878 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 7b2c6212 2024-05-30T17:18:52 Manual roll vulkan-deps from 1c35ddaeefd9 to f7e762742da9 (1 revision) Manual roll requested by solti@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/1c35ddaeefd9..f7e762742da9 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/3b35db58df3ab871753981b4b5b6a2101716a869..ff56cf67d3494eec1243cc4225d1667e9b3f90cd If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com Change-Id: I8901abbc477fbd0a0ea006c551ab183f02d12312 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5584578 Commit-Queue: Solti Ho <solti@google.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Le Hoang Quyen 4d4c99b1 2024-05-31T02:07:11 Metal: skip copying via parentTexture on iOS simulator. iOS simulator has bug in [MTLTexture parentRelativeSlice] so don't use it to upload data to the texture. Bug: angleproject:343734719 Change-Id: I78cf0066c1120c04f9b62c30e280ad866c2096d7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5584042 Reviewed-by: Kenneth Russell <kbr@chromium.org> Auto-Submit: Quyen Le <lehoangquyen@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org> Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Roman Lavrov 818915a9 2024-05-27T10:53:35 PPO: Propagate dirty uniforms via mPPOProgramExecutables This eliminates the need for ProgramUniformUpdated notification Update mDefaultUniformBlocksDirty rather than just add a check to hasDirtyUniforms, as mDefaultUniformBlocksDirty can then be used elsewhere (for example, calcUniformUpdateRequiredSpace) Also adds ProgramExecutable.mIsPPO flag for an easy check for PPO without inspecting mPPOProgramExecutables Bug: angleproject:8666 Bug: b/335295728 Change-Id: I7725d02460104997df5c89a54d0e5ef3c3079946 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5569184 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Erik Staab 22790eaf 2024-05-30T04:26:16 Add gardener_rotations property This is a temporary measure to allow SoM to update their code before we can remove the sheriff_rotations property. Bug: chromium:343503161 Change-Id: I461db50f09e6946ceb6244199208935d38a99598 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5580852 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi c33c6cd3 2024-05-27T00:06:18 Vulkan: Use OpSelect with all types with SPIR-V 1.4 SPIR-V 1.4 relaxes the types that can be used as arguments of OpSelect. Previously, the types were limited to scalars and vectors, but since SPIR-V 1.4, it's unrestricted. Writing tests for this change, another bug was discovered where support for structs and arrays with the ternary operator was disabled due to ESSL 1.0, even though that support is mandatory in ESSL 3.2. Bug: angleproject:342316794 Bug: angleproject:343218491 Bug: angleproject:3830 Change-Id: I6cff2f8178634369f773c4fb16a1ddde96928c8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5570154 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
angle-autoroll 9876d2ce 2024-05-30T07:00:48 Roll Chromium from 40e780119c08 to 514da917ca32 (624 revisions) https://chromium.googlesource.com/chromium/src.git/+log/40e780119c08..514da917ca32 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/32eb067e80..007a74bf79 * buildtools/linux64: git_revision:df98b86690c83b81aedc909ded18857296406159..git_revision:e11af6727dd38fdd0e8cbbab2e207c369522ac7a * buildtools/mac: git_revision:df98b86690c83b81aedc909ded18857296406159..git_revision:e11af6727dd38fdd0e8cbbab2e207c369522ac7a * buildtools/win: git_revision:df98b86690c83b81aedc909ded18857296406159..git_revision:e11af6727dd38fdd0e8cbbab2e207c369522ac7a * testing: https://chromium.googlesource.com/chromium/src/testing/+log/23386c603b..22df32c685 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/b027bd3c0b..30d4d21846 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/24a969aef2..6ef56f2347 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/67896a0860..da5e2f948a * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/3754abfc6f..cececb2a6b * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/e09506d068..01344b3187 * tools/skia_goldctl/linux: _Ncs9Mfd7zCjjNFYk88XronnAaJuEuYMI1m8uFEgUgUC..DwebaDF4oPSZMck-atrwghRPzS584hU4SE0VMntP4sEC * tools/skia_goldctl/mac_amd64: uhEwv_RChtvOXUbLV4vbOH--bfXc80Wt3oqpvX7l05cC..K1iF08dyALEazf18lHRmK7k-tvRErDRGAVS3JHxHcbsC * tools/skia_goldctl/mac_arm64: l3G1R_7kNvuMM6opTzPqlBgPYf04UfVcQrfHtFfwPfMC..ms8v9LYso2x5_PGXcrV6Jf6ZW_9JYX0yFyJnqB0VrkMC * tools/skia_goldctl/win: 7_CWayNfX49-C69e9--i60DGVTOr01SqQgSsRc4IdZUC..-t8nUSs-QQ1RnwaD9oWH-_3W-avC2ugb8y29Og6Sq1YC No update to Clang. Bug: angleproject:8434 Tbr: solti@google.com Change-Id: I7e58313a7c5328466008fb876f25085b32907d6a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5583908 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Charlie Lao 34b832a3 2024-05-24T13:38:58 Vulkan: Add RefCountedEvent recycler Previously the recycler was disabled due to race between resetEvent and setEvent. This CL splits mFreeStack into two list: mEventsToReset and mEventsToReuse. Events are first added to mEventsToReset list. Then at OutsideRenderPassCommandBufferHelper::flushToPrimary time, VkCmdResetEvents are added to reset all events in mEventsToReset list, and that reset operation is tracked by mResettingQueue. When reset command is completed, events moved into mEventsToReuse list. Since access to renderer's RefCountedEventRecycler requires lock, RefCountedEventCollector (a queue of events) is passed between ShareGroupVk and renderer's recycler to minimize the locked access. Bug: b/336844257 Change-Id: Iffac095729a81ba65a43df68cc9255d76e4be7c9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5576757 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Ho Cheung c82d910d 2024-05-29T09:35:12 Roll third_party/dawn/ d32858a30..9a3d29c78 (252 commits; 2 trivial rolls) https://dawn.googlesource.com/dawn.git/+log/d32858a3045a..9a3d29c786c6 $ git log d32858a30..9a3d29c78 --date=short --no-merges --format='%ad %ae %s' 2024-05-29 bclayton [tint][docs] Begin documentation for the fuzzers 2024-05-29 cwallez Remove unused "shared texture memory vk image descriptor" 2024-05-29 bsheedy [tools][cts] Add GetRawResults test coverage 2024-05-29 jiawei.shao Tint: Add `dual_source_blending` as a valid WGSL extension 2024-05-29 lehoangquyen Tint: Add input attachments support to spirv AST printer. 2024-05-28 lehoangquyen Tint: Add input attachments support to spirv IR printer. 2024-05-28 enga Check that VkInstance is not null after creation 2024-05-28 lehoangquyen Tint: Add inputAttachmentLoad to core.def, wgsl.def, IR 2024-05-28 jrprice [msl] Populate Output::workgroup_allocations 2024-05-28 lehoangquyen WaitAnySystemEvent: retry poll if errno=EAGAIN or EINTR. 2024-05-28 dawn-autoroll Roll ANGLE from a3057eed0f86 to 0c87d0edb767 (3 revisions) 2024-05-28 bclayton [tint][ast][msl] Remove the need for SingleEntryPoint to be run 2024-05-28 dneto Fix misc-include-cleaner warnings from clang-tidy 2024-05-28 bclayton [tint][ir] Validate compute entry point has workgroup_size 2024-05-28 bclayton [tint][ast][msl] Skip the MSL fuzzer if the program has multiple entry points 2024-05-28 dawn-autoroll Roll ANGLE from 1a8546ad512d to a3057eed0f86 (7 revisions) 2024-05-28 jiawei.shao Tint: Check if location is too large in TruncateInterstageVariables 2024-05-28 jrprice [ir] Remove abstract types from disassembler 2024-05-28 dawn-autoroll Roll Depot Tools from 8a11c2d152e9 to 97246c4f73e6 (1 revision) 2024-05-28 rharrison Update top-level OWNERS to reflect team changes 2024-05-27 rharrison [cmake] Add build rules for libprotobuf-mutator 2024-05-27 bclayton [tint][ir] Fix unused variable warnings 2024-05-27 bclayton [DEPS] Add libprotobuf-mutator as a new dependency 2024-05-27 bclayton [tint][proto] Pass correct flags to protoc for imports 2024-05-27 bclayton [tint][ir] Use Operand() instead of indexing operands_ directly 2024-05-27 jrprice [msl] Move printer/*_test.* to writer/ 2024-05-27 jrprice [tint] Do not use AInt for attribute arguments 2024-05-27 jrprice [msl] Support workgroup vars in ModuleScopeVars 2024-05-27 dawn-autoroll Roll vulkan-deps from feb3ce48e509 to 9486d04e3ac1 (9 revisions) 2024-05-27 jrprice Add chouinard@google.com to Tint OWNERS 2024-05-27 dawn-autoroll Manual roll vulkan-deps from 48e47a7bb90c to feb3ce48e509 (32 revisions) 2024-05-27 dawn-autoroll Roll ANGLE from 59adc1910597 to 1a8546ad512d (1 revision) 2024-05-27 beaufort.francois Set surfaceConfiguration alphaMode default value to auto 2024-05-27 dawn-autoroll Roll Depot Tools from 7d95eb2eb054 to 8a11c2d152e9 (2 revisions) 2024-05-27 zhaoming.jiang Tint: consider subgroup_size used in compute stage as uniform 2024-05-26 dawn-autoroll Roll ANGLE from 6cf3c96db2dc to 59adc1910597 (1 revision) 2024-05-25 dawn-autoroll Roll ANGLE from ad46d67dbcd5 to 6cf3c96db2dc (1 revision) 2024-05-25 bclayton [tint] Mark operator bool() as explicit 2024-05-25 dawn-autoroll Roll Depot Tools from 09c232e7c0d5 to 7d95eb2eb054 (1 revision) 2024-05-25 dawn-autoroll Roll DirectX Shader Compiler from cdc56031b562 to 128e6ce2be8f (1 revision) 2024-05-25 chrome-automated-expectation Remove stale WebGPU CTS expectations 2024-05-25 bsheedy Add cmake/msvc exclusion filters 2024-05-25 dawn-autoroll Roll ANGLE from 066cde8b1259 to ad46d67dbcd5 (9 revisions) 2024-05-24 bsheedy Suppress volteer WebGPU CTS failures 2024-05-24 bclayton [tint][ir] Add error handling to the binary decoder 2024-05-24 lehoangquyen Tint: parse @input_attachment_index 2024-05-24 dawn-autoroll Roll SwiftShader from 90519141a709 to ec5dbd2dfb46 (1 revision) 2024-05-24 bsheedy [tools][cts] Switch CTS roller to use BigQuery 2024-05-24 bsheedy Add Linux/Intel experimental expectation 2024-05-24 dawn-autoroll Manual roll vulkan-deps from e25f9bb7a149 to 48e47a7bb90c (10 revisions) (...) 2024-05-15 lokokung [wgpu-headers] Introduce 2nd userdata to popErrorScope callback. 2024-05-15 rharrison Add expectations for failing tests on Dawn -> Chromium rolls 2024-05-15 enga Use the max signaled value of pending fences in BeginAccess 2024-05-14 dawn-autoroll Roll DirectX Shader Compiler from f9389db7c34d to 8fe99be640a1 (5 revisions) 2024-05-14 jrprice [msl] const-qualify many things in printer 2024-05-14 bclayton [tint][ast] Fix DirectVariableAccess with uncalled function ptr params 2024-05-14 chrome-branch-day Activate dawn M126 2024-05-14 dawn-autoroll Roll Depot Tools from c5e2ceabe3f0 to 84798693112c (8 revisions) 2024-05-14 lehoangquyen Add MultisampleStateExpandResolveTextureDawn chained struct. 2024-05-14 dawn-autoroll Roll vulkan-deps from af34cd975650 to e25f9bb7a149 (5 revisions) 2024-05-14 cwallez Remove ASSERT that encoding only produces validation errors 2024-05-14 dawn-autoroll Roll ANGLE from decf0e9d4297 to df2e7bd7c99e (8 revisions) 2024-05-14 dsinclair Fixup doxygen issues 2024-05-14 dawn-autoroll Roll DirectX Shader Compiler from f6d175959760 to f9389db7c34d (1 revision) 2024-05-14 senorblanco OpenGL: fix spurious EGLSync on queue destruction. 2024-05-14 jiawei.shao Revert "Remove mock WGPU[Obj]Release that was deprecated in favor of AddRef" 2024-05-14 bclayton [tint][ast] Fix RemovePhonies transform with short-circuited fn call 2024-05-14 bclayton [tint][ir] Split BreakIf arguments into two lists 2024-05-14 bclayton [tint][resolver] Fix evaluation stage of function calls 2024-05-14 penghuang Revert "Remove deprecated `APIReference()`" 2024-05-14 dawn-autoroll Roll Depot Tools from e1385296c4ab to c5e2ceabe3f0 (1 revision) 2024-05-13 enga Break Instance->Backend->PhysicalDevice->Instance refcycle 2024-05-13 dawn-autoroll Roll vulkan-deps from a06b82c306ee to af34cd975650 (7 revisions) 2024-05-13 hocheung Reland "(3/N) Rename WGPUDeviceLostReason_Undefined to Unknown" 2024-05-13 bclayton [tint][ir] Validate NextIteration instructions 2024-05-13 bclayton [tint][ir] Validate continue statements 2024-05-13 cwallez Remove mock WGPU[Obj]Release that was deprecated in favor of AddRef 2024-05-13 cwallez Move metal::PhysicalDevice to its own file. 2024-05-13 blundell [YCbCr] Add YCbCr info to STMProperties 2024-05-13 bclayton [tools][run-cts] Improve error diagnostics when npx is not found 2024-05-13 dawn-autoroll Roll ANGLE from 4e887491e14a to decf0e9d4297 (1 revision) 2024-05-13 keishi [BRP] Un-rewrite raw_ptr used in MotionMark 2024-05-13 dawn-autoroll Roll DirectX Shader Compiler from 01007bcd7f95 to f6d175959760 (1 revision) 2024-05-13 dawn-autoroll Roll Depot Tools from a9b9284faf89 to e1385296c4ab (1 revision) 2024-05-13 jie.a.chen Remove ExternalImageDXGI 2024-05-13 dawn-autoroll Roll vulkan-deps from 862e523d9e3d to a06b82c306ee (1 revision) 2024-05-13 jiawei.shao Remove deprecated `APIReference()` 2024-05-12 dawn-autoroll Roll ANGLE from d1bb6ed8399d to 4e887491e14a (3 revisions) 2024-05-11 ynovikov Suppress Pixel 6 Android 14 failures already suppressed on Android T 2024-05-11 dawn-autoroll Roll vulkan-deps from 3317f9533df9 to 862e523d9e3d (1 revision) 2024-05-11 dawn-autoroll Roll Depot Tools from a76c50e296ea to a9b9284faf89 (1 revision) 2024-05-11 dawn-autoroll Roll ANGLE from 8d23fa3f92ed to d1bb6ed8399d (1 revision) 2024-05-11 dawn-autoroll Roll DirectX Shader Compiler from 8e9cefa1d507 to 01007bcd7f95 (1 revision) 2024-05-11 chrome-automated-expectation Remove stale WebGPU CTS expectations 2024-05-11 penghuang d3d11: SharedTextureMemoryD3D11Texture2D supports texture array 2024-05-11 dawn-autoroll Roll vulkan-deps from 4a16c5226357 to 3317f9533df9 (4 revisions) 2024-05-11 dawn-autoroll Roll Depot Tools from 6e32e926e9de to a76c50e296ea (3 revisions) 2024-05-10 enga Fix SharedResourceMemory begin/end access without using texture 2024-05-10 jimblackler Reapply "Generator for Kotlin structures." 2024-05-10 dawn-autoroll Roll ANGLE from 4cacc66e70c4 to 8d23fa3f92ed (2 revisions) Created with: roll-dep third_party/dawn Manually roll changes from Dawn to ANGLE. Bug:chromium:42241081 Change-Id: If9aa297a16c36a0a6adcd10a1b586adf36783591 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5579394 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll edae1e7a 2024-05-29T10:01:24 Roll vulkan-deps from 9486d04e3ac1 to 1c35ddaeefd9 (4 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/9486d04e3ac1..1c35ddaeefd9 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/d3d530c90dd6549bcfc7cfaedd3ff85fe8ff04a2..21effda93a239cc4d726b37738c27fdc3e20ec3e https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/8bc338928b5c92489d953e049018eab2359d437a..6bc92daa125da7aed037b46513845ebc67bc96e6 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/ee4ac8ea868cf33da30281e25380415c3434523f..3b35db58df3ab871753981b4b5b6a2101716a869 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com Change-Id: Ib5e9a10ca0eb325a6862de23d8852f88356441b7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5578678 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 995a8061 2024-05-29T07:42:55 Roll Chromium from a2a19fca2468 to 40e780119c08 (637 revisions) https://chromium.googlesource.com/chromium/src.git/+log/a2a19fca2468..40e780119c08 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/50a1aed2a3..32eb067e80 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/34b12a9839..23386c603b * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/97246c4f73..67896a0860 * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/b663b9c4c5..5f2c9767ce * third_party/libjpeg_turbo: https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git/+log/9b894306ec..ccfbe1c82a * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/8c5b971941..a16d528d25 * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/4abbe88863..ed9284c473 * tools/luci-go: git_revision:4967d21f2b92546ac3747086cdcbb046b6db52fb..git_revision:3c691526411b6ba25a7582ad8aff1f5a8848b7be * tools/luci-go: git_revision:4967d21f2b92546ac3747086cdcbb046b6db52fb..git_revision:3c691526411b6ba25a7582ad8aff1f5a8848b7be * tools/memory: https://chromium.googlesource.com/chromium/src/tools/memory/+log/2448d81f97..c5b623b3ba * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/7f5fcffb9f..e09506d068 * tools/skia_goldctl/linux: WMIZj5iCtXaIDiOhz7iiswLMOl8EWWP5gfRyHAEZUSAC.._Ncs9Mfd7zCjjNFYk88XronnAaJuEuYMI1m8uFEgUgUC * tools/skia_goldctl/mac_amd64: 88_YxpnUWyvy_qTnp6FH2cvFsJ3eKeNLLph6CbyXHmoC..uhEwv_RChtvOXUbLV4vbOH--bfXc80Wt3oqpvX7l05cC * tools/skia_goldctl/mac_arm64: TtqdFmghiNp8fsnpcuBhyC8e9PjVxKAXDBQhNoTReaUC..l3G1R_7kNvuMM6opTzPqlBgPYf04UfVcQrfHtFfwPfMC * tools/skia_goldctl/win: zHUBIGOiczuqjD1DhUqsPCLIcVp7c-7bnuOzAncAsy0C..7_CWayNfX49-C69e9--i60DGVTOr01SqQgSsRc4IdZUC No update to Clang. Bug: None Tbr: solti@google.com Change-Id: Iebe60548a8fecb0fc2deda32cd35cd4b56103d1c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5579889 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi c53b3405 2024-05-25T02:50:27 Vulkan: Use OpCopyLogical with SPIR-V 1.4 When shaders copy structs and arrays, this instruction saves a lot of churn in the SPIR-V. Bug: angleproject:342316794 Bug: angleproject:343218484 Change-Id: I698a8d8ee8c15113e40602a0f4953726bc9a84f7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5570152 Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao 018188c7 2024-05-28T14:44:14 Vulkan: Fix CachedPreferCoherent to actually require cached VK_MEMORY_PROPERTY_HOST_CACHED_BIT should be in requiredBits instead of preferredBits for CachedPreferCoherent buffer. This again caused pixel6 test failures. flush() call is added right after buffer allocation to fix the test failure. This likely is due to the spec says " If a range of non-coherent memory is written by the host and then invalidated without first being flushed, its contents are undefined.". Bug: b/339562049 Change-Id: Ie8529722bd03534598b03983ba447131573b1879 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5578276 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 5137eb99 2024-05-27T01:38:23 Translator: Fix internal inconsistency with output init When creating "zero" nodes, this transformation directly takes the TType's from the variables being initialized. This means that qualifiers such as invariant, as well as any associations with interface blocks are retained in these constructors, which is not valid. This can trip up the SPIR-V generator which does not expect constructors to be qualified as such (i.e. assumes the TypeSpec to be the default). Bug: angleproject:342866364 Bug: angleproject:342866374 Bug: angleproject:343011429 Change-Id: If5c38e18ce977bd0eb1a48e41c59f6199eb7d2e5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5570155 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov d1db33b9 2024-05-20T16:49:18 Vulkan: Cleanup EXT_sRGB_write_control support Bug: angleproject:5075 Change-Id: I91f40aaeaf5ff661ee2e227b5b1bb30a5b400e46 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5573396 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Shahbaz Youssefi 9620d4d3 2024-05-23T16:12:52 Vulkan: Emit SPIR-V 1.4 where available In preparation for optimizations possible for SPIR-V 1.4. This change makes ANGLE output SPIR-V 1.4 if supported, and SPIR-V 1.3 otherwise. It handles the following differences between the two versions: - OpEntryPoint in SPIR-V 1.4 includes all global variables, as opposed to SPIR-V 1.3 where only the Input and Output variables are listed - Storage buffers use a dedicated storage class in SPIR-V 1.4 Bug: angleproject:342316794 Change-Id: I157ed46449ff2d0f14d284b883b4ddc1b4b46fd1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5565224 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev dd2780ad 2024-05-23T00:00:00 Write point size for SimpleStateChange tests that use points Point rendering without specifying gl_PointSize is undefined. Fixed: angleproject:342671887 Change-Id: I7ad8fd1cfc5c4495647677665e4beb3464d2ce8a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5570938 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Solti 6e5eed1c 2024-05-28T20:14:47 Suppress failing newly added deqp test on S22 The cases are failing on S22, per http://b/343202259#comment2 Test: presubmit Bug: b/343202259 Bug: angleproject:341780527 Change-Id: I16fd8db65785c85df671ceddd19e480bd9672e2a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5576756 Commit-Queue: Solti Ho <solti@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Amirali Abdolrashidi 55c8c714 2024-05-23T17:26:24 Vulkan: Enable ABE emulation for Android * Enabled emulating advanced blend equations for all Android devices without VK_EXT_blend_operation_advanced. Bug: b/336860504 Change-Id: I97bf654dc4058b5a92d7de32b1000fb7aff86828 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5567092 Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov 3467f0f2 2024-05-20T16:24:53 Vulkan: Cleanup QCOM foveated rendering extensions support Change removed `ContextVK::updateFoveatedRendering()` method because of the following: - Modifying `mGraphicsPipelineDesc` without also updating `mGraphicsPipelineTransition` may case usage of incorrect PSO. - Despite of the above, there is no bug, because the update itself is redundant. In all cases, where `updateFoveatedRendering()` was called, there also will be `onDrawFramebufferRenderPassDescChange()` call, that will call `mGraphicsPipelineDesc->updateRenderPassDesc()`. - The `onDrawFramebufferRenderPassDescChange()` will also call `invalidateCurrentGraphicsPipeline()` therefore, there is no need for this call in the `updateFoveatedRendering()`. - In all cases, the `onRenderPassFinished()` is called before `updateFoveatedRendering()`, therefore, there is no need to set `DIRTY_BIT_RENDER_PASS` bit. - All of the above made `updateFoveatedRendering()` completely redundant (maybe except for the ASSERT). Change also removed `mRenderPassDesc` update from `FramebufferVk::updateFoveationState()`. Note: similar update may be also removed when handling `shouldUpdateSrgbWriteControlMode`. Also fixes possible `mFoveationState` and `mCurrentFramebufferDesc` desynchronization in case if `updateFragmentShadingRateAttachment()` fails. Bug: angleproject:8484 Change-Id: If453bb6691e47aac3c11d0a5a6df696e885b64cb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5573395 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Bruno BELANYI be78da6e 2024-05-22T15:33:46 FrameCapture: log end of trace capture This makes it easy to spot when the capture is done through logcat. Bug: angleproject:343190307 Change-Id: Idf174cbf256242e32cda3c781c8b1092123254bb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5557966 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Commit-Queue: Bruno BELANYI <ambroisie@google.com>
Jean-Francois Thibert ceaec322 2024-05-24T11:25:08 Vulkan: use depth stencil bits to check AHB are renderable This resolves an incomplete attachment failure for AHB imported depth buffers. Bug: angleproject:342603523 Change-Id: I16ca0d1bfdab8d542ecf26e5a4e8510171960610 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5570617 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov 9b7d8d6a 2024-05-20T20:39:50 Vulkan: Fix AtomicRefCounted threading issue The `AtomicRefCounted::getAndReleaseRef()` is used to decrement the reference counter and to destroy the object if there are no more uses. Decrement operation must use acquire-release memory ordering, in order to guarantee that all accesses from other threads happened before last thread checks that counter is "1" and destroys the object. Added comments to `releaseRef()` and `isReferenced()`, that these methods do not provide any synchronization, and can not be used to achieve same affect as `getAndReleaseRef()`. Relaxed ordering is kept for performance reasons. Bug: angleproject:8601 Change-Id: I8e5654416383e9490c23bc02fda9664216a81076 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5573394 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Bruno BELANYI d3d96a37 2024-05-24T14:43:12 Add 'angle_always_log_info' option This allows outputting `INFO`-level logs and up, without having to trudge through the mountain of output that gets enabled by `angle_enable_trace`. Bug: angleproject:343190307 Change-Id: I88d4f0b48951f1c7cbdda4fce8ce309a25f43e3c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5569092 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Roman Lavrov 0c87d0ed 2024-05-27T14:35:12 Tests: Increase win-intel shards due to --max-processes=1 Currently bottlenecking win-test CI latency Bug: angleproject:7874 Change-Id: I7aceade04175ecc9b89a59363c26060167ed846c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5570283 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll cb6be2f3 2024-05-28T10:01:39 Roll vulkan-deps from ab1d358e50d2 to 9486d04e3ac1 (2 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/ab1d358e50d2..9486d04e3ac1 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/1cad045cc2bf79c976e1d7001ac71644f6cb29a8..2b19bf7e1bc0b60cf2fe9d33e5ba6b37dfc1cc83 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com Change-Id: Ica31534313f2e387007041eaf44bfbab017d0e14 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5573156 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 42f2f350 2024-05-28T07:01:14 Roll Chromium from 4c6db788f16a to a2a19fca2468 (332 revisions) https://chromium.googlesource.com/chromium/src.git/+log/4c6db788f16a..a2a19fca2468 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/dc0bb16569..50a1aed2a3 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f6db8ec73f..34b12a9839 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/6753f15395..24a969aef2 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/450c36420d..97246c4f73 * third_party/r8: WOxXvh9fg3-WrIaxJQ5oJmndrrRhljgY6kuKponkL_sC..NCxNylYCpeF52DT5ju1xvvVnuEh3CFBKweSUhjn-IjcC * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/3d973f22ec..7d6eb60255 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/f90bf44416..7f5fcffb9f No update to Clang. Bug: None Tbr: solti@google.com Change-Id: I2558835deb76067490f52a94d7b6675b01efa4ab Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5573095 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Roman Lavrov a3057eed 2024-05-27T14:48:51 Vulkan: DIRTY_BIT_DESCRIPTOR_SETS in handleDirtyUniformsImpl For consistency between graphics and compute handling Bug: angleproject:7103 Change-Id: If6db0739d2f75d9e8e77bf88a05466e56d165a0a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5574006 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 71e0038c 2024-05-27T14:50:09 Vulkan: Remove SwiftShader+AsyncCommandQueue tests The AsyncCommandQueue feature is not shipping anywhere, especially not with SwiftShader. Besides, the tests already run Vulkan+AsyncCommandQueue tests. Additionally, SwiftShader still gets exposure to this feature together with the EnableParallelCompileAndLink feature. Bug: angleproject:40644897 Change-Id: I34f0f76ef598f757d3af365777ebb91149b95be3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5574007 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov 7c5d2b81 2024-05-21T16:22:53 Vulkan: Add WarmUpTaskCommon::mExecutableVk initialization Change is only for safety, because uninitialized member is not used in the current code. Bug: angleproject:8601 Change-Id: I65fa912119bc9c33a6248c5616388bde4d33b223 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5573393 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Le Hoang Quyen 8db2d61a 2024-05-14T00:39:47 Metal: properly handle base/max level for immutable textures. Previously, we treat every texture the same as a non-immutable texture. Every texture has a native mtl::Texture containing mipmap levels from base GL level to max GL level. And base GL level would be mapped to level 0 of the native texture. However, this is not correct for immutable textures, pbuffer or EGLImage bound textures. Such textures have mipmaps pre-allocated either via glTexStorage calls or externally. Base and max GL levels don't affect their allocated mipmap levels, only limit the levels a shader can sample. For example, a texture has 8 levels allocated via glTexStorage. Its base level is set 1, and max level is set to 2. Shaders will only be able to sample from level 1 to level 2 of this texture. However, it's valid to attach level 0 or level > 2 of this texture to an FBO. This CL addresses this bug by separating internal mtl::Texture into two main objects: - A native storage will contain the actual mipmap levels of the texture. FBO attachment or data uploads can refer to a level in this object. - A view of the native storage from base GL level to max GL level. This view will be used in shader sampling and mipmap generations. Bug: angleproject:6447 Bug: angleproject:8355 Bug: b/42265945 Change-Id: I186b69f02e9e40c75830ffe4b48bd5a3c8d49cf2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5531392 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Quyen Le <lehoangquyen@chromium.org> Auto-Submit: Quyen Le <lehoangquyen@chromium.org>
angle-autoroll 81fe86ae 2024-05-27T10:01:20 Roll vulkan-deps from feb3ce48e509 to ab1d358e50d2 (7 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/feb3ce48e509..ab1d358e50d2 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/7c3c50ea94354d06dc8c280de8b8a5d5aacbbb19..1cad045cc2bf79c976e1d7001ac71644f6cb29a8 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/f6c54531066c6d28ef403b50ff9cff3ea195d28a..8bc338928b5c92489d953e049018eab2359d437a https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/b25dea41d4a441268745ed9a83f82757170ec459..ee4ac8ea868cf33da30281e25380415c3434523f If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com Change-Id: I50779319539216fbbc2ecad28581b6a9bcfbf9a4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5572397 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll dc3cb1f5 2024-05-27T10:01:34 Roll SwiftShader from 90519141a709 to ec5dbd2dfb46 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/90519141a709..ec5dbd2dfb46 2024-05-24 swiftshader.regress@gmail.com Regres: Update test lists @ 90519141 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 angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com Use-Permissive-Angle-Pixel-Comparison: True Change-Id: I0e2a9c52bc530269541fd7781b53f9aab95b5e9b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5573328 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Scott Marcy b793888a 2024-05-09T11:40:18 Deeply nested switch statements -> ambiguous error Improve the error reported (and potentially avoid a stack overflow crash) when parsing deeply nested `switch` statements. Limits the total number of nested switch and/or iterator statements to `mMaxStatementDepth` (defaults to 256). Bug: angleproject:8645 Change-Id: Iba4795db15c3859d172df8366bc7de3125c2d472 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5527630 Auto-Submit: Scott M <mscott@apple.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com> Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
angle-autoroll 1a8546ad 2024-05-27T07:01:36 Roll Chromium from 1daa08898eed to 4c6db788f16a (743 revisions) https://chromium.googlesource.com/chromium/src.git/+log/1daa08898eed..4c6db788f16a If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/59a9be4050..dc0bb16569 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/940cfd4db1..f6db8ec73f * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/ec40c25bd8..6753f15395 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/09c232e7c0..450c36420d * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/ba37085866..b663b9c4c5 * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/e0a4f3561e..8c5b971941 * third_party/r8: 2VsAp2dMXnrxyG6_BD0El4gDAxTXPqrw8xCV0MNmxcUC..WOxXvh9fg3-WrIaxJQ5oJmndrrRhljgY6kuKponkL_sC * third_party/siso: git_revision:df7a992166415f66f6958744f149f724df138879..git_revision:3c4edd7ed1f9902bb0e422b2257a42600edd3ce5 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/9772a0a349..3d973f22ec * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/973c253520..3754abfc6f * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/ce2f1c1daa..f90bf44416 No update to Clang. Bug: None Tbr: solti@google.com Change-Id: I4b6743de7fe8b36f5ec593598f4bc469aa06deec Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5571513 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Alexey Knyazev 59adc191 2024-05-23T00:00:00 Metal: Ensure valid vertex buffer layout stride Metal Validation causes runtime failures if the sum of the vertex buffer binding offset and the related vertex layout stride is greater than the buffer's length. Fixed: angleproject:342350849 Change-Id: I531f092c6130b37cb8b0b89b20804a222160ceb7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5565528 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Quyen Le <lehoangquyen@chromium.org>
Alexey Knyazev 6cf3c96d 2024-05-23T00:00:00 Metal: Handle empty vertex buffers Use the current attribute value when the bound array buffer has no data to avoid Metal Validation errors. Drive-by: do not emit empty client data upload commands. Fixed: angleproject:40050025 Change-Id: I813725322c52bc16ca432f617a40fe7cee24dd6d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5569091 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Quyen Le <lehoangquyen@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Yuxin Hu ad46d67d 2024-05-24T10:19:00 Suppress failing newly added deqp test on S22 Bug: angleproject:341780527 Change-Id: I274493f2b820b9ff007e93cfe41d04af5f3c5e09 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5568654 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov f3c52204 2024-05-24T16:46:01 Skip antutu_refinery on Linux Intel and AMD Bug: angleproject:342545097 Change-Id: Id4cec570256dbfa13fc406ef31d4e714950f66d8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5570937 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Alexey Knyazev 9742351b 2024-05-23T00:00:00 Move ConversionWithNoVertices to WebGL tests Reliably passing the test requires either extra validation or backend support. Bug: angleproject:342419059 Change-Id: Ifd861f292b5d8f0eb63280a182842343078b7e0c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5569094 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi dc470fa1 2024-05-24T12:10:34 HLSL: Initialize uninitialized storage-image-related data Bug: chromium:342464439 Change-Id: I5664177ecd99fbae419bc00a17c0864e43f06776 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5570599 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll a999fd21 2024-05-24T12:30:54 Manual roll vulkan-deps from 48e47a7bb90c to feb3ce48e509 (32 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/48e47a7bb90c..feb3ce48e509 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/af0641aa09f2e63da2423fd652d2cd57497c5b48..7c3c50ea94354d06dc8c280de8b8a5d5aacbbb19 https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/ccf3e3c1035189bbb50793d1e249a2c0ba3388a3..77c40bece1b8b441eee432fc9d74efbf985f777f https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/1e8781effc88d0cea1a443ea3e0023726fd58eb4..d3d530c90dd6549bcfc7cfaedd3ff85fe8ff04a2 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/777358fdad21132866be4a835327fbc28eabc1a4..f6c54531066c6d28ef403b50ff9cff3ea195d28a https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/f244736ca190fd50c46507ed50c3615fd7a23189..b25dea41d4a441268745ed9a83f82757170ec459 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,ynovikov@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: yuxinhu@google.com,ynovikov@google.com Change-Id: Ieaef7e23da2aa866f40b65a9ba3c03835e0a378f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5569075 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov f0cdb3af 2024-05-24T15:14:49 Skip StateChangeTestES3.RasterizerDiscard on Win Intel Bug: angleproject:342557702 Change-Id: Ifd79939f53efdc99ed8ec3784c737da87a13e5e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5569093 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Alexey Knyazev 6f82959d 2024-05-23T00:00:00 Move OutOfBoundsByteAttribute to WebGL tests Reliably passing the test requires either extra validation or backend support. Bug: angleproject:342419059 Fixed: angleproject:42265239 Change-Id: I29d3fff67a1d15941f18143d30bcb2c940f4e135 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5569089 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 3090866c 2024-05-24T10:01:02 Roll SwiftShader from bf0c5d6b9d00 to 90519141a709 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/bf0c5d6b9d00..90519141a709 2024-05-23 ynovikov@chromium.org regres: Fix LLVM version 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 angle-team@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: yuxinhu@google.com Use-Permissive-Angle-Pixel-Comparison: True Change-Id: I45db98b226c728ee80c68b5c7be99c174ab1879f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5568743 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 5d988854 2024-05-24T07:01:26 Roll Chromium from 1d82a1fadc76 to 1daa08898eed (652 revisions) https://chromium.googlesource.com/chromium/src.git/+log/1d82a1fadc76..1daa08898eed If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/e3c3f5e5f5..59a9be4050 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/be3b6a0ecc..940cfd4db1 * third_party/android_build_tools/lint: Xnap6swAQawTjX1djXDa7Y6utr3To_5vWeNljRgbTHgC..802fuDf2tCI5HIcMNx1jWJbsTrLt2DS5z8BuFE_Sx7cC * third_party/android_build_tools/manifest_merger: let00MLFVBLhc9quEKtUuTMxC_vL8cvLoxiRSF2M4nkC..EBQZXvDztclHzavY9ulEJA3r4mn0PmbIMeKYKnzhEoEC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1f97358483..ec40c25bd8 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/4071d0d728..09c232e7c0 * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/0906c4a315..e0a4f3561e * third_party/r8: WbqEJ5OsG7ZZ0tJWEj3-SoY215emnCb3V88u0L6O1t4C..2VsAp2dMXnrxyG6_BD0El4gDAxTXPqrw8xCV0MNmxcUC * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/839e9816f5..34192533e1 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/9c88d44665..9772a0a349 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/f143139396..973c253520 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/657cc22a92..ce2f1c1daa No update to Clang. Bug: None Tbr: yuxinhu@google.com Change-Id: Iea1115564bd15f58a934b19a6ea571d2eb55cc62 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5568729 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Alexey Knyazev 066cde8b 2024-05-23T00:00:00 Move DynamicVertexArrayOffsetOutOfBounds to WebGL tests Reliably passing the test requires either extra validation or backend support. Bug: angleproject:342419059 Change-Id: I0d167a08208888479b7fe17a0343c10667862454 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5565529 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 7b0d26bb 2024-05-23T15:46:34 Vulkan: Disable VkEvent for images due to perf regressions Bug: angleproject:336844257 Change-Id: I5732455a48f449f402dc114e019d1dc91142b59e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5565223 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 98402f33 2024-05-23T10:23:29 Vulkan: Explicitly set SPIR-V version Bug: angleproject:342316794 Change-Id: Ide73e3d8b167a932338419cb9da3ea358058ebeb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5564203 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 0d772ebe 2024-05-21T16:41:41 Vulkan: Cleanup releaseToExternal/acquireFromExternal API This CL addresses some feedback from the earlier CLs. Bug: b/337135577 Change-Id: I90c26a9374254af69bf00eb6580ce9580b71ca5a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5561465 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 3bc4e17f 2024-05-22T16:15:23 Vulkan: Pack familyIndex and queueIndex into single uint16_t Practically these are very small number. So we really don't need a uint32_t for each index. The only trick is that even though these indices are uint32_t, some of predefined values are ~1u/~2u which does not fit uint8_t. In this CL, int8_t is used so that all these values are properly downsized and expanded by compiler without branch. Bug: b/337135577 Change-Id: I45ac8ea14c4d7a6f65cb012df70013050f725583 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5560510 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
ericali 44d98861 2024-05-17T23:55:13 Assertion under IdGen::createNewName. Remove code that tries to workaround double underscores symbols name that would be introduced if user defined symbols contain underscore prefix or suffix. To avoid unexpected clashes case like '_Data' and 'Data'. Bug: b/341206126 Change-Id: I59e72e59bf483c84f5e33a21f7737f82c31c6896 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5545479 Auto-Submit: Erica Li <lerica@apple.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Geoff Lang ccd9a43b 2024-05-22T11:15:39 Split EGL_ANGLE_device_d3d into D3D9 and D3D11 versions. Add EGL_ANGLE_device_d3d9 and EGL_ANGLE_device_d3d11 which make it possible to know what type of device can be queried ahead of time without generating EGL errors. Refactor the DeviceD3D class into Device9 and Device11. Remove the getType method now that it's not needed for internal validation. Keep EGL_ANGLE_device_d3d for backwards compatibility. Bug: angleproject:342096132 Change-Id: Ib950abad58e46a5be269891ea7afd0cb8534cbe8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5559163 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll f726ae06 2024-05-23T10:01:02 Roll SwiftShader from da334852e705 to bf0c5d6b9d00 (3 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/da334852e705..bf0c5d6b9d00 2024-05-23 bclayton@google.com regres: Various bug fixes 2024-05-23 bclayton@google.com regres: Update to LLVM 17.0.6 2024-05-22 bclayton@google.com Update dEQP to latest and x11 patch file 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 angle-team@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: yuxinhu@google.com Use-Permissive-Angle-Pixel-Comparison: True Change-Id: I39829abf134515ca649d2b63ff9e1ede0def4f6b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5561760 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 5969874c 2024-05-23T07:02:15 Roll Chromium from e7194ab31cb0 to 1d82a1fadc76 (618 revisions) https://chromium.googlesource.com/chromium/src.git/+log/e7194ab31cb0..1d82a1fadc76 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/ac7020fcf7..e3c3f5e5f5 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/ad5094a204..be3b6a0ecc * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/f81f6c011b..b027bd3c0b * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/0c557985c7..4071d0d728 * third_party/flatbuffers/src: https://chromium.googlesource.com/external/github.com/google/flatbuffers.git/+log/c696275eaf..150644d7f4 * third_party/fuchsia-sdk/sdk: version:20.20240515.2.1..version:20.20240522.3.1 * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/5067b87e93..ba37085866 * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/c6e0c0519b..0906c4a315 * third_party/r8: xUMPD-DPTr8cx1fanrD3y4J80VB0Uu38qNRkSvgyk74C..WbqEJ5OsG7ZZ0tJWEj3-SoY215emnCb3V88u0L6O1t4C * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/7131cc9f2a..839e9816f5 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/aa1c946d23..9c88d44665 * tools/luci-go: git_revision:d8c41eecc02cd7b3377a0452eaf704ef315e87ca..git_revision:4967d21f2b92546ac3747086cdcbb046b6db52fb * tools/luci-go: git_revision:d8c41eecc02cd7b3377a0452eaf704ef315e87ca..git_revision:4967d21f2b92546ac3747086cdcbb046b6db52fb * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/e06b82523d..657cc22a92 * tools/skia_goldctl/linux: JdwHnOtHn_lisLnUAst59DhoMpmBCETDIgYBwkPjP9EC..WMIZj5iCtXaIDiOhz7iiswLMOl8EWWP5gfRyHAEZUSAC * tools/skia_goldctl/mac_amd64: ZaehqL3CrA8GCxcVr3A7lMI39UPgsUp0g6jb-Jggo-wC..88_YxpnUWyvy_qTnp6FH2cvFsJ3eKeNLLph6CbyXHmoC * tools/skia_goldctl/mac_arm64: rORx9BBKtiTOmDAfMaeJGti3cCgBK4Qs5_1wi6yHwlkC..TtqdFmghiNp8fsnpcuBhyC8e9PjVxKAXDBQhNoTReaUC * tools/skia_goldctl/win: cBaUWL_EfF2AEUO3JngRQWgjxVNFn22u14AoeZ9QS3AC..zHUBIGOiczuqjD1DhUqsPCLIcVp7c-7bnuOzAncAsy0C No update to Clang. Bug: angleproject:8434 Tbr: yuxinhu@google.com Change-Id: I34858021a1f7fd98fe7212b05086ddce85ada9fe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5560752 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Charlie Lao 602c0edf 2024-04-25T15:08:32 Vulkan: Enable VkEvent for Image barriers This CL actually enables using VkEvent for image barriers. One problem with event is that syncVal is super slow when event is used (it actually slow with VkCmdSetEvent call). which causes a few tests (KHR-GLES3.copy_tex_image_conversions.forbidden.renderbuffer_cubemap_* and asphalt_9) to timeout. These tests did not show signicant overhead with event with VVL disabled, which means the timeout is due to VVL overhead. For now I am disabling syncVal when event is used for image barrier. Since layers are configured before feature bits, a helper function ShouldUseEventForImageBarrier() is introduced to have a central logic enable/disable event. Right ow it just returns true. If we need to disable for a given GPU, we need to pass in proper arguments here while setting up the layers (not sure what exactly will be but will decide when situation comes up). Bug: b/336844257 Change-Id: Iffff8a895e7c767660d327ce9b9e90e6ae0652df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5492739 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao d27c0f95 2024-05-21T16:27:08 Vulkan: Fix UNASSIGNED-SubmitValidation-WaitEvents-WrongQueue Before this CL, when eventBarrier is used for images, we may see UNASSIGNED-SubmitValidation-WaitEvents-WrongQueue VVL error. What happens is that when context is created with medium priority and image is used, we created VkEvent that was set on medium priority VkQueue. Later on when a new context with higher priority is added to the share group, we upgrade all contexts to high priority and all subsequent commands will be submitted to high priority VkQueue. Now if the image is used and we call VkCmdWaitEvent, we end up waiting on new VkQueue for an event that was set on the old VkQueue. This violates the vulkan spec. With all previous prepartion CLs, now Context and ImageHelper all keeps track of which DeviceQueueIndex it was last used. We can just check the DeviceQueueIndex and fallback to pipelineBarrier if they has changed. When pipelineBarrier is used, the event will be released, and subsequent event will be created on new queue. So this fallback should only occur once for the ImageHelper objects that was experiencing the queue switch. ImageHelper::barrierImpl already checking DeviceQueueIndex changes, so this will automatically works for VkEvent. This CL only needs to add the support for ImageHelper::updateLayoutAndQueue. Bug: b/336844257 Change-Id: Ia3f1caee4f3c8e98dc858d387e93d3b2d6eb8053 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5556443 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Charlie Lao 1a9a703b 2024-05-21T11:14:40 Vulkan: Add DeviceQueueIndex to Context/BufferHelper/ImageHelper This CL adds a utility class DeviceQueueIndex, which encapsulates queueFamilyIndex and the queueIndex into one integer value so that we can pass around to barrier function. vk::Context and BufferHelper and ImageHelper class now keeps mCurrentDeviceQueueIndex instead of mCurrentQueueFamilyIndex. For All contexts by default it gets the default queue from renderer (which is always the one corresponding to Medium priority). For ContextVk, when priority changes it update mCurrentDeviceQueueIndex to match new context priority. Bug: b/337135577 Change-Id: I62cc483cfdb3e974d38db074e671c57299300074 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5555903 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao b22cce5f 2024-05-21T10:55:27 Vulkan: Remove Renderer::getDeviceQueueIndex Renderer::getDeviceQueueIndex() returns queueFamilyIndex. There is a function that already returns mCurrentQueueFamilyIndex, so this function is now removed. This CL also renames ImageHelper::isQueueChangeNeccesary to isQueueFamilyChangeNeccesary Bug: b/337135577 Change-Id: I3cd9ded1414d1389e162aaa5399c231a987f871e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5553067 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 9d124c35 2024-05-21T10:36:27 Vulkan: Store QueueIndex in DeviceQueueMap VkGetDeviceQueue call takes two indices: queueFamilyIndex and queueIndex. Right now DeviceQueueMap only stores queueFamilyIndex. This CL also stores queueIndex in the DeviceQueueMap. In later CL, we are going to expose this queueIndex to vk::Context and vk::ImageHelper along with queueFamilyIndex. In order to do it in a cleaner way, this CL mostly involves cleanup. Previously DeviceQueueMap is a subclass of angle::PackedEnumMap. In this CL, DeviceQueueMap has mQueueAndIndices data member that maps priority to devicePriority/queueIndex/VkQueue. Previously DeviceQueueMap was created in Renderer::createDeviceAndQueue() and then passed to CommandQueue::init(), which copies to mQueueMap. This CL removes the copy. It now calls mQueueMap.initialize() directly from CommandQueue::init(). This CL also cleans up relationship between QueueFamily and DeviceQueueMap. Before this CL, QueueFamily::initializeQueueMap() initialiazes DeviceQueueMap object. After this CL, that logic now moves to DeviceQueueMap::initialize(). QueueFamily no longer modifies DeviceQueueMap class. No functional change is expected. Bug: b/337135577 Change-Id: I3f96fb78aedc89d96d6235b060c88b769bdd1e24 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5553066 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao ea36ed34 2024-05-21T10:03:51 Vulkan: Rename mIndex to mQueueFamilyIndex In preparation for the later CLs that expose the VkQueue index to vk::Context, this CL renames mIndex to mQueueFamilyIndex so that we do not confused what *index* really means. No functional change expected. Bug: b/337135577 Change-Id: I6a089716a9586e9c404ec6c1d557a563dccf927c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5553086 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
angle-autoroll f53f53ca 2024-05-22T13:27:15 Manual roll vulkan-deps from 2957dc1863e3 to 48e47a7bb90c (9 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/2957dc1863e3..48e47a7bb90c Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/541733a66b1cf4465559c78a8bd857606ac76123..af0641aa09f2e63da2423fd652d2cd57497c5b48 https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/199038f10cbe56bf7cbfeb5472eb0a25af2f09f5..ccf3e3c1035189bbb50793d1e249a2c0ba3388a3 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/a1a73779649c0bfdaba6b856f7c9c96be6fc75cb..1e8781effc88d0cea1a443ea3e0023726fd58eb4 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools/+log/137b3612d62f1c92da16537e5497a60fcf13b6dc..d67a9d3a394e11c1c4c0f480124f5b7925cb1b4d https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/dcc6123bf5b1b5746b52fc38aa8b8336cc4c1535..f244736ca190fd50c46507ed50c3615fd7a23189 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,ynovikov@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: yuxinhu@google.com,ynovikov@google.com Change-Id: Ie0b497393068d91cbaa4ce4a66ea0b8c04be3608 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5558303 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Roman Lavrov 32260898 2024-05-21T16:38:00 win-msvc-x86-dbg-compile builds -> c++17 Skia currently requires c++17 + msvc https://crrev.com/c/5387270 enabled c++17 on an arm debug bot, this CL adds it to win x86 debug builds. Bug: b/330910097 Change-Id: I78af8383b629337b7b36c267982daa8f675f5f93 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5554180 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 424f757c 2024-05-22T07:30:37 Roll Chromium from 6d8ddfd58532 to e7194ab31cb0 (644 revisions) https://chromium.googlesource.com/chromium/src.git/+log/6d8ddfd58532..e7194ab31cb0 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/9fb898bb7b..ac7020fcf7 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/e107e1aa30..ad5094a204 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/b3d1241f77..1f97358483 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/b4fbce4794..0c557985c7 * third_party/kotlin_stdlib: bCpFA9jdfF0zeuOKYuv9n1vqxV_lykSRR1oAYrVKmFsC.._4e0lDaCjMgaNeq2v2olJs_15Ax3PxGfCU9fMt0FTKcC * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/fc3fb0729e..5067b87e93 * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/419b03c0b8..c6e0c0519b * third_party/r8: CCWS0qWaAWt-cT_itG4vFNt7tuI0FjLHwr9kd8GllPYC..xUMPD-DPTr8cx1fanrD3y4J80VB0Uu38qNRkSvgyk74C * third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/4f653ff1af..209717dd69 * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/199ddb534b..7131cc9f2a * tools/luci-go: git_revision:a60c8017241731d109e8909b5ecbb7b6d6f54af3..git_revision:d8c41eecc02cd7b3377a0452eaf704ef315e87ca * tools/luci-go: git_revision:a60c8017241731d109e8909b5ecbb7b6d6f54af3..git_revision:d8c41eecc02cd7b3377a0452eaf704ef315e87ca * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/5987869b30..e06b82523d * tools/skia_goldctl/linux: POF6EHjK2ABZjWG8M_kH0eR8pQSZ29p4yA3H8EbR3CkC..JdwHnOtHn_lisLnUAst59DhoMpmBCETDIgYBwkPjP9EC * tools/skia_goldctl/mac_amd64: DsWZ6Md4C0PbdllkonvRIJ_zdXUVvUAuZaGkkyH__3IC..ZaehqL3CrA8GCxcVr3A7lMI39UPgsUp0g6jb-Jggo-wC * tools/skia_goldctl/mac_arm64: f79BgDTVjc4x-Q-SYfX-GuXxOK_aezuZ-tjwQ85T2fIC..rORx9BBKtiTOmDAfMaeJGti3cCgBK4Qs5_1wi6yHwlkC * tools/skia_goldctl/win: D1kXDOnp7MBbgxkE6rvufF3H7zHEYUGc1F8m8zUgpvIC..cBaUWL_EfF2AEUO3JngRQWgjxVNFn22u14AoeZ9QS3AC No update to Clang. Bug: None Tbr: yuxinhu@google.com Change-Id: I9aa170be341e764ba41bd0a181dab95882bad5b9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5556579 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Roman Lavrov 073b7628 2024-05-21T21:49:37 Revert "Cleanup: replace DirtyObjectType check with constexpr generator" This reverts commit 89caa0e1d99e45f3d6f355f6e14c147f8de3e0e5. Reason for revert: compile errors on gcc and msvc c++17 Original change's description: > Cleanup: replace DirtyObjectType check with constexpr generator > > Static assert was meant to avoid kDirtyObjectHandlers getting out of > sync, but it doesn't achieve that goal as it's just comparing values > with ints which is confusing. > > Replacing with constexpr generated std::array. C++20 allows to easily > validate that all values are set by _not_ default-initializing > `handlers`. C++17 makes it trickier, addeded static_assert on an > additional static constexpr bool (silly but I can't find a more concise > way) > > Bug: angleproject:8666 > Bug: b/335295728 > Change-Id: Idf9bbd087d09d5ba253a7587ce0503cae3fcf3a7 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5478231 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Roman Lavrov <romanl@google.com> Bug: angleproject:8666 Bug: b/335295728 Change-Id: Ie272f09f0e21498848ac3ed6477dabf28aa3da42 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5554615 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi b8c64f3e 2024-05-21T15:34:26 Fix build on compilers that get confused with templates - part 2 Bug: angleproject:8667 Change-Id: I1db327643f0b16bea5dc59635ac51c2398fdedf6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5554174 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Charlie Lao e5fe13df 2024-05-20T11:03:49 Vulkan: Destroy VkEvent instead of putting into recycler VVL is complaining about SYNC-vkCmdSetEvent-missingbarrier-reset (See https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/8032). I am not sure if the way I did VkCmdResetEvent followed by VkCmdSetEvent is correct either. So destroy VkEvent instead of put it into recycler for now until I sort this out. Bug: b/336844257 Change-Id: I8baf87fa6f6e8c5ed9e2f7e0a29226caa85ebb31 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5549896 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao 9ed415e5 2024-05-16T14:28:31 Vulkan: Clean up in ImageHelper::updateLayoutAndBarrier There was a duplicated pipelineBarrier wait in ImageHelper::updateLayoutAndBarrier that possibly come from bad code merge. It is removed in this CL. The check of hasEvent and subsequently call addAdditionalStageAccess has moved out of addMemoryEvent and make its own function so that it only affects the specific case where the image is used in different shader stage in the *same* render pass. Bug: b/336844257 Change-Id: I78b0c952be32124cb0fb6a2cf750df41f6c8259d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5544450 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Roman Lavrov e83dd780 2024-05-21T12:08:38 Skip texture_lod_bias_all on tsan SwS Flaky timeouts at 120s, green builds barely make it https://ci.chromium.org/ui/p/angle/builders/try/linux-tsan-test/12609/overview Bug: b/332383430 Change-Id: I4abde927b3cd42805164de0e0efd97835000ab71 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5554983 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Auto-Submit: Roman Lavrov <romanl@google.com>
Shahbaz Youssefi b257da86 2024-05-21T12:04:21 Fix build on compilers that get confused with templates Bug: angleproject:8667 Change-Id: Ie3d35b617ceb5bb6c0e13e0dfda370bbe18d888a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5554982 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll bfc643a4 2024-05-21T07:24:26 Roll Chromium from c0ebbbf61129 to 6d8ddfd58532 (401 revisions) https://chromium.googlesource.com/chromium/src.git/+log/c0ebbbf61129..6d8ddfd58532 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/dbd3873447..9fb898bb7b * testing: https://chromium.googlesource.com/chromium/src/testing/+log/94d09ea5ff..e107e1aa30 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1bce0121e3..b3d1241f77 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/d32e1cb571..b4fbce4794 * third_party/turbine: fYpnoJAvh8-OaNB9k81XWGrwiODb_uTipTBEUeIFM98C..JA8o86DtHkYnsW4v8F9pdcvi7uqN1WB-L1XFLggZdtAC * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/c4fb2112b3..f143139396 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/a4d482252d..5987869b30 No update to Clang. Bug: angleproject:8434 Tbr: yuxinhu@google.com Change-Id: Ibeffbc3df4df0105916bcd1fe2ec035454eb2987 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5553753 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Charlie Lao c4d266cc 2024-05-17T15:07:43 Vulkan: Use std::deque for EventBarrierArray::mBarriers Most time mBarriers is small, only ~1.5% time the vector size is greater than 4. So more complicated optimization for it may not worth it. In very rare time it could be over 100. But there is no need for storage to be continuous, so switch to std::deque here so that the overhead for occasionally large barrier array size won't be too bad. Bug: b/336844257 Bug: b/293297177 Change-Id: I79b91128a1a9e460b9687862f00fed51e4258511 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5545884 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu 6f8b736e 2024-05-20T11:19:55 Manual roll VK-GL-CTS from 13344922ae81 to fd5cc7b1e075 (7 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/13344922ae81..fd5cc7b1e075 2024-05-17 marcin.hajder@mobica.com Run clip and cull distance tests on OpenGL ES 2024-05-17 cturner@igalia.com Add coverage for transfer-only copies with multiplanar formats 2024-05-17 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.8 into vk-gl-cts/main 2024-05-16 gleese@broadcom.com Remove 'decor' specialisation in SPIR-V tests 2024-05-16 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-cts-4.6.4 into vk-gl-cts/main 2024-05-16 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.10 into vk-gl-cts/main 2024-05-15 lorenzo@khronosgroup.org Merge remote-tracking branch 'vk-gl-cts/dev/VK_NV_raw_access_chains' If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC angle-team@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: angleproject:341780527 Tbr: yuxinhu@google.com Change-Id: Idddeb19e94307f2313ab572432c547a76e0e7f91 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5547022 Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
angle-autoroll 9ce8d3ba 2024-05-20T07:01:17 Roll Chromium from cc575e3cad82 to c0ebbbf61129 (706 revisions) https://chromium.googlesource.com/chromium/src.git/+log/cc575e3cad82..c0ebbbf61129 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/1664b9f470..dbd3873447 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/a7e42299f3..94d09ea5ff * third_party/android_build_tools/manifest_merger: tL_JG7yL7RqVT4RB2rD5aN3xhRGKPh-V87_YnzX_eSwC..let00MLFVBLhc9quEKtUuTMxC_vL8cvLoxiRSF2M4nkC * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/9a8c80ca55..d32e1cb571 * third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/a37a3aa431..fc3fb0729e * third_party/r8: kzC9Crg5Zd3tLTZPUByQQOz0ma4VeK4QN_T2P7RrnFoC..CCWS0qWaAWt-cT_itG4vFNt7tuI0FjLHwr9kd8GllPYC * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/29b73ebcd5..aa1c946d23 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/95b2bde5a7..c4fb2112b3 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/5347b775c5..a4d482252d No update to Clang. Bug: None Tbr: yuxinhu@google.com Change-Id: I437e9fb531a8646db37a1bba5a51df3fa3adf34a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5549875 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yiwei Zhang a00babd8 2024-05-17T20:38:56 Vulkan: disable supportsShaderFramebufferFetchNonCoherent on Android Not just ARM or QC, but also Intel and AMD are impacted. So just disable this for Android as a whole since it's for app compat but not specific to a particular impl. Bug: b/340665604 Test: LIMBO, Diablo Immortal, Real Racing 3, etc are running properly Change-Id: Id11ad4cd541166c9e6c6d84bb09d9c06a175d5a1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5547687 Auto-Submit: Yiwei Zhang <zzyiwei@chromium.org> Reviewed-by: Lepton Wu <lepton@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 519d6d7e 2024-05-15T15:08:54 Vulkan: Remove AMD deqp expectations We no longer test on AMD. These expectations were added when AMD drivers were very old, so they likely don't apply anymore anyway. Bug: angleproject:3586 Bug: angleproject:3588 Bug: angleproject:5276 Bug: angleproject:7415 Change-Id: Ic7e172186abaf034ef28d87dfd40e21b8298e6ae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5539021 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi c73d0776 2024-05-15T15:07:56 Vulkan: Enable ASTC tests on Nvidia ANGLE emulates ASTC, so we are able to run these tests fine. Bug: angleproject:6441 Change-Id: I641a729db5c00d203c857710b17754161251d785 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5539020 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Charlie Lao b4562086 2024-05-16T12:22:47 Vulkan: Remove std::vector from EventBarrier::mEvents mEvents and mImageMemoryBarriers field of EventBarrier never being more than 1. This CL removes std::vector and just store the handle. Similarly max count for mImageMemoryBarriers is 1, so std::vector also removed. mImageMemoryBarrierCount added (which can be either 0 or 1) to indicate if mImageMemoryBarrier is valid or nullptr should be send to VK driver. Bug: b/336844257 Change-Id: Ib367c649d3a9d790c5e15d4129cde6673bca6cae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5545883 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuly Novikov ee9ed4a4 2024-05-17T14:58:59 End Mac AMD experiment Bug: chromium:327017900 Change-Id: I163b41605e3ebcf65d111d011fd3927ee08a186a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5546124 Commit-Queue: Brian Sheedy <bsheedy@chromium.org> Reviewed-by: Brian Sheedy <bsheedy@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Charlie Lao 7cbac5de 2024-05-16T10:01:41 Vulkan: Switch RefCountedEventCollector to use std::deque Right now it is using std::vector. The vector could potentially grow big. The grow is costly with vector when storage has to resize. This CL switches it to use std::deque. Bug: b/293297177 Bug: b/336844257 Change-Id: Ia407e7d4e1b68bd0cb7cf76ccc5e7523c0e83415 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5545882 Reviewed-by: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao f82d812d 2024-05-16T15:46:05 Vulkan: Fix EventBarrier bug when asyncSubmission is enabled Since we have moved RefCountedEvent garbage collection into ShareGroupVk, we have changed the reference counting to use non-atomic. There is a bug with async submission code path where the executeSetEvents gets called from submission thread which does not have share group lock. This CL fixes this bug by storing VkEvent in RenderPassCommandBufferHelper so that executeSetEvents uses VkEvent instead of RefCountedEvent when async submission is enabled. This CL also adds assertion that RefCountedEvent::releaseImpl does not get called from async submission thread. Bug: b/336844257 Change-Id: Ifcbd5a09d2bc7636cc15b2c6728dbbca103d4d9c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5544449 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao 2d0e92ee 2024-05-16T09:36:44 Vulkan: Let Recycler class use std::deque instead of vector Vector is expensive when storage has to be expanded. The Recycler only use the storage as a stack operation, there is no requirements of storage being continuous, thus deque works perfectly. Bug: b/293297177 Change-Id: I89f02b4a7e7f356942bb6606e3d38dcbdcc8bb4d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5545881 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
angle-autoroll 8f6b295a 2024-05-17T13:49:07 Manual roll Chromium from 2758cfd7767d to cc575e3cad82 (737 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/chromium/src.git/+log/2758cfd7767d..cc575e3cad82 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,romanl@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/9c1517ab97..1664b9f470 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f8695d2beb..a7e42299f3 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/c2f740d532..1bce0121e3 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/274689c4a5..9a8c80ca55 * third_party/r8: COW7cFK6pwOVeM1EEvoEXOYDwDbWVkPQDC63mlyb3m4C..kzC9Crg5Zd3tLTZPUByQQOz0ma4VeK4QN_T2P7RrnFoC * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/e576783b41..199ddb534b * tools/luci-go: git_revision:0ff3a23429edb67778b350e6ccbf9c9efdd0e51f..git_revision:a60c8017241731d109e8909b5ecbb7b6d6f54af3 * tools/luci-go: git_revision:0ff3a23429edb67778b350e6ccbf9c9efdd0e51f..git_revision:a60c8017241731d109e8909b5ecbb7b6d6f54af3 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/f307c691ae..5347b775c5 * tools/skia_goldctl/linux: EYKOn-l9uvmHtsVw_fmqj8vxXKpMyXt2sXvEJ3snsUQC..POF6EHjK2ABZjWG8M_kH0eR8pQSZ29p4yA3H8EbR3CkC * tools/skia_goldctl/mac_amd64: U1MAiUkDGvUVuk6G3tRhjjtmA3gDgW4HkyWhy8xTfrQC..DsWZ6Md4C0PbdllkonvRIJ_zdXUVvUAuZaGkkyH__3IC * tools/skia_goldctl/mac_arm64: KzRIDh9i73vYu6zVorKIEt7qrq38TuL9MZEWbf3Glw4C..f79BgDTVjc4x-Q-SYfX-GuXxOK_aezuZ-tjwQ85T2fIC * tools/skia_goldctl/win: gEDTtt_VQOAPHQedAzUUVJ79216-Wz_H9A-EfvVGYyAC..D1kXDOnp7MBbgxkE6rvufF3H7zHEYUGc1F8m8zUgpvIC No update to Clang. Bug: None Tbr: romanl@google.com,ynovikov@google.com Change-Id: I59818a609411f04c1971e230e94adae13696faef Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5547944 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov b71fe1c5 2024-05-16T15:10:09 Flatten vulkan-deps. Sub-repos will be now checked out in third_party directly, instead of under third_party/vulkan-deps. Bug: chromium:341002187 Change-Id: Ia1c10ce5e7865c164b29bdcabb6ab8a7e4ae35b7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5545577 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 698f51d9 2024-05-15T16:03:48 Don't build OpenCL with msvc msvc builds of llvm take way too long. We make sure ANGLE builds with msvc to support existing users of it as a GLES implementation, but we have no intention to support the OpenCL implementation with that compiler. Bug: None Change-Id: I1c370fd843fc25cccacabbbfb4727ef830fa45e7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5539191 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 7ac85733 2024-05-15T15:06:31 Vulkan: Enable advanced blend emulation on Intel/Linux Only Intel/windows drivers miss the required functionality. Bug: angleproject:3586 Change-Id: I53eeb100c7ac7ee469e0bb35c19ae42d21f79ed2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5539019 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi b1267bf3 2024-05-15T15:05:10 Skip concurrent ResourceMap tests in Chromium Chromium builds ANGLE with locking disabled because it ensures concurrent access doesn't happen. So testing that concurrent access works in unit tests is meaningless in those builds. Bug: angleproject:8667 Change-Id: I30f36ed72d64303a590afd727bbe9875d06b3d96 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5539018 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 0f1c8ac6 2024-05-16T07:01:47 Roll Chromium from 075ed4a6344d to 2758cfd7767d (617 revisions) https://chromium.googlesource.com/chromium/src.git/+log/075ed4a6344d..2758cfd7767d If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,romanl@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/4eca45df04..9c1517ab97 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/6206ead2d5..efa920ce14 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/506cd72a25..f8695d2beb * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/8c54b7dae4..f81f6c011b * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/f79d3898d8..2888a739e9 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/923a565b97..c2f740d532 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/2b6524b208..274689c4a5 * third_party/fuchsia-sdk/sdk: version:20.20240507.3.1..version:20.20240515.2.1 * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/d1dc2a57c8..e576783b41 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/a937e8028f..29b73ebcd5 * tools/luci-go: git_revision:0353d07d5edeb62305e13f17d808e8523cd5bac2..git_revision:0ff3a23429edb67778b350e6ccbf9c9efdd0e51f * tools/luci-go: git_revision:0353d07d5edeb62305e13f17d808e8523cd5bac2..git_revision:0ff3a23429edb67778b350e6ccbf9c9efdd0e51f * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/8441b20b2a..f307c691ae Clang version changed llvmorg-19-init-9433-g76ea5feb:llvmorg-19-init-10646-g084e2b53 Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/a937e8028ff14e705d1c9a59fa1287a7f62ea6b5..29b73ebcd5d8eab37eed507251fce48bd15d9f50/scripts/update.py Bug: None Tbr: romanl@google.com Change-Id: Ibf38c849b388f85d5af6fa61c305e21391b2e5e4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5543622 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Charlie Lao 8884cf06 2024-05-09T11:21:38 Vulkan: Use QueueSerial to track RefCountedEvent garbage RefCountedEvent garbage are only used on one command buffer, so it is a single QueueSerial is enough to track it. Bug: b/336844257 Change-Id: Icafeee722fe19f41dd863a2e6aca6ddd981d28a4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5529952 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 4629bf6c 2024-05-08T17:43:59 Vulkan: Move RefCountedEvent GC and recycler to ShareGroupVk (3/3) With previous CLs, RefCountedEvents are increment/decrement only within contexts in the same ShareGroup, thus we no longer needs atomic operation. This CL switchs RefCountedEvent to use RefCounted instead of AtomicRefCounted. Bug: b/336844257 Change-Id: Ic5aa9b0f28b8f817f820f595d3de945ce37dbd0e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5527617 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Amirali Abdolrashidi 44db69ab 2024-05-06T17:12:17 Add Qualcomm version with fixed CmdClearAttachment * Added QualcommDriverVersion (angle::VersionTriple) to make comparing versions more clear. * Added ParseGenericVulkanDriverVersion() to parse the version of drivers using the generic Vulkan format. * Updated the condition for the following feature to no longer apply to more recent drivers. * preferDrawClearOverVkCmdClearAttachments Bug: b/339054824 Change-Id: I0016c6c19ef1606b7c9475d684d98134494d8524 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5514933 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Charlie Lao 0636b509 2024-05-06T12:36:20 Vulkan: Move RefCountedEvent GC and recycler to ShareGroupVk (2/3) One of the problem we had with RefCountedEvents is CPU overhead comes with it, and some part of the CPU overhead is due to atomic reference counting. The RefCountedEvents are only used by ImageHelper and ImageHelpers are per share group, so they are already protected by front end context share lock. The only reason we needs atomic here is due to garbage cleanup, which runs in separate thread and will decrement the refCount. The idea is to move that garbage list from RendererVk to ShareGroupVk so that access of RefCountedEvents are all protected already, thus we can remove the use of atomic. The down side with this approach is that a share group will hold onto its event garbage and not available for other context to reuse. But VkEvents are expected to be very light weighted objects, so that should be acceptable. This is the second CL in the series. In this CL, we added RefCountedEventsGarbageRecycler to the ShareGroupVk which is responsible to garbage collect and recycle RefCountedEvent. Since most of ImageHelper code have only access to Context argument, for convenience we also stored the RefCountedEventsGarbageRecycler pointer in the vk::Context for easy access. vk::Context argument is also passed to RefCounteEvent::init and release function so that it has access to the recycler. The garbage collection happens when RefCountedEvent is needed. The per renderer recycler is still kept to hold the RefCounteEvents that gets released from ShareGroupVk or when it is released without access to context information. Bug: b/336844257 Change-Id: I36fe5d1c8dacdbe35bb2d380f94a32b9b72bbaa5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5529951 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao 2e0aefe9 2024-05-06T11:03:19 Vulkan: Move RefCountedEvent GC and recycler to ShareGroupVk (1/3) One of the problem we had with RefCountedEvents is CPU overhead comes with it, and some part of the CPU overhead is due to atomic reference counting. The RefCountedEvents are only used by ImageHelper and ImageHelpers are per share group, so they are already protected by front end context share lock. The only reason we needs atomic here is due to garbage cleanup, which runs in separate thread and will decrement the refCount. The idea is to move that garbage list from RendererVk to ShareGroupVk so that access of RefCountedEvents are all protected already, thus we can remove the use of atomic. The down side with this approach is that a share group will hold onto its event garbage and not available for other context to reuse. But VkEvents are expected to be very light weighted objects, so that should be acceptable (If not, we can add some limit to the number of events it can hold in the garbage list). This is the first CL in the series. Before this CL, the RefCounteEvents are garbage collected at flushToPrimrary time, at which time we have lost ContextVk information. In order for us to do garbage collect to ShareGroupVk, we need to move the garbage collection process early, before command buffers leaving ContextVk's visibility. For OutsideRenderPassCommands, this is easy to do, we just call flushSetEvents before we call mRenderer->flushRenderPassCommands. For RenderPassCommands, that flushSetEvents call will simply make another copy of RefCountedEvents and add to the garbage list and the actual VkCmdSetEvents are defered at the executeSetEvents call that get called from flushToPrimrary time. Bug: b/336844257 Change-Id: I1948cd8240ff61d407931083b7584a54b1dc6b0d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5517891 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi e547126a 2024-05-15T13:46:10 Disable ResourceMapTest.ConcurrentAccessLargeIds ... until I figure out why it's failing on some bots. Bug: angleproject:8667 Change-Id: I4399739b257a8e49da0d94ed162f472ed84c41c7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5539016 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang d0bdec30 2024-05-13T18:11:17 EGL: Handle null resultOut for sync tail call destruction Syncs can be destroyed during eglDestroySync or as part of display destruction. During display distruction there is no result so swallow any errors. Bug: angleproject:8434 Change-Id: I172d268c91fd0d6ba534eceff8914f9c719bdf39 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5533777 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 5332ab8c 2024-05-10T19:48:34 Vulkan: Add RefCountedEventRecycler to vk::Renderer This CL adds event recycler in vk::Renderer to avoid the constant create and destroy of VkEvents. When RefCountedEvent is destroyed previously, it now goes into per renderer recycler. When RefCountedEvent is created previously, it now dips into this recycler and fetch it. Before we issue VkCmdSetEvent, if this event was from recycler, we also issue VkCmdResetEvent before VkCmdSetEvebt. When glFinish/EGLSwapBuffer is called or context gets destroyed, this recycler is purged to keep the free count under limit. Bug: b/336844257 Change-Id: I92ec1b183f708112a96c3d06fcfa265024f5aa04 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5519174 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Alexey Knyazev 0ac0603e 2024-05-14T00:00:00 Fold nested std::max calls When a maximum of three values is needed, an initializer list with all three values is more readable than two std::max calls. Fixed: angleproject:8695 Change-Id: I073ea1af07b215610c85981eea03f6e73107bce6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5541974 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Alexey Knyazev b98b2c34 2024-05-14T00:00:00 Minor TextureState::getEnabledLevelCount cleanup The return value of TextureState::getMipmapMaxLevel() is by definition less than or equal to the return value of TextureState::getEffectiveMaxLevel(). Bug: None Change-Id: I5cea291bb786adb698f0c66435ac09b2e40221c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5541970 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>