Log

Author Commit Date CI Message
Charlie Lao 044612ec 2023-02-27T14:59:29 Vulkan: Remove iterator from FixedQueue class Previously there was code that still walking each element of FixedQueue, that was mostly removed in previous CLs. The only remaining usage is for assertion which the value is minimal. This CL removes the iterator from FixedQueue so that it behaves just like queue, thus avoiding potential risk of misuse. Bug: b/255411748 Change-Id: I4c0debf5b6c8b603e384c681f1a123c2ee06dcbb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4294695 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao 31bd0c58 2023-03-01T10:52:30 Vulkan: Do immediate cleanup after finishOneCommandBatch This is follow up for crrev.com/c/4244823. This adds postSubmitCheck in RendererVk::queueSubmitOneOff(). It adds immediate clean up in finishOneCommandBatch and renamed to finishOneCommandBatchAndCleanup. Bug: b/255411748 Change-Id: I1d3dbd7dfe9642f4bc77b17552281a4c7b6c2d69 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4300098 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao 62e58704 2023-03-01T14:46:54 Vulkan: Attempt to fix the tsan complain regarding volk. In certain cases, I am seeing volk function pointer been set while it is still being accessed. See https://chromium-swarm.appspot.com/task?id=60b37aa811f8b410. My guess it is related to some tests configs that end up with RendererVk gets initialized while other instance is still running. This is attempt to fix the tsan complain by only load volk function pointer if needed. Bug: angleproject:8055 Change-Id: I5dcc62876bf93a250080de1f8e1b97d2b7570ab8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4300072 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
angle-autoroll 839cfa13 2023-03-02T08:07:24 Roll Chromium from 03859909b0fa to 051119636a02 (640 revisions) https://chromium.googlesource.com/chromium/src.git/+log/03859909b0fa..051119636a02 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 abdolrashidi@google.com,angle-team@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug 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/bb2ff97c7a..ff22f91e3b * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/3d5742efd7..2512e92cc4 * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/e136ec5032..f8109050ec * testing: https://chromium.googlesource.com/chromium/src/testing/+log/c7e279e566..b5e5cc8b48 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/c2dbcdae89..28c6deacab * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/1ccf7c039e..344f5518bf * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..4003278e8c * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/424814829a..56a18a86fe * third_party/fuchsia-sdk/sdk: version:11.20230228.1.1..version:11.20230301.3.1 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/efe38512d6..243f1b198e * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/eb620dd29c..501367a46c * tools/skia_goldctl/linux: 1oPah2i45aewEBGsa68o67Y0KibAkUhc8dfDIVTj-TgC..CJ4GdxYYG3v_NJn3Wlkh0THbvMsigwNH76hC9E-vfG0C * tools/skia_goldctl/mac_amd64: LNbaoDsQEefkZnHbXNqyXSyOmpBQdSXqAV0zIYsUui8C..DcfjZ6EhCOk0P7xz4rYDWoj14bHQsuZW8aKIGQnVB44C * tools/skia_goldctl/mac_arm64: EKPxep9bQLvxK9a9FgA1AZcrhUvEiVmnjatSKI4K5vwC..pAgE9V5S1KE5SuFadTLlVQ5yHfCm2OjtbEKyuzo2xdsC * tools/skia_goldctl/win: ygU62PsZ1JG8ebL8lmvO0n9iquvcvZWX7WX0g0cXByEC..Yt2iV6sDnXhLYyn1QpkZ06DAg-yY1Eedw90iVDOvgwAC No update to Clang. Bug: None Tbr: abdolrashidi@google.com Change-Id: I9f7c668f66cc55e8a780d05644a2211655fcec35 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4302630 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Amirali Abdolrashidi 8019f293 2023-03-01T14:43:53 Manual roll vulkan-deps from 385df753e370 to 5d7ca659e804 (62 revisions) Manual roll requested by abdolrashidi@google.com * Added "vulkan_sci.h" to the ignore list in export_targets.py to fix a presubmit error. https://chromium.googlesource.com/vulkan-deps.git/+log/385df753e370..5d7ca659e804 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/6d41bb9c55..9cdfc5a511 * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/4e2fdb2567..7512345f61 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/c9947cc8d5..9d71fb6764 * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/e8b8e06d09..a3dd2655a3 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/2015474294..3db19f3e3d * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/27c28d4b40..5bcfa1605e * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/a632681567..b8eae8a7c8 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 abdolrashidi@google.com,angle-team@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: angleproject:8049 Tbr: abdolrashidi@google.com Change-Id: Ibda969b6a7db3ea8d41de8fc28c7caf5fb79ed45 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4301769 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Amirali Abdolrashidi 18a1022e 2023-03-01T13:55:41 Manual roll VK-GL-CTS from c0a0038a1bed to 04e5d38379bd (12 revisions) Manual roll requested by abdolrashidi@google.com * Skipped the following test from KHR-GLES3* * shaders.negative.non_precision_qualifiers_in_struct_members https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/c0a0038a1bed..04e5d38379bd 2023-02-24 anna.lesniewska@intel.com Add depth tests running on local heap with host visible memtype 2023-02-24 piotr.byszewski@mobica.com Merge vk-gl-cts/vulkansc-cts-1.0.1 into vk-gl-cts/main 2023-02-24 piotr.byszewski@mobica.com Merge vk-gl-cts/opengl-cts-4.6.3 into vk-gl-cts/main 2023-02-24 rgarcia@igalia.com Add GLES_ALLOW_DIRECT_LINK CMake option 2023-02-24 piotr.byszewski@mobica.com Test textureSize for oob lod 2023-02-24 syoussefi@google.com Tests for surface/swapchain maintenance1 2023-02-24 michal.jakubek@mobica.com Add coverage of vkGetImageMemoryRequirements2 for multiplanar formats 2023-02-24 Andrew.Fobel@amd.com Fix BufferView access tests for scaled types 2023-02-24 piotr.byszewski@mobica.com Merge vk-gl-cts/vulkan-cts-1.3.5 into vk-gl-cts/main 2023-02-22 piotr.byszewski@mobica.com Merge vk-gl-cts/dev/VK_EXT_pipeline_library_group_handles into vk-gl-cts/main 2023-02-14 ziga@lunarg.com Remove invalid new linked pipeline test with null layout 2023-02-13 piotr.byszewski@mobica.com Merge vk-gl-cts/opengl-cts-4.6.3 into vk-gl-cts/main 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 abdolrashidi@google.com,angle-team@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: angleproject:8045 Tbr: abdolrashidi@google.com Change-Id: Ie7e145113c58ede9ba718499b54b0cb32b36f268 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4301430 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuly Novikov 6e58328d 2023-03-01T19:12:28 Add Mac AMD experimental bot Bug: chromium:1382149 Change-Id: I4652585abee747d4a9a738a679deefb7ae57f64f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4300871 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Roman Lavrov 024114b2 2022-12-16T11:32:30 Reland "Replace zlib from chrome by Android's zlib." Add zlib to delete_only_deps, otherwise gclient seems to choke on it https://crbug.com/skia/14155#c3 Also git add $root_add_dep instead of "$root_add_dep/*" as the latter wouldn't add deleted directories like third_party/zlib in this case. We also need zlib in unsupported_third_party_deps so that it gets deleted after gclient sync. When a file from a nested git repo was already added to the tree previously, git no longer relies on .git subdirectory detection and works as if .git wasn't there. This is a reland of commit 39f0eaf8095b303b09951ceb6ffda8254ed24c8d Original change's description: > Replace zlib from chrome by Android's zlib. > > Implements Elliott's https://r.android.com/2360448 in our codegen. The > only diffs are ordering and third_party_android_ndk_cpu_features. > We only seem to depend on cpufeatures for zlib. > > //third_party/zlib/google:compression_utils_portable is the root > dependency, so cutting it makes other zlib libs disappear from > Android.bp > > zlib_google_compression_utils_portable and libz_static > that this CL depends on were added in https://r.android.com/2359720 > > Tested by running roll_aosp.sh in Android tree and building. > third_party/zlib got deleted locally so presumably it should > get deleted by the roller > > Bug: b/262603863 > Change-Id: I2651cc21121d741526055fa2b0288d0dcfa5c62a > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4111891 > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Commit-Queue: Roman Lavrov <romanl@google.com> Bug: b/262603863 Change-Id: I87226e294a3e293ed5fcdeb2f0cf52f55917c1f3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4300169 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Alexey Knyazev a2efea13 2023-03-01T00:00:00 Add ANGLE_stencil_texturing This extension allows texturing of the stencil component of a packed depth stencil texture on OpenGL ES 3.0 contexts. Trivially exposed on backends that support OpenGL ES 3.1, which requires this feature. Adjusted the tests to check for the new extension string instead of the context version. Bug: angleproject:8051 Change-Id: I4d833acbc72e7374bde91d4c861598a0fdaf9b90 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4295312 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Hans Wennborg 35c44b40 2023-02-28T14:47:38 PoolAlloc: unpoison memory before potentially re-using it std::vector uses special ASan annotations to catch accesses to memory between v.data()+v.size() and v.capacity() -- which are valid memory locations but outside the container. A recent libc++ change [1] made these annotations work with custom allocators as well. This caused a problem when PoolAlloc re-used memory that previously held a std::vector with such annotations without having run the vector's destructor. To fix it, this change makes PoolAlloc unpoison memory when it's returned to the allocator via the pop() method. [1] https://reviews.llvm.org/D136765 Bug: chromium:1419798 Change-Id: I919dd7d7734b36bf770f25e096a94669703d75d2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4296797 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Roman Lavrov a0736135 2023-03-01T15:17:07 Revert "Replace zlib from chrome by Android's zlib." This reverts commit 39f0eaf8095b303b09951ceb6ffda8254ed24c8d. Reason for revert: Broke roller https://crbug.com/skia/14155 Original change's description: > Replace zlib from chrome by Android's zlib. > > Implements Elliott's https://r.android.com/2360448 in our codegen. The > only diffs are ordering and third_party_android_ndk_cpu_features. > We only seem to depend on cpufeatures for zlib. > > //third_party/zlib/google:compression_utils_portable is the root > dependency, so cutting it makes other zlib libs disappear from > Android.bp > > zlib_google_compression_utils_portable and libz_static > that this CL depends on were added in https://r.android.com/2359720 > > Tested by running roll_aosp.sh in Android tree and building. > third_party/zlib got deleted locally so presumably it should > get deleted by the roller > > Bug: b/262603863 > Change-Id: I2651cc21121d741526055fa2b0288d0dcfa5c62a > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4111891 > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Commit-Queue: Roman Lavrov <romanl@google.com> Bug: b/262603863 Change-Id: Ie17cb5b63a2c86a7414230bf9b0e8ef16e8734bb No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4298280 Commit-Queue: Roman Lavrov <romanl@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Yuly Novikov 5fd68d59 2023-03-01T14:31:15 Skip FramebufferTest_ES3.RenderSharedExponent on iOS Metal Bug: angleproject:8043 Change-Id: Ib7e28ac1a2d658056e960272783ef322e1f009d8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4294902 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Igor Nazarov eb0475c0 2023-02-23T22:59:14 Vulkan: Cleanup RendererVk::allocateQueueSerialIndex method. Currently this method makes 2 distinct tasks: - allocates QueueSerialIndex. - gets LastSubmittedSerial. In case of "queueSubmitOneOff()" (and future uses) "LastSubmittedSerial" is not necessary. This produces extra work and makes code more complex. This CL makes two separate functions: angle::Result allocateQueueSerialIndex(SerialIndex *indexOut); angle::Result allocateQueueSerialIndex(QueueSerial *queueSerialOut); The "queueSubmitOneOff()" was simplified. Additionally, fixed possible SerialIndex leak if method fails before "releaseQueueSerialIndex()". Bug: b/267806287 Change-Id: I1dfb91b9f409aa17e8f1de222f7b01345109e6d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4289749 Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
angle-autoroll d0056bc5 2023-03-01T07:01:29 Roll Chromium from dc2706bd2987 to 03859909b0fa (653 revisions) https://chromium.googlesource.com/chromium/src.git/+log/dc2706bd2987..03859909b0fa 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 abdolrashidi@google.com,angle-team@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug 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/0c4c8e9d71..bb2ff97c7a * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/121e823614..3d5742efd7 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/7bb027b853..c7e279e566 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/17fd178419..1ccf7c039e * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..a589e9031f * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/7bf7e06945..424814829a * third_party/fuchsia-sdk/sdk: version:11.20230227.1.1..version:11.20230228.1.1 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/6e18cb4ad3..697c297330 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/27f2bb9970..efe38512d6 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/5f34c57074..eb620dd29c * tools/skia_goldctl/linux: Y_kEjj2xNjDDzIdGOexbyqLLOhJCcncyCu5lC51g5AsC..1oPah2i45aewEBGsa68o67Y0KibAkUhc8dfDIVTj-TgC * tools/skia_goldctl/mac_arm64: dImBH_u2g-eDmw3VFCZ0E70ynaXS2QWXSEvComqAx9MC..EKPxep9bQLvxK9a9FgA1AZcrhUvEiVmnjatSKI4K5vwC * tools/skia_goldctl/win: huSAWf6X6Ecewacj_voW4JDySIedvh6nH3ePRAn3YW0C..ygU62PsZ1JG8ebL8lmvO0n9iquvcvZWX7WX0g0cXByEC No update to Clang. Bug: None Tbr: abdolrashidi@google.com Change-Id: Iec4bf1959a7df367d033c3d172ee67ab81c4a7db Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4298001 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Alexey Knyazev 1ca860ac 2023-02-22T00:00:00 Add extension stubs * GL_EXT_conservative_depth * GL_EXT_depth_clamp * GL_EXT_render_snorm Bug: angleproject:8046 Bug: angleproject:8047 Bug: angleproject:8048 Change-Id: I7deb4f25f76008103c2754747db2d90be880b6ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4296803 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Mike Schuchardt 190a3214 2023-02-20T17:42:02 Tests: Add Arknights trace Test: angle_trace_tests --gtest_filter=TraceTest.arknights Bug: b/270523023 Change-Id: I147927e5ada7470a91d8aee540cf217fcb1e4ec1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4294655 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Mike Schuchardt <mikes@lunarg.com>
Alexey Knyazev e2cf65ed 2023-02-22T00:00:00 Implement QCOM_render_shared_exponent Fixed: angleproject:8043 Change-Id: Ia76b8e4b60a640180bae77cba523142749051398 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4289140 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Charlie Lao e180ed5e 2023-02-27T14:40:10 Vulkan: Apply postSubmitCheck to async submission code path postSubmitCheck is doing CPU throttling if we accumulate excessive amount of garbage. There is no good reason this should not apply in async submission. This CL moves the call so that it applies to both cases. Bug: b/255411748 Change-Id: Ib36344dfe9e6f1c0120734302c0d4083073e004c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4295366 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao e88b061c 2023-02-17T13:36:24 Vulkan: Follow up fix and enable asyncCommandBufferReset flag This CL makes any follow up fix for crrev.com/c/4244823 and enables asyncCommandBufferReset feature flag. It changes CommandQueue::checkCompletedCommands only do the check and update mLastCompletedSerials. It makes async command processor thread always call checkCompletedCommands if mNeedCommandsAndGarbageCleanup is true so that we can clean up more garbages. This CL also makes garbage clean up always done in async thread even if asyncCommandBufferReset is disabled. Bug: b/255411748 Change-Id: I1d63aa9f1f565d81780a39c29b919da3dd5a68be Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4264175 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Charlie Lao <cclao@google.com>
Roman Lavrov 39f0eaf8 2022-12-16T11:32:30 Replace zlib from chrome by Android's zlib. Implements Elliott's https://r.android.com/2360448 in our codegen. The only diffs are ordering and third_party_android_ndk_cpu_features. We only seem to depend on cpufeatures for zlib. //third_party/zlib/google:compression_utils_portable is the root dependency, so cutting it makes other zlib libs disappear from Android.bp zlib_google_compression_utils_portable and libz_static that this CL depends on were added in https://r.android.com/2359720 Tested by running roll_aosp.sh in Android tree and building. third_party/zlib got deleted locally so presumably it should get deleted by the roller Bug: b/262603863 Change-Id: I2651cc21121d741526055fa2b0288d0dcfa5c62a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4111891 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
angle-autoroll d3fcf08d 2023-02-28T19:33:13 Manual roll vulkan-deps from 3c1556cc7322 to 385df753e370 (1 revision) Manual roll requested by abdolrashidi@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/3c1556cc7322..385df753e370 Changed dependencies: * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/5d2b7d957e..a632681567 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 abdolrashidi@google.com,angle-team@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: abdolrashidi@google.com Change-Id: Iab5e7d0a0763f40a4100e1ef0f0bb8936b311932 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4298190 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Roman Lavrov 33df630f 2023-02-28T11:16:08 MSRTSS uses AppendToPNextChain due to non-NULL pNext. As discussed in: https://chromium-review.googlesource.com/c/angle/angle/+/4116675/comment/3097cb31_16922d39/ Not currently causing issues as it requires very recent drivers but I saw the `ASSERT(ptr->pNext == nullptr);` in AddToPNextChain fail somewhere. Bug: angleproject:7899 Change-Id: Id46162a5aacd3d8599382ce1dfca25aca5e730e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4296801 Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Charlie Lao 6d282d62 2023-02-08T16:51:07 Vulkan: Move retireFinishedCommands/garbageCleanup to worker thread This CL separate out the logic of mLastCompletedQueueSerial update and retireFinishedCommands and garbage clean up into different functions. At submission, previously we are always check fence and update mLastCompletedQueueSerials and calling reset on finished commands and do garbage clean up. With this CL, we only do the fence check and update mLastCompletedQueueSerials. Then it request worker thread to do the command buffer reset and garbage cleanup. We uses the CommandProcessor's thread for the reset and cleanup, since async submission path needs to handle this clean up anyway. This CL also added a new feature flag asyncCommandBufferReset and it is disabled right now. This will be enabled in the follow up CL. Bug: b/255411748 Change-Id: I6da558f8d4c962eb038e2378ccc76c464101cde2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4244823 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Charlie Lao <cclao@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuly Novikov dd6d8302 2023-02-28T14:24:43 Suppress VUID-vkCmdEndDebugUtilsLabelEXT-commandBuffer-01912 New VUID added in https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/5277 Bug: chromium:1420265 Change-Id: I139815fdfd90439c5a2ea79e467a60ba54ecbc0e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4296799 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
angle-autoroll df642b98 2023-02-28T10:01:38 Roll SwiftShader from dca80fc3a894 to 0ba0b45490cd (2 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/dca80fc3a894..0ba0b45490cd 2023-02-27 bclayton@google.com marl: Remove spurious semicolons 2023-02-27 bclayton@google.com marl: emulate thread_local with pthreads 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 abdolrashidi@google.com,angle-team@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: abdolrashidi@google.com Use-Permissive-Angle-Pixel-Comparison: True Change-Id: I03686ca41e7972e7e6a158afbb4c4b56cbc511db Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4297000 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 0a4af608 2023-02-28T07:00:09 Roll Chromium from 59912d50f1af to dc2706bd2987 (606 revisions) https://chromium.googlesource.com/chromium/src.git/+log/59912d50f1af..dc2706bd2987 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 abdolrashidi@google.com,angle-team@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug 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/60a5c0d8b7..0c4c8e9d71 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/bdd20ec72c..121e823614 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/900cd89794..7bb027b853 * third_party/android_build_tools/lint: MSpv-kFDDSPO0SY0dLdHegUJcJT1Yy8cL9r3vlAZ9vkC..NrP_GizJsQ_kr9O0WQlncRx1xdicjU4BFHi9pLPeTSIC * third_party/android_build_tools/manifest_merger: EbRaK62t9grqlZqL-JTd_zwM4t1u9fm1x4c2rLE0cqQC..saMCpz15quEEWToMloh-A_rMqC0WSdJlyYTFvwAd840C * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/f8b0a646b3..17fd178419 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..dc83184d4c * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/9144b67c7f..7bf7e06945 * third_party/fuchsia-sdk/sdk: version:11.20230226.3.1..version:11.20230227.1.1 * third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/ab0d470309..90e67ba3f8 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/59d4a6deb0..6e18cb4ad3 * tools/luci-go: git_revision:8a8b4f2ea65c7ff5fde8a0c522008aed78d42d9d..git_revision:67696c7e93f9dbf03f7bcf7f8fafe9c5728e1ebe * tools/luci-go: git_revision:8a8b4f2ea65c7ff5fde8a0c522008aed78d42d9d..git_revision:67696c7e93f9dbf03f7bcf7f8fafe9c5728e1ebe * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/abe19ba5c7..27f2bb9970 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/4ff9da4f7e..5f34c57074 * tools/skia_goldctl/linux: -G9gUusEGDPsbf_GULdyJo9DYyeNBuqD8gHfdxCvIbYC..Y_kEjj2xNjDDzIdGOexbyqLLOhJCcncyCu5lC51g5AsC * tools/skia_goldctl/mac_amd64: 0GVvuvDBNt6KJ7UzxBRUW5ShTWCliifyzaCkudNzmrkC..LNbaoDsQEefkZnHbXNqyXSyOmpBQdSXqAV0zIYsUui8C * tools/skia_goldctl/mac_arm64: 8vKG1ZGA0f7asv5AHh_7yBxVD2h-I-yR2oY4TOjwo6kC..dImBH_u2g-eDmw3VFCZ0E70ynaXS2QWXSEvComqAx9MC * tools/skia_goldctl/win: BZ0EL-KSkwCzJciJf9MbwmZAJPRhlKOp0LEYiTV6lWIC..huSAWf6X6Ecewacj_voW4JDySIedvh6nH3ePRAn3YW0C Clang version changed llvmorg-17-init-2387-g68e81d7e:llvmorg-17-init-3170-g6e30dffe Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/59d4a6deb0f4f0ec8a7d134f94a2b2fef14d444f..6e18cb4ad383a988ece5108d1a74c9da0746ce58/scripts/update.py Bug: None Tbr: abdolrashidi@google.com Change-Id: I5b5eb3e6501e2126e894b6ff1ed8cbd1855c80e0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4296679 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Alexey Knyazev a1f9b9aa 2023-02-20T00:00:00 Implement more texture border color adjustments D3D11: * Exposed EXT_texture_border_clamp extension string, to ensure that the relevant CTS tests are running. * Updated StateManager11::setSamplerState to adjust the border color based on the texture format. * Refactored ShaderConstants11::updateSamplerMetadata to correctly adjust the border color for integer formats. * Removed unused SamplerMetadata.internalFormatBits D3D9: * Updated Renderer9::setSamplerState to adjust the border color value based on the current texture format. * Added borderColorSrgb feature required for some drivers. GL: * Copy alpha value to green for A and LA legacy formats to workaround driver bugs when lumaWorkaround is not used. Tests: * Added ES 2.0 tests for texture formats that require border color adjustments. Fixed: angleproject:7969 Change-Id: I3d36cce43e76e6d5069a51865152c2250ecbb017 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4291000 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll 9ee816c9 2023-02-28T01:29:35 Manual roll vulkan-deps from d03d09324f14 to 3c1556cc7322 (1 revision) Manual roll requested by abdolrashidi@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/d03d09324f14..3c1556cc7322 Changed dependencies: * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/956114df28..c9947cc8d5 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 abdolrashidi@google.com,angle-team@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: abdolrashidi@google.com Change-Id: I612b60f217ef170365f9786e185e18294e293b8a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4296998 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Amirali Abdolrashidi 2c7447e2 2023-01-19T16:17:39 Always keep track of memory allocation counts * Memory allocation counts are now tracked at all times, similar to allocation sizes. * Changed the per-heap allocation trackers from vectors to arrays of atomic variables. * Added asserts to the getter functions related to memory allocation. * mMemoryAllocationMutex is now used for enabled debug layers only. * Added memory type index in allocation and deallocation debug logs. * Capitalized static functions regarding memory allocation in RendererVk.cpp. Bug: b/262029018 Bug: b/266466279 Change-Id: Idb740048f934f3d725240c78c978341697895f6c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4182550 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com>
angle-autoroll a841f24a 2023-02-27T21:05:40 Manual roll VK-GL-CTS from 16e24521578d to c0a0038a1bed (5 revisions) Manual roll requested by abdolrashidi@google.com https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/16e24521578d..c0a0038a1bed 2023-02-13 zzoon@igalia.com Add tests for sampling depth/stencil formats interacted with border color swizzle tests. 2023-02-13 cturner@igalia.com Add xfb tests covering different streams with same location 2023-02-13 amber@igalia.com Compare primitives_generated and transform_feedback(written) 2023-02-13 piotr.byszewski@mobica.com Expand cull distance test coverage 2023-02-13 anholt@google.com Log the image in GL texture border tests 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 abdolrashidi@google.com,angle-team@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: abdolrashidi@google.com Change-Id: I84d2b11ec96deaa3117116d655f6c82de4a096f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4295362 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Rafael Cintron 6f7fec7b 2023-02-24T18:17:26 Convert all raw pointers in Renderer11 to ComPtr In preparation for refactoring of device caps, found a couple of memory leaks in error conditions due to incorrect COM lifetime management. Rather than wrestle with manual AddRef/Release during the refactoring, decided to first convert all manual AddRef/Release to angle::ComPtr. Bug: angleproject:8041 Change-Id: I1211fcd0afd0c629793cebd3051b98fbece70a26 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4292695 Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll d2bd5ee3 2023-02-27T19:26:38 Manual roll VK-GL-CTS from a13cbc855993 to 16e24521578d (1 revision) Manual roll requested by abdolrashidi@google.com https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/a13cbc855993..16e24521578d 2023-02-13 piotr.byszewski@mobica.com Merge vk-gl-cts/vulkan-cts-1.3.5 into vk-gl-cts/main 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 abdolrashidi@google.com,angle-team@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: abdolrashidi@google.com Change-Id: Ib1ed7408187f315969f5d22cbb955161bbecf0cb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4295355 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov aa97369f 2023-02-23T18:40:16 Use C++20 for MSVC builds as well Build only ANGLE libraries on MSVC, as there are many failures in tests, which are beyond our scope to fix. Bug: chromium:1380553 Change-Id: I7142730bfa1fc847630ff8115709e435aecf487a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4286569 Reviewed-by: Geoff Lang <geofflang@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Igor Nazarov 1365f5b3 2022-09-09T17:19:26 Vulkan: Fix Swapchain Acquire Image Semaphore wait stage flags. There is a screen tearing on G996B with single "glClear(GL_COLOR_BUFFER_BIT)" no scissor in the frame. Fixed by defining "kSwapchainAcquireImageWaitStageFlags" and adding "VK_PIPELINE_STAGE_TRANSFER_BIT" stage flag. Also added "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT" stage, because first use of the Swapchain Image after Acquire may be in the "glBlitFramebuffer()" command. This fix may slightly affect performance. In such case, a better fix should be implemented (include only stages based on the actual first use). However, this may be not trivial. Additionally, "kSwapchainAcquireImageWaitStageFlags" is used as a source stage mask in the "ImageLayout::Present" pipeline barrier. This is needed in order to build a dependency chain from the Acquire Image Semaphore to the layout transition's first synchronization scope, so that layout transition happens after acquire semaphore is signaled. Reference: https://github.com/KhronosGroup/Vulkan-Docs/wiki/Synchronization-Examples#combined-graphicspresent-queue https://vulkan-tutorial.com/Drawing_a_triangle/Drawing/Rendering_and_presentation Alternative fix of both issues is to define: kSwapchainAcquireImageWaitStageFlags = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT This might potentially delay command buffer execution relative to the Swapchain Acquire Image Semaphore signal operations, but will relax the pipeline barrier. Bug: angleproject:8030 Test: angle_end2end_tests --gtest_also_run_disabled_tests --gtest_filter=EGLSurfaceTest.DISABLED_RandomClearTearing* Change-Id: I29f58862c4b369524b2555dd944e2fb67eebe956 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4271377 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
Kenneth Russell 8875ba4e 2023-02-24T22:40:22 Rename WebSwapCGLLayer to ANGLESwapCGLLayer outside WebKit. WebKit doesn't use gn or ninja, so these changes will not affect it. Verified locally that this silences the warning in the bug. Fixed: angleproject:7123 Change-Id: Iff28c0f5b9274543ee7724e023461d31c8ad4aa6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4292705 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll f524e4b8 2023-02-27T07:01:34 Roll Chromium from 37f4bbb7be8f to 59912d50f1af (435 revisions) https://chromium.googlesource.com/chromium/src.git/+log/37f4bbb7be8f..59912d50f1af 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,cnorthrop@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug 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/9801b54237..60a5c0d8b7 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/d1127a2c8d..bdd20ec72c * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/87d8fe050b..ff8e691cbc * testing: https://chromium.googlesource.com/chromium/src/testing/+log/d40f31ade6..900cd89794 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..8a26fb906e * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/eee53367c1..9144b67c7f * third_party/fuchsia-sdk/sdk: version:11.20230224.1.1..version:11.20230226.3.1 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/5290e7b1df..abe19ba5c7 No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: Id75573d4a5523db7f9ac7f3a947b619680be370a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4293029 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Cody Northrop ef6d1473 2023-02-24T08:27:33 Tests: Add Into the Dead 2 trace Test: angle_trace_tests --gtest_filter="*into_the_dead_2*" Bug: b/270605668 Change-Id: I80d1aa8058a8d970888725ca850ed934a100588b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4290021 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Alexey Knyazev 5bc6bf32 2023-02-20T00:00:00 Include DXT1 sRGB in RGBDXT1TexturesSampleZeroAlpha Bug: angleproject:3729 Change-Id: Id5404e4601a3165051ee4b249646b7ca000bedbe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4290988 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
angle-autoroll a4e23c66 2023-02-24T20:44:29 Manual roll Chromium from 779fe76a4b87 to 37f4bbb7be8f (299 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/chromium/src.git/+log/779fe76a4b87..37f4bbb7be8f 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,cnorthrop@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug 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/2a6d6c58ac..9801b54237 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/fa00882b59..d40f31ade6 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/3d210ba046..f8b0a646b3 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..9c6c41afcf * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/6a71052c7f..eee53367c1 * third_party/fuchsia-sdk/sdk: version:11.20230223.1.1..version:11.20230224.1.1 * third_party/r8: HGbnG0_a1HHQtwgKBlFRLuC0-AVyYhHpcTol560MvlUC..larGcS88hqCbkUMuwF9pf72G_5IkYPBu87ltJ5Pbgt8C * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/a3168f88b0..5290e7b1df * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/b7e9ee80bb..4ff9da4f7e No update to Clang. Bug: None Tbr: cnorthrop@google.com,ynovikov@google.com Change-Id: Ifbe3bb023941b0e4c95453760e6fbff1a4d437f9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4292116 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Mike Schuchardt 13f246de 2023-02-20T17:43:57 Tests: Add Cookie Run Oven Break trace Test: angle_trace_tests --gtest_filter=TraceTest.cookie_run_oven_break Bug: b/270534812 Change-Id: I39109fc119cc82914e563b06cce912409a5c0434 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4289587 Commit-Queue: Mike Schuchardt <mikes@lunarg.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Yuly Novikov 47c0659e 2023-02-24T18:53:48 Re-enable safe_libcxx on Linux Disabling it caused multiple failures on linux-tsan bot. Bug: chromium:1385662, angleproject:8040 Change-Id: I844a45f2f21b4c24be1ce03274cd6e2cfed79be0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4288759 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Hailin Zhang 8fef41a8 2023-02-23T18:44:02 vulkan: improve EtcToBc transcoding precision. Bug: b/262352590 Change-Id: I6b127acdec28053423423f64ebc6e8561614f0ab Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4290347 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Hailin Zhang <hailinzhang@google.com>
Cody Northrop 9f4ebedf 2023-02-22T14:51:35 Tests: Add TMNT: Shredder's Revenge trace Test: angle_trace_tests --gtest_filter="*tmnt_shredders_revenge*" Bug: b/270426257 Change-Id: I36598eafdc37c77418e052f1539901cd6bb6aae8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4284638 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop 2ec90ada 2023-02-23T21:33:40 TraceTests: Update screenshot name for keyframe Ensure we use the member variable screenshot instead of global when naming the screenshot. Test: into_the_dead_2 with keyframe 10 Bug: angleproject:8035 Bug: b/270426257 Bug: b/270605668 Change-Id: Ib5c5c1764005cd0b2fc4603ca11e10d19a50a152 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4288617 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
angle-autoroll e21c1efb 2023-02-24T10:01:33 Roll SwiftShader from 64eb04027b9f to dca80fc3a894 (2 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/64eb04027b9f..dca80fc3a894 2023-02-23 bclayton@google.com tests/regres: Bump golang.org/x/text from 0.3.7 to 0.3.8 2023-02-23 pkasting@chromium.org Yet more C++20 build fixes. 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,cnorthrop@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: cnorthrop@google.com Change-Id: Ia36820f099eb31234553cdb4427b16055cf05699 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4288621 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Brian Sheedy 9566011b 2023-02-23T15:01:59 Add support for permissive pixel comparison Adds support for running ANGLE pixel tests with a more permissive inexact matching algorithm. This is done by passing in --use-permissive-pixel-comparison=1 to the test runner. This is intended to reduce the amount of manual triage work required on CLs that are expected to have a larger amount of differences, such as SwiftShader rolls. On the bots, this will normally be disabled, but will be enabled if "Use-Permissive-Angle-Pixel-Comparison: True" is present as a CL footer. This footer is not yet included automatically anywhere, so there should be no functional change as a result of this CL yet. Bug: angleproject:7985 Change-Id: Ie815fac42edb2198dd4d115fc50650504df136c0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4288612 Auto-Submit: Brian Sheedy <bsheedy@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 0745e402 2023-02-24T07:01:20 Roll Chromium from 6aac6345f869 to 779fe76a4b87 (655 revisions) https://chromium.googlesource.com/chromium/src.git/+log/6aac6345f869..779fe76a4b87 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,cnorthrop@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug 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/153b10edb9..2a6d6c58ac * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/c9ed0b613f..d1127a2c8d * buildtools/linux64: git_revision:b25a2f8c2d33f02082f0f258350f5e22c0973108..git_revision:fe330c0ae1ec29db30b6f830e50771a335e071fb * buildtools/mac: git_revision:b25a2f8c2d33f02082f0f258350f5e22c0973108..git_revision:fe330c0ae1ec29db30b6f830e50771a335e071fb * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/09f68a400f..e136ec5032 * buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/56a849f05a..c5e861c7b4 * buildtools/win: git_revision:b25a2f8c2d33f02082f0f258350f5e22c0973108..git_revision:fe330c0ae1ec29db30b6f830e50771a335e071fb * testing: https://chromium.googlesource.com/chromium/src/testing/+log/fcbe55967d..fa00882b59 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..9c6c41afcf * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/d85c5bc6ff..6a71052c7f * third_party/fuchsia-sdk/sdk: version:11.20230222.4.1..version:11.20230223.1.1 * third_party/r8: If-y2Dxou76tPxzbjAxhESv2MK1f7UTlgmP5Zg1JfUQC..HGbnG0_a1HHQtwgKBlFRLuC0-AVyYhHpcTol560MvlUC * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/0ec9f12775..a3168f88b0 * tools/md_browser: https://chromium.googlesource.com/chromium/src/tools/md_browser/+log/3180843cd2..6cc8e58a83 * tools/memory: https://chromium.googlesource.com/chromium/src/tools/memory/+log/930bae8b25..b55593f4dc * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/0398cbf63b..b7e9ee80bb No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: Id2b140c2a32836676b8819439ce6271a9b1faee4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4288619 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Mark Lobodzinski f8e56b0c 2023-02-23T16:29:52 Tests: Add SLAM DUNK from TV Animation trace Test: angle_trace_tests --gtest_filter=TraceTest.slam_dunk_from_tv_animation bug: b/270534814 Change-Id: I2062819c1f64c114ada23723188d8f090f57ab46 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4288749 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop d9dbc20e 2023-02-23T17:10:06 TraceTests: Add a screenshot frame member variable Instead of modifying a global when detecting KeyFrames are in use by a trace, update a new value tracked per trace. Also consolidate the option handling for gRunToKeyFrame since its needs align with gMaxStepsPerformed. Test: Batching traces that include one with a keyframe Bug: angleproject:8035 Bug: b/270426257 Change-Id: I2ed4215d9f310dddb317debf09921aa45c6822bf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4288616 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Thiago Perrotta 8c96e9dc 2023-02-23T18:04:12 Update yapf style from "chromium" to "yapf" yapf v0.30.0 renamed "chromium" style to "yapf". Bug: chromium:1306598 Change-Id: I107c16b965beaf5269f64149da4a097267867c2a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4289948 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Thiago Perrotta <tperrotta@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Hailin Zhang 7189e4cf 2023-02-23T11:03:40 vulkan: fix depth buffer renderpass loadOp issue. when change the depth compare function, Renderpass need to change the mAcess flag accordingly. Bug: b/269929460 Change-Id: I83826c1b07c6d22600d6cd039e7d8bfd0b5b39c3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4284624 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Hailin Zhang <hailinzhang@google.com>
Daniel Cheng 05bb784a 2023-02-17T10:46:24 Define enable_safe_libcxx in build_overrides/build.gni. enable_safe_libcxx will be overridable by projects that embed Chrome's //build using the build_overrides mechanism. All downstream projects will need to define this new variable so Chrome can stop conditionally defining enable_safe_libcxx upstream. ANGLE, unlike other projects, defaults to setting this to false. This is because ANGLE is used in extremely performance sensitive scenarios such as the system graphics driver on Android. When used in this way, ANGLE makes no security guarantees. Bug: chromium:1385662 Change-Id: Ieaa1eda9ca747f91ac54df3bf761e7169b807b10 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4264463 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cody Northrop b0739436 2023-02-13T14:28:17 Traces: Add key frame support Allow specifying a key frame in the trace JSON, i.e: "KeyFrames": [ 20 ], This allows our infra to use a frame other than 1 when taking screenshots for quality comparison. Adds new flag `--run-to-key-frame`, which will stop the trace once key frame has been reached. If no key frame in JSON, frame 1 will be used. Note the name in JSON is plural, but we only support one key frame for now. Multiple key frame support can come in the future. This CL also updates the code to allow ending traces early with `--max-steps-performed` which has been broken since http://crrev/c/4008998 It also removes `--one-frame-only` which is superseded by `--run-to-key-frame`, and can be replicated using `--max-steps-performed 1`. Test: angle_trace_tests --gtest_filter="*tmnt_shredders_revenge*" Bug: angleproject:8035 Bug: b/270426257 Change-Id: Ib02ef60d887ae5efb0288f5a9b8c2914dafc6efc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4284637 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Alexey Knyazev b42c2332 2023-02-20T00:00:00 Refine sRGB mipmap generation Compute average of the decoded floating-point values instead of the truncated 8-bit values. Fixed: angleproject:8034 Change-Id: I1ad9c98ff6bbebe63912fb3339faa471c30f43be Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4279710 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Amirali Abdolrashidi 3a7904e1 2023-01-25T23:56:56 Vulkan: Use VMA suballocation for images There is a maximum limit for device memory object allocation. On some platforms, there can be an error regarding too many object allocations when 4096 device memory handles have been allocated. Suballocation can help mitigate this issue. In this CL, some images will be allocated using VMA API calls, which use suballocation. * Added a new feature (useVmaForImageSuballocation). * Added VMA allocation for ImageHelper, which is used in initMemory(). * Suballocation is used for VMA image allocation. * If enabled, mVmaAllocation will be initialized in the ImageHelper object (instead of mDeviceMemory). * It is currently used for all platforms. * Minor change to the name of an arg in CreateBuffer() declaration. * Added test to make sure we can allocate at least 4096 images on supported platforms (8000 in the test). * Skipped the test "NonZeroBaseEmulatedClear" when run on Linux/Intel if this feature is enabled (due to output color mismatch). * Skipped several tests for capture/replay on Windows. Bug: b/218891184 Change-Id: Ibf80c9c8c485b301da7d23b5ba4bcbb1a8e3194f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4191202 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Amirali Abdolrashidi 48588a89 2023-02-17T11:03:56 Update the common cube map texture in MipmapTest In MipmapTest, mTextureCube is defined so that one side is set to blue. However, the other sides are not explicitly defined. This seems to be causing capture/replay errors due to context mismatch after updating the image memory allocation method to use VMA. (CL: https://crrev.com/c/4191202) * Added definition for the other sides of mTextureCube, now set to white. Bug: b/267811497 Change-Id: Icaca67ba6032e5156c9f4bbf3913459d863c2f1d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4264172 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Yuly Novikov 2678b830 2023-02-23T18:19:30 Reenable GLES 1.0 conformance tests on Win/Intel Hopefully blue screen and timeouts are fixed by the new driver. Bug: angleproject:7750 Change-Id: Ic84f3080aeac689fa04f4fc8fc2f7f9c582abc10 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4286568 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov cba2a0d5 2023-02-16T19:48:30 Keep MemoryBarrier macro defined Macro was originally undefined in crrev.com/c/361291. Undefining it breaks UWP build with newer compilers. Keeping the macro defined doesn't affect libGLESv2 exported symbols, so it looks like there is no need to undefine it. Bug: chromium:1380553 Change-Id: I6476aa015949e5f2639160fac80db39da710bfb7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4262071 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Yuly Novikov 7934094a 2023-02-22T18:07:21 Update extension data Windows Intel testing switched from HD630 to UHD630 GPU. Pixel 6 testing is no longer experimental. Bug: angleproject:6819, chromium:1349828 Change-Id: I3b156d83eba687e4834ec59f5ff41ae21664cc0c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4283257 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Jonah Ryan-Davis 8105a801 2023-02-23T10:00:17 Change enum allocation for EGL_PLATFORM_ANGLE_DISPLAY_KEY_ANGLE Changes EGL_PLATFORM_ANGLE_DISPLAY_KEY_ANGLE from 0x34DA to 0x34DC Bug: chromium:1251724 Change-Id: I609d37abd622bf0c3bbab253d4d0dea31edd1774 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4287264 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Max Ihlenfeldt 452a7179 2023-02-21T17:35:55 Remove obsolete additional_readme_paths.json entries `src/third_party/compiler` was removed in crrev.com/c/2940902. I don't know when `third_party/vulkan_memory_allocator` was removed, but it also doesn't exist anymore. Bug: None Change-Id: Ib2216c2fd111de4545f600dc3ba82bbab24f169d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4275341 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bruce Dawson a3af3645 2023-02-22T14:18:24 Copy d3dcompiler_47.dll on ARM64 Windows builds Previously d3dcompiler_47.dll was not copied because this DLL is an inbox component on ARM64 Windows. However the inbox is not necessarily updated frequently enough, so we should copy (and ship) this DLL on ARM64 Windows as well as on other Windows architectures. Bug: chromium:1416385, chromium:1406077 Change-Id: I463f215012c2b48f11c8f40e104c22622afa6b2a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4285717 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 389b86e7 2023-02-23T08:02:39 Roll Chromium from d9b79c6b8b96 to 6aac6345f869 (614 revisions) https://chromium.googlesource.com/chromium/src.git/+log/d9b79c6b8b96..6aac6345f869 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,cnorthrop@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug 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/74aa83b9dc..153b10edb9 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/d110f6238f..c9ed0b613f * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/abad4bb576..09f68a400f * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/5559ffe8ca..87d8fe050b * buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/aecf8d01b9..56a849f05a * testing: https://chromium.googlesource.com/chromium/src/testing/+log/e66313827f..fcbe55967d * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/c1aaebb624..c2dbcdae89 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..c824231b87 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/4756d7c420..d85c5bc6ff * third_party/fuchsia-sdk/sdk: version:11.20230221.3.1..version:11.20230222.4.1 * third_party/r8: PwglNZFRNPkBBXdnY9NfrZFk2ULWDTRxhV9rl2kvkpUC..If-y2Dxou76tPxzbjAxhESv2MK1f7UTlgmP5Zg1JfUQC * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/062a1fd8bb..0ec9f12775 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/9d69759784..0398cbf63b * tools/skia_goldctl/linux: _XbDojEcOW4z32qvbefnU-HJNYysIuQCtw1mgYLOFe4C..-G9gUusEGDPsbf_GULdyJo9DYyeNBuqD8gHfdxCvIbYC * tools/skia_goldctl/mac_amd64: mwr8fBwaGCr9Uo9A1MECZEw9XH-Yxt97Kb9Sv8XKiXoC..0GVvuvDBNt6KJ7UzxBRUW5ShTWCliifyzaCkudNzmrkC * tools/skia_goldctl/mac_arm64: QGT2sXxLCZJMcVCCabyLxy3RbSEoew6hpM2O5y-fohQC..8vKG1ZGA0f7asv5AHh_7yBxVD2h-I-yR2oY4TOjwo6kC * tools/skia_goldctl/win: eheTWvIx3FaZhM5bpL-pDPzul7o93XKKK1bsDKgRfEwC..BZ0EL-KSkwCzJciJf9MbwmZAJPRhlKOp0LEYiTV6lWIC No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: Id30d35fb47320659a907b54e73a75dfb157afe07 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4285565 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Kimmo Kinnunen 177936ac 2023-02-18T14:51:29 Metal: disable 32-bit float filtering on iOS Update Metal format tables according to the Metal Format Tables. Disables OES_texture_float_linear on current iOS hardware, since R*32Float filtering is not available. Fixed: angleproject:8028 Change-Id: I29603d308f1992feb62ee997b0f69f8e6d0d385e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4266915 Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
angle-autoroll 75901296 2023-02-22T07:00:26 Roll Chromium from 5d2ee2959f28 to d9b79c6b8b96 (576 revisions) https://chromium.googlesource.com/chromium/src.git/+log/5d2ee2959f28..d9b79c6b8b96 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,cnorthrop@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug 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/6be968106c..74aa83b9dc * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/86d8d59707..d110f6238f * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/43c39fecf3..abad4bb576 * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/f7460fc60a..5559ffe8ca * buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/c4ed9cba55..aecf8d01b9 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/9c53e24827..e66313827f * third_party/android_build_tools/aapt2: cbNG7g8Sinh-lsT8hWsU-RyXqLT_uh4jIb1fjCdhrzIC..36NqCian2RIwuM6SFfizdUgKoXyZhy3q6pFfsws0szYC * third_party/android_build_tools/lint: 6R1spS-Itpxh7oLzwUptWcZyFwQeEH6aFwtkuTo8ROoC..MSpv-kFDDSPO0SY0dLdHegUJcJT1Yy8cL9r3vlAZ9vkC * third_party/android_build_tools/manifest_merger: EnlN2b-khJhe8B9hSfh7UxvglJXEwWDKaMm4ixhLYTMC..EbRaK62t9grqlZqL-JTd_zwM4t1u9fm1x4c2rLE0cqQC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..c6149c709a * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/30136f0cb7..4756d7c420 * third_party/fuchsia-sdk/sdk: version:11.20230220.3.1..version:11.20230221.3.1 * third_party/r8: zPOmDMk4QXwcUPUy6oi9KUfzwEIlk0aIB0fl0KQWCGAC..PwglNZFRNPkBBXdnY9NfrZFk2ULWDTRxhV9rl2kvkpUC * third_party/r8/d8: qGtBu6TtxyR5XNy4cmsslb7c946YtkZF5_QCjVP-wc8C..PwglNZFRNPkBBXdnY9NfrZFk2ULWDTRxhV9rl2kvkpUC * third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/2d44c51ada..ab0d470309 * tools/luci-go: git_revision:c543f47ae455dbfe7e8fed5baa61a14d9068e98c..git_revision:8a8b4f2ea65c7ff5fde8a0c522008aed78d42d9d * tools/luci-go: git_revision:c543f47ae455dbfe7e8fed5baa61a14d9068e98c..git_revision:8a8b4f2ea65c7ff5fde8a0c522008aed78d42d9d * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/9ca91af2d1..9d69759784 * tools/skia_goldctl/linux: qmQkeQixRLhNh8h9NFtyogaGsZT2_Hq8ecJfh_-S8KgC.._XbDojEcOW4z32qvbefnU-HJNYysIuQCtw1mgYLOFe4C * tools/skia_goldctl/mac_amd64: yaL4-zE_LjEmhx48AHqVNH39H5j_GsYsUjaF6VR0dG0C..mwr8fBwaGCr9Uo9A1MECZEw9XH-Yxt97Kb9Sv8XKiXoC * tools/skia_goldctl/mac_arm64: wl2cVS48xW9pWCxQ7Dgd7lBe94FSbX4L2Xz9s3rRxTIC..QGT2sXxLCZJMcVCCabyLxy3RbSEoew6hpM2O5y-fohQC * tools/skia_goldctl/win: ehooWmfDnjMX96wtA5yuHh4YuXsV7mq9bj61rFd_xogC..eheTWvIx3FaZhM5bpL-pDPzul7o93XKKK1bsDKgRfEwC No update to Clang. Bug: None Tbr: cnorthrop@google.com Change-Id: I17c3096f1bf37cc54d73f679ff0534a0c7d0cb58 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4279288 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 31684d8c 2023-02-18T11:11:57 Vulkan: Lazily create swapchain image views In compliance with VK_SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_EXT. Bug: angleproject:7878 Big: b/269606195 Change-Id: I917c6888b325f768dbc6384828a6e462792d3c0b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4267510 Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Chris Forbes <chrisforbes@google.com>
Shahbaz Youssefi 7d8e2778 2023-02-13T10:04:08 Vulkan: Remove usage of VK_EXT_external_memory_host This extension is no longer used by ANGLE Bug: angleproject:7959 Change-Id: If6c0e89e63b8b06fd03f7b6a0b083a18bada34fe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4244599 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Peng Huang 1633a1bb 2023-02-17T15:16:06 Fix EGLImage importing problem Chrome DrDC uses EGLImage to share textures between contexts. Sometimes, chrome will create texture with a GLES 3.x context, and then create EGLImage from it, and then import EGLImage to a GLES 2.0 (WebGL 1.0) context. In this case, ANGLE may report errors if the original texture is created with formats which are not supported with GLES 2.0, but actually the texture can be sampled and rendered by ANGLE. Fix the problem by adding mIsTexturable & mIsRenderable in Image, and calculating them against the original context which owns the texture. Bug: chromium:1417294 Change-Id: I4c304422f0d0fc01a48c942d05758f8c2ce438e4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4265252 Commit-Queue: Peng Huang <penghuang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Igor Nazarov 9a4a9f3f 2023-02-16T17:33:52 Revert "Fix dEQP-EGL.functional.mutable_render_buffer#basic" This PARTIALLY reverts commit: 629da7fc9cd4886dd87f07a069c259551e892936. Fix dEQP-EGL.functional.mutable_render_buffer#basic From the reverted CL: This CL also addresses similar issue in some other rx::vk::ImageLayout items in kImageMemoryBarrierData. These were unnecessary changes that may harm performance: - adding BOTTOM_OF_PIPE for source stage when transition from LAYOUT_UNDEFINED may add unnecessary GPU bubble. - Transition to LAYOUT_PRESENT_SRC_KHR does not require barrier. All writes will be automatically made visible for Presentation Engine. Execution dependency satisfied by VkSemaphore. - Transition from LAYOUT_PRESENT_SRC_KHR is RAR/WAR. Execution dependency satisfied by VkSemaphore. - Some layouts may not be a destination so BOTTOM_OF_PIPE is OK. Bug: b/264420030 Change-Id: I8b57b1636e1f5cf5b647003adf1502bd3286c5a3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4262067 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
Alexey Knyazev dd1cf777 2023-02-16T00:00:00 Add EXT_texture_mirror_clamp_to_edge entry points Bug: angleproject:7968 Change-Id: I04b0c5d7b5148fbaca24d77a2c8688ea7a96cb64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4262073 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Auto-Submit: Alexey Knyazev <lexa.knyazev@gmail.com>
Shahbaz Youssefi facd07ec 2023-02-14T14:11:00 Vulkan: Prune all statements without side effect Bug: chromium:1417461 Bug: angleproject:6061 Change-Id: I6e2b74589021ee60c99448e43ee3eb7f06796ede Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4250278 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Kimmo Kinnunen b7505d98 2023-02-21T12:04:59 Metal: Fix crashes in EXT_b_f_e using temporaries Implementation of EXT_blend_func_extended made all uses of gl_FragData, with or without the extension, crash. Function-local constexpr char arrays are temporaries. Their address cannot be used to construct ImmutableStrings. Use static arrays instead. Fixed: angleproject:8031 Change-Id: I91d27f6204374613e19d45f6e04e425985d519f2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4272832 Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Alexey Knyazev dbd5d6df 2023-02-17T00:00:00 Vulkan: Fix border color adjustment for emulated formats Emulated opaque ETC compressed formats are decoded to RGBA8 so the border color must have its alpha as one. Generalized AdjustBorderColor to enforce opaque alpha for opaque formats and to support both ways, in which ANGLE could emulate LUMA formats. Moved AdjustBorderColor to renderer_utils so it could be used with other backends. Bug: angleproject:5978 Change-Id: I9ec44444fd373b1ca6116ebc4447063a014025ce Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4265514 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jeff Vigil 278b5d02 2023-02-17T10:39:40 EGL: Enable wayland types with autogen Types with "wl_" indicate wayland types, use as is. Bug: angleproject:8027 Change-Id: If3c5d062272038c3a8773796a233af2305f3ed98 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4265015 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 7586f8c8 2023-02-20T22:10:55 Translator: Validate correct op usage in nodes Bug: angleproject:2733 Change-Id: Id555398cd6633ce38e1d4d900c7b739fd9990ad1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4274045 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Igor Nazarov 057a92bf 2023-02-20T14:45:36 Vulkan: Fix invalid assert in ContextVk::onSurfaceUnMakeCurrent Old assert checked "mHasWaitSemaphoresPendingSubmission". However this will be true even after "mWaitSemaphores" are flushed to the Renderer. Correct assert is to check that everything is flushed, but may be pending submission. Bug: angleproject:8017 Change-Id: I831ece236fb0cecb8520315ebaa5207f90d3dfc6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4270931 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll c23dbe33 2023-02-21T07:13:11 Roll Chromium from 36ad54ddae32 to 5d2ee2959f28 (282 revisions) https://chromium.googlesource.com/chromium/src.git/+log/36ad54ddae32..5d2ee2959f28 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,cnorthrop@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * testing: https://chromium.googlesource.com/chromium/src/testing/+log/9686404aed..9c53e24827 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..a22c2597b5 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/62c7a8bad0..30136f0cb7 * third_party/fuchsia-sdk/sdk: version:11.20230220.0.1..version:11.20230220.3.1 * third_party/r8: EzD88AUfNs2DWG8ytv86PmRrgkNmeLLaiQOrNNLUWwAC..zPOmDMk4QXwcUPUy6oi9KUfzwEIlk0aIB0fl0KQWCGAC * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/47bfa0da45..59d4a6deb0 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/521d0fdf81..9ca91af2d1 No update to Clang. Bug: angleproject:8003 Tbr: cnorthrop@google.com Change-Id: I58592e140bfecd32e3aafa4c9e2a1ea06a96d60e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4273595 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll f76ecaee 2023-02-20T07:01:09 Roll Chromium from 3919c700dd2c to 36ad54ddae32 (501 revisions) https://chromium.googlesource.com/chromium/src.git/+log/3919c700dd2c..36ad54ddae32 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,ianelliott@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug 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/1103ef535c..6be968106c * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/2ff42d2008..86d8d59707 * buildtools/linux64: git_revision:edf6ef4b06b42c58292faea78498aff76bdf68ed..git_revision:b25a2f8c2d33f02082f0f258350f5e22c0973108 * buildtools/mac: git_revision:edf6ef4b06b42c58292faea78498aff76bdf68ed..git_revision:b25a2f8c2d33f02082f0f258350f5e22c0973108 * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/6f4617b9ef..43c39fecf3 * buildtools/win: git_revision:edf6ef4b06b42c58292faea78498aff76bdf68ed..git_revision:b25a2f8c2d33f02082f0f258350f5e22c0973108 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/166db27fd0..9686404aed * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..6234cc4e01 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/3879bd830c..62c7a8bad0 * third_party/fuchsia-sdk/sdk: version:11.20230217.0.1..version:11.20230220.0.1 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/effd9257d4..47bfa0da45 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/e10cbe0a12..062a1fd8bb * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/104db43f88..521d0fdf81 Clang version changed llvmorg-17-init-2082-g6d4a674a:llvmorg-17-init-2387-g68e81d7e Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/effd9257d456f2d42e9e22fa4f37a24d8cf0b5b5..47bfa0da4545630f0c74198c2f1b7122d4963026/scripts/update.py Bug: None Tbr: ianelliott@google.com Change-Id: I0dafb62521b82437b64951a884eb750cff7d8c9f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4269335 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 05e62f39 2023-02-16T23:16:46 Vulkan: Don't close render pass if rebind to same fbo In the Vulkan backend, the render pass can occasionally (and transiently) be in a state of "open but inactive". This is when the render pass is closed, but has the potential for future modifications (for example to add a resolve attachment). Under many circumstances, it is expected that an open render pass cannot be in such a state. This assumption can be broken in this scenario: - Open render pass, draw, etc - Change framebuffer binding - Change framebuffer binding back to original - Masked Clear When ContextVk is synced before clear, it sees that the framebuffer binding is changed (though it hasn't really), and it closes the render passes and sets the render pass dirty bit. If a draw were to follow, a new render pass would have started (unnecessarily). However, in the case of a masked clear, UtilsVk notices that the render pass is started, assumes it must be active, and continues recording to it. While the operation itself succeeds, the assumption that the render pass is active is false (and fails assertion). This change makes sure that framebuffer binding change is no-oped if the framebuffer is the same one that has opened the current render pass. If any application does unnecessary binding changes and back, it will be optimized by this change as well. Bug: chromium:1411210 Change-Id: I37a3a9f2eaa1a81a1b3393840b9458ec71a87377 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4261215 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao e1dfc00a 2023-02-15T16:21:37 Vulkan: Make waitForPendingPresent drain work in the calling thread Since we are waiting, there is no point to have work done in CommandProcessor's worker thread. It can just wait and drain the task in the calling thread. This is consistent with waitForResourceUseToBeSubmitted. This allows us to remove mutex and condition variable from SwapchainStatus. Bug: b/269524271 Change-Id: I9d7e17c77c879b6957fc3b74aab02f7f5c9db052 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4257252 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Ian Elliott <ianelliott@google.com>
Charlie Lao 79bfee1c 2023-02-15T15:33:56 Vulkan: Clean up CommandProcessor::queuePresent Right now queuePresent API returns VkResult in two places, via return value and SwapchainStatus structure. This CL makes it only return via SwapchainStatus::lastPresentResult so that two code path are the same. Bug: b/269524271 Change-Id: I7ab3c2bee08961a10718a2e5daa1c7f03e97e85d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4257927 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com>
Charlie Lao c402ea1c 2023-02-15T12:01:38 Vulkan: Rename hasUnfinishedUse to hasResourceUseFinished Most usage of hasUnfinishedUse is for !hasUnfinishedUse, and there was feedback that negative API is not preferred. This CL changes it to positive API name. Similarly renamed hasUnsubmittedUse to hasResourceUseSubmitted. Bug: b/267348918 Change-Id: Idb10b0f998ec50116ffb6aada19a98a516e87824 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4257105 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 5dba27e0 2023-02-15T10:24:38 Vulkan: CommandProcessor API name clean up This CL is mechanical change only and limited to CommandProcessor class. This CL renames submitCommands to enqueueSubmitCommands, queueSubmitOneOff to enqueueSubmitOneOffCommand, queuePresent to enqueuePresent, flushWaitSemaphores to enqueueFlushWaitSemaphores, flushOutsideRPCommands to enqueueFlushOutsideRPCommands, flushRenderPassCommands to enqueueFlushRenderPassCommands. This CL also renames CommandProcessor::mLastSubmittedSerial to mLastEnqueuedSerials, and getLastSubmittedSerial to getLastEnqueuedSerial, hasUnsubmittedUse to hasResourceUseEnqueued (opposite meaning). Bug: b/267348918 Change-Id: I611889815f5824837dc6e0f547e3cddc595d447b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4255809 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Solti b4116fea 2023-02-17T16:14:27 Disable supportsSwapchainMaintenance1 feature on Android Temporarily disable upportsSwapchainMaintenance1 feature on Android devices to unblock the ANGLE-To-Android roller, while the auto-roller failure investigation is taking place. Bug: b/269606195 Change-Id: I8a122b04996c9f0f02cbaaedcba5c6fb0615e5e3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4264812 Commit-Queue: Solti Ho <solti@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Charlie Lao 3307e8d2 2023-02-16T10:26:20 Vulkan: Add ostream operator for ResourceUse/QueueSerial This is some debug logging code I have been using in the past. Want to land it for convenience. Bug: None Change-Id: Ife044dd7dc733d3d38283949bdfc11b203cbe429 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4177488 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 75153e10 2023-02-17T17:55:41 Manual roll Chromium from ab83a5e1b973 to 3919c700dd2c (169 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/chromium/src.git/+log/ab83a5e1b973..3919c700dd2c 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,ianelliott@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * testing: https://chromium.googlesource.com/chromium/src/testing/+log/89ae2c4b1c..166db27fd0 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..44b7bc5487 * third_party/fuchsia-sdk/sdk: version:11.20230216.2.1..version:11.20230217.0.1 * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/45851774ad..57396ed0a2 * third_party/r8: CNzcoXA0246FgCmus3Uk0w-NXoGjqjHku8jocP5AcuUC..EzD88AUfNs2DWG8ytv86PmRrgkNmeLLaiQOrNNLUWwAC * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/a16f83a4ff..e10cbe0a12 No update to Clang. Bug: angleproject:8026 Tbr: ianelliott@google.com,ynovikov@google.com Change-Id: I4680eb0d9b0f92836be7dec2892077983b47f6ab Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4264577 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 19d1a0a4 2023-02-17T07:01:02 Roll Chromium from 63251d7a0997 to ab83a5e1b973 (573 revisions) Update flatbuffers BUILD.gn per https://chromium-review.googlesource.com/c/chromium/src/+/4258966 https://chromium.googlesource.com/chromium/src.git/+log/63251d7a0997..ab83a5e1b973 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,ianelliott@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug 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/606ec055d2..1103ef535c * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/1bb36c7a92..2ff42d2008 * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/3e929b8e59..6f4617b9ef * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/b77ac02dd5..f7460fc60a * buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/a154c73c85..c4ed9cba55 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f4ef1e4cea..89ae2c4b1c * third_party/android_build_tools/lint: HvuZ-UNmu4oxZAJFSD_BiPEdibZvFZBRqB_ShtWRYr8C..6R1spS-Itpxh7oLzwUptWcZyFwQeEH6aFwtkuTo8ROoC * third_party/android_build_tools/manifest_merger: 2JpGK05syKIkt6K-gSTBDV90H50KLdXLP_vyVhXRWqcC..EnlN2b-khJhe8B9hSfh7UxvglJXEwWDKaMm4ixhLYTMC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..44b7bc5487 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/6b98cdcbc1..3879bd830c * third_party/flatbuffers/src: https://chromium.googlesource.com/external/github.com/google/flatbuffers.git/+log/b47ba1d5ff..a56f9ec50e * third_party/fuchsia-sdk/sdk: version:11.20230215.0.1..version:11.20230216.2.1 * third_party/r8: _epIZkuhmcrUw9c591kUQWELdMlpKy_Uq0KVXhpeBl8C..CNzcoXA0246FgCmus3Uk0w-NXoGjqjHku8jocP5AcuUC * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/b855484bb7..effd9257d4 * tools/luci-go: git_revision:d120042f61f626b913a89d314cf585d54495bddc..git_revision:c543f47ae455dbfe7e8fed5baa61a14d9068e98c * tools/luci-go: git_revision:d120042f61f626b913a89d314cf585d54495bddc..git_revision:c543f47ae455dbfe7e8fed5baa61a14d9068e98c * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/132569747b..a16f83a4ff * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/f15b3214d5..104db43f88 * tools/skia_goldctl/linux: 0sWTRxVF-JnbihtHIuwUrWkXaZfHnlGbgbq_iuNBbbkC..qmQkeQixRLhNh8h9NFtyogaGsZT2_Hq8ecJfh_-S8KgC * tools/skia_goldctl/mac_amd64: UORVay0POLHppb8dNBQEBrEfYacH2edRleKTs5BF8QMC..yaL4-zE_LjEmhx48AHqVNH39H5j_GsYsUjaF6VR0dG0C * tools/skia_goldctl/mac_arm64: oCnjNSVWVT02JMCAWdBovX83D7IHEFNdxpkkYUKtmtQC..wl2cVS48xW9pWCxQ7Dgd7lBe94FSbX4L2Xz9s3rRxTIC * tools/skia_goldctl/win: 4uAK564j5zJPfrjm3Ebtql0dFZWxzdr7mGbqxakRvb0C..ehooWmfDnjMX96wtA5yuHh4YuXsV7mq9bj61rFd_xogC No update to Clang. Bug: chromium:1417182, chromium:1401327 Change-Id: I775a49fbb98a6436f39cd5f90bc71a65b67bf2fe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4263987 Reviewed-by: Solti Ho <solti@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Cody Northrop 1148a662 2023-02-15T08:25:51 Update GL_ARM_shader_framebuffer_fetch token support These were missed during initial implementation because the target app doesn't use them, and there are no tests for vendor extensions. The implementation is basically a noop, but allows setting and querying state, unblocking apps. Also add a test that has basic usage. Test: FramebufferFetchES31.BasicTokenUsage_ARM Bug: b/269233744 Bug: angleproject:8025 Change-Id: Ic107150d4afd9c4c4984c58a1dafb1c18e608997 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4255965 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Igor Nazarov fcba0d43 2023-01-17T19:21:31 Fix "RefCountObjectReleaser" move-assignment operator. Current operator properly assigns only to an empty object. No actual problem in the current code. May be problems in a new, especially in a debug code like this: releaseImage = {}; The above line will not release resources as expected, and may waste a lot of time during debugging process. Bug: None Change-Id: I0fe064b68ade9211fdef5790ed3c41b0101cfa93 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4262069 Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov 8cac53cd 2023-01-17T19:22:57 Vulkan: Fix incorrect "SharedPresent" barrier. Previous fix swapped top/bottom barriers: 629da7fc9cd4886dd87f07a069c259551e892936 Fix dEQP-EGL.functional.mutable_render_buffer#basic Above fix is only partial, because it only includes execution dependency without memory barriers (top/bottom stages has no memory access). Fixed by forcing all possible stages for "SharedPresent" images. Better solution requires creating specific versions of "ImageLayout::SharedPresent". Added new test that skips "glFlush()" before "glReadPixels()". Performing flush executes present and may "fix" the barrier problem. New test fails on "Samsung Galaxy S22+ S906B" Bug: b/264420030 Test: angle_end2end_tests --gtest_filter="EGLSingleBufferTest.SharedPresentBarrier*" Change-Id: Icbb50900d99e42d2e9482cd6109981bbc460348a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4262068 Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov a6dba4b4 2023-01-17T19:24:18 Vulkan: Minor fix in "WindowSurfaceVk::hasStagedUpdates()". This CL adds check to prevent checking buffer that is not technically acquired. Also if in the future this function will be called for double buffered surfaces it will not check a previous buffer. Bug: b/237449314 Change-Id: I79f1a2c4cd05a5424e963503891449f310177e93 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4262070 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 9d84ad7d 2023-02-14T10:47:54 Translator: Fix sampler-in-struct when struct is unused Standalone symbols as statements are also pruned. For example in the below: ``` x; g(); ``` The line that only contains `x;` is pruned. In particular, this was causing a bug with sampler-in-struct processing where the code ASSERTs that if an instance of the struct is visited during traversal, that it's already processed as part of an index chain (like s.member), but in the above situation that is not true. Bug: chromium:1416152 Change-Id: I49e9a5826fc4d8c1fef1fa6f1d38c65f33f8acfd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4247584 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Mark Lobodzinski 6f092c31 2023-02-16T08:45:18 Tests: Add star trek fleet command trace Test: angle_trace_tests --gtest_filter=TraceTest.star_trek_fleet_command bug: b/269577054 Change-Id: I2e7ae40d47b89b854a3ecbb87aba7fe8fcfdf8ce Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4261952 Commit-Queue: Mark Łobodziński <mark@lunarg.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Zan Dobersek 8d23f34e 2023-01-18T16:20:05 Reland: DisplayEGL should support targeting specific EGL platforms This is a reland of 01c641d58c7b4e4809163e48f570145af89c4acc Updated changes: The value is used only if non-zero and marked as one of the supported platforms. For the moment the only platform listed as supported is EGL_PLATFORM_SURFACELESS_MESA since it's the only relevant platform value that the EGL_ANGLE_platform_angle extension is listing as acceptable value for the EGL_PLATFORM_ANGLE_NATIVE_PLATFORM_TYPE_ANGLE attribute. When validated, and with relevant EGL extensions listed in the client EGL extensions list, a display object for the desired EGL platform is retrieved through the eglGetPlatformDisplayEXT entrypoint. Original change's description: > DisplayEGL should support targeting specific EGL platforms > > DisplayEGL should use the EGL_PLATFORM_ANGLE_NATIVE_PLATFORM_TYPE_ANGLE > value, if provided, to target specific platforms when constructing the > native EGL display. > > The value is retrieved from the display attributes map and propagated > to FunctionsEGL::initialize(). If non-zero, and if the > eglGetPlatformDisplayEXT entrypoint is successfully loaded, then a > display object for the desired EGL platform is retrieved. > > Bug: angleproject:7942 > Change-Id: I3d8dd70c4c5c80259ae647dce039cfe741b0cf7d > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4152531 > Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Bug: angleproject:7942 Change-Id: I75212b48e0e0edceef92e38bf68791017fb30a56 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4178310 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Brian Sheedy 81c7a7d9 2023-02-15T11:33:05 Use per-channel fuzzy threshold Switches the fuzzy threshold used in Gold-backed pixel tests to be per-channel instead of the sum of all channels. This means that a difference of [1, 1, 1, 0] between two pixels will now pass, whereas before that would have required a threshold of 3. This is intended to only ever auto-approve changes that can be attributed to rounding errors. Bug: angleproject:7985 Change-Id: Id057534c3e92ee9a4fbd1545fd1a16b28fea61b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4256778 Auto-Submit: Brian Sheedy <bsheedy@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 27d412fb 2023-02-16T11:41:46 Presubmit: relax line length rules for quotes ... and : after Roll, Reland etc Bug: angleproject:4683 Change-Id: Ibe1098402a2fd67b929a71fa74c5a1747a90fc3d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4261310 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Alexey Knyazev 8c2fcc70 2023-02-02T00:00:00 Metal: Implement EXT_blend_func_extended Fixed: angleproject:8015 Change-Id: Ic92a8823869bf097349aee6241f6cfb86942c945 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4242128 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Kyle Piddington <kpiddington@apple.com>
angle-autoroll 5db4f3e9 2023-02-16T10:01:28 Roll SwiftShader from a9f5c19e28bd to 64eb04027b9f (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/a9f5c19e28bd.. 64eb04027b9f 2023-02-15 pkasting@chromium.org More C++20 build fixes. 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,ianelliott@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: ianelliott@google.com Change-Id: I545811bfe09bd1c311fc10d7352b24509ee077b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4257772 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 665a5cea 2023-02-16T10:01:38 Roll vulkan-deps from 25333b9d7bff to d03d09324f14 (11 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/25333b9d7bff..d03 d09324f14 Changed dependencies: * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/95f93810bb..956114df28 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/e1940bd368..27c28d4b40 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/a774921032..5d2b7d957e 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,ianelliott@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: ianelliott@google.com Change-Id: I1f218e6eebcb1353fe24b64ea0a96e09e126b712 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4260025 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Igor Nazarov ceb49b1c 2023-01-17T19:21:43 Vulkan: Fix crashes when Surface is not current. It is possible to destroy Surface while some resources are still in use (by CPU/GPU): 1. Make Surface current. 2. Draw something. 3. Make other Surface current (same Context). 4. (optional - if test Surface is Window Surface) Draw something. 5. Delete Surface. 6. UnMake the Context from current. 7. Different crashes possible depending on Surface type and what is done in step 2. Bug: angleproject:8017 Test: angle_end2end_tests --gtest_filter="EGLSurfaceTest.DestroyNotCurrent*Surface*" Change-Id: I3102aa237075b301b3222b420415753c83ba192a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4227073 Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>