|
34c8778b
|
2023-09-26T13:45:06
|
|
Use atomic counters early in perf warning macros
Before this CL, snprintf was called repeatedly to format the warning
message which was then discarded after 4 logs. snprintf showed up in
profiling at ~2% and this CL appears to yield an ~8% power
improvement in one of the traces (egypt_1500).
A mutex was previously used to avoid the race condition on the static
sRepeatCount variable. This CL avoids the need for that by using static
atomics instead.
Also updated the Debug macro to use the VK macro vararg approach so that
formatting only happens when the message is actually logged.
Bug: b/302112423
Change-Id: Ia8a18361cfb5a9f2aa19ff939499754ba861efb7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4886388
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
03034715
|
2023-09-29T15:35:50
|
|
Roll VK-GL-CTS from d88f9c5772a8 to a55b0930e9db (10 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/d88f9c5772a8..a55b0930e9db
2023-09-29 rgarcia@igalia.com Fix VulkanSC version check for promoted
function pointers
2023-09-29 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7
into vk-gl-cts/main
2023-09-28 javed@igalia.com Add TESS/GEOM shaders in combination with
the barycentric FS
2023-09-28 ziga@lunarg.com Add texture gather offsets tests using
implementation limits
2023-09-28 gleese@broadcom.com Simplify construction of float controls
tests
2023-09-28 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.9
into vk-gl-cts/main
2023-09-25 rgarcia@igalia.com Test GPL with XFB
2023-09-22 rgarcia@igalia.com Add more XFB simple test variants using
PointSize
2023-09-22 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-cts-4.6.3
into vk-gl-cts/main
2023-09-22 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.9
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: I2eeb1e3e724c341cd577421d1b4c3795dd152b44
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4904361
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
03eea365
|
2023-09-25T17:50:51
|
|
ANGLE Tracer: Mark FBAttachment texture resources as active
If a texture and framebuffer were set up before capture and
referenced during a capture, the texture resource would not
be set as active and the trace may fail.
Test: Capture a Diablo Immortal trace and attempt to replay
Bug: b/301999483
Change-Id: I5ea114e65b11479a5cdbf496dc8c5ab4eeadbf55
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4893251
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
|
|
d1d639eb
|
2023-09-28T15:02:14
|
|
Don't check out Android dependencies on macOS.
Doing so is causing problems for multiple teammates.
Fixed: angleproject:8363
Change-Id: I29e8e4e25fae2726b2af61abffb86ab8c2abaa6c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4902756
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
16651b65
|
2023-09-29T08:46:41
|
|
Roll Chromium from 1fe2defab2d7 to 7d030fb2d0f3 (752 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/1fe2defab2d7..7d030fb2d0f3
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/4cf92feae1..23812209f6
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/2c6e20e2ff..ece39eb658
* buildtools/reclient: re_client_version:0.114.2.81e819b-gomaip..re_client_version:0.113.0.8b45b89-gomaip
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/76f3b55855..7be94e7b03
* third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/9f3298993d..7207ed23d5
* third_party/android_build_tools/manifest_merger: EPmMtC5CNXQqxByKOxqF9Vk8LURwarA6qy5siWX1kRoC..9gAaukznhLAAtANeZ_AT_9z8xXF5ZUzuc0h0TfMr7IIC
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/328888ea45..a217ecb5ad
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/34e0ecf20e..4c1d6d90bc
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/055d494c5c..8a241ea043
* third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/49658294d8..724cd40fb6
* third_party/siso: git_revision:7c83de2b4db68a7b96e62a272a3b1eb40681fb81..git_revision:23257e255f1d58d9f66923a1a40e746ac3a4b9d8
* third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/91a295c72e..3f0af7f1d5
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/f8b2b1163d..dc3593cbb8
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/01291106f9..91d35f630f
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/8084029261..471bcb7483
No update to Clang.
Bug: None
Tbr: abdolrashidi@google.com
Change-Id: Ief8bca49c9d18ea77c95dd6eea382c383bc1d12d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4903435
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
1cab871c
|
2023-09-27T22:11:25
|
|
GL: Fix ScalarizeVecAndMatConstructorArgs vs precision
If the constructor being expanded has no precision (such as if it's
entirely made up of constants and bools), the workaround didn't produce
a precision for the helper function, leading to GLES compilation errors.
Bug: chromium:1420130
Bug: angleproject:8361
Change-Id: I0de312dfd1bfbf45317db4fb88d685a843052817
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4898697
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
6717a65b
|
2023-09-28T00:00:00
|
|
Metal: Skip maximum render target size validation for Mac GPUs
Only GPUs that do not support Mac families have this limitation.
Bug: angleproject:8268
Change-Id: I3f9174dd104c2ba4e9781272fbc7062fe14d78a9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4903722
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Kyle Piddington <kpiddington@apple.com>
|
|
d55893cd
|
2023-09-27T16:40:58
|
|
Issue 1484512: Out of bounds access to Metal uniform blocks
Fixed conversion offset for Uniform buffers: Dynamic buffers
were being allocated and copied from the 'updateBufferSubData'
offset, than from the previously allocated offset. This meant that when
creating a new dynamic buffer to hold the metal uniforms,
ANGLE didn't re-convert blocks from the initial source offset,
nor did we allocate enough space to read those blocks.
Important use cases to test include any UBO-heavy sites.
Bug: chromium:1484512
Change-Id: Ia9f505e3df871a401d40682d737019bd5d3f443f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4899369
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Kyle Piddington <kpiddington@apple.com>
|
|
621bee25
|
2023-09-27T22:07:24
|
|
Manual roll vulkan-deps from b8fa58ef74a9 to 89aea904c65f (61 revisions)
Manual roll requested by abdolrashidi@google.com
* Updated the skipped VVL messages in accordance with the following
vulkan-deps roll: Vulkan-ValidationLayers to 9fe2f727
https://chromium.googlesource.com/vulkan-deps.git/+log/b8fa58ef74a9..89aea904c65f
Changed dependencies:
* glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/4c57db1595..2bfacdac91
* spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/5e963d62fa..6e1fb9b09e
* spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/fc7d246276..79743b899f
* spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/a40483d313..48c97c1311
* vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/4f51aac14f..df60f03168
* vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/9dc0e31574..f352069ad3
* vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/1ecbed6db3..576f3286e1
* vulkan-utility-libraries: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries.git/+log/6774c9b24b..8486ee700e
* vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/c26ff51102..1b8b09b3ab
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:8358
Tbr: abdolrashidi@google.com
Change-Id: I7927abe872fbb1d25523b06cc205b13ef2a887f3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4898000
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
49c4d87a
|
2023-08-21T00:00:00
|
|
Apply fragment color broadcasting to secondary outputs
When GL_EXT_draw_buffers is enabled,
gl_FragColor is replaced with gl_FragData.
Apply the same transformation to gl_SecondaryFragColorEXT
if it is statically used to avoid compiler failures.
Bug: angleproject:1085
Change-Id: If154cd20a8e14a92da520847a9c4508971a45fef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4900641
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
25bfe035
|
2023-09-07T00:00:00
|
|
GL: Adjust disableTextureMirrorClampToEdge condition
The extension support has
been fixed in Mesa 23.1.7.
Fixed: angleproject:8319
Change-Id: Ie83dee83773823dad90826267040e40b6f296c53
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4901182
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
66d3db3b
|
2023-09-27T09:15:19
|
|
d3d: Shorten warning about complex uniform blocks
The warning was excessively large, while ANGLE_PERF_WARNING might use a
smaller buffer to format the message.
Bug: b/302112423
Change-Id: Ie8c2fe472c90a39f678fa685e852bbd49b5c8442
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4894632
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
80228c64
|
2023-09-28T07:00:45
|
|
Roll Chromium from 90ee8fc080db to 1fe2defab2d7 (444 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/90ee8fc080db..1fe2defab2d7
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/0a9aa32bbe..4cf92feae1
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/dd597d467e..2c6e20e2ff
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/95b1376904..76f3b55855
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4105ea6a42..328888ea45
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/8609345923..34e0ecf20e
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/823696f806..055d494c5c
* third_party/siso: git_revision:412571deccd76eb54f681963ca14e13c3efc63e1..git_revision:7c83de2b4db68a7b96e62a272a3b1eb40681fb81
* third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/fc2715028a..91a295c72e
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/a705c19db3..01291106f9
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/c9d48cf49a..8084029261
No update to Clang.
Bug: None
Tbr: abdolrashidi@google.com
Change-Id: Ifee60b1d83ae0abe48a1694126885158af7542d1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4900419
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
929ace8d
|
2023-09-22T09:59:43
|
|
Vulkan: Get queueFamilyIndex from renderer
In WindowSurfaceVkWayland::createSurfaceVk, use
context->getRenderer()->getQueueFamilyIndex() to get index
Bug: angleproject:8353
Change-Id: Ia209c1c8a16ef12e260b0a9d584b50b1a4c95181
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4885341
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jeff Vigil <j.vigil@samsung.com>
Reviewed-by: mohan maiya <m.maiya@samsung.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
a2a16b45
|
2023-09-27T16:57:23
|
|
Use constexpr if to suppress more aggressive conversion warning
The latest version of Clang started warning about the implicit
conversion in the 'else' branch even for types where that branch is not
taken. Use 'constexpr if' to passify the compiler.
Bug: chromium:1487142
Change-Id: I52ae111abaeac46b586bf9f5c150c9a58e419704
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4891702
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d07965b3
|
2023-09-25T16:54:00
|
|
Workaround for the ETC2 transcoding bug on some AMD GPUs.
We now perform alpha encoding first, in 8-bit alpha mode. While this
should not make any difference from a logic perspective, it does fix a
bug on certain AMD GPUs. See b/300672851 for details.
Tested on a Radeon RX 560X Series GPU, which current drivers.
Bug: b/300672851
Change-Id: I5d2bfbca36a27f064918f19e7330dd7467a320cd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4892879
Reviewed-by: Hailin Zhang <hailinzhang@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3defb2cd
|
2023-09-26T14:03:47
|
|
Remove mention of --use-goma from capture/replay doc
Goma is autodetected. --use-goma is not accepted by the script anymore
and was removed in:
https://chromium-review.googlesource.com/c/angle/angle/+/3149190
Bug: angleproject:6102
Change-Id: I19c32346f86ca608476af2dff40b9d6ea0a3eb44
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4894631
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
cc689920
|
2023-09-27T07:00:44
|
|
Roll Chromium from eaf61b9c576c to 90ee8fc080db (1095 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/eaf61b9c576c..90ee8fc080db
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/bf26514b29..0a9aa32bbe
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/b1681a8c6c..dd597d467e
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/96134a476f..95b1376904
* third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/c2ac88e292..9f3298993d
* third_party/android_build_tools: https://chromium.googlesource.com/chromium/src/third_party/android_build_tools/+log/801bc6657b..290bf47520
* third_party/android_build_tools/lint: l5GhbN0RAcpoaj1qIS43ZX7AYnLxdF-rZJ0ruGu_iWAC.._HzBkAzPHHstN_PQaEGq4413D2VuwK7rqGfk8qD--SsC
* third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/297421bd46..506acd31ba
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/3c4b5cf37f..4105ea6a42
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/c5505889cf..8609345923
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/645470002f..823696f806
* third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/c28dc42f0d..e8e4eb8f1c
* third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/1f88fff745..49658294d8
* third_party/r8: w5NK9teKNDuEhU_7rQE8WYwuBzdXA8lVkJwo6VOgWv8C..ZQH8yoO1Ol5rCFRL2hzp4_mcdq23Fk19Z_gVHn5pzk8C
* third_party/turbine: NR31kJWll1NZz_scMvMPtPH_P3wOQ5aKBJ-n8XQ7QrYC..yCsGwOtj8SizFXXeS-xmdIaZ3PuyTsy8IJsp411p_uIC
* tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/26ace0aa44..f1c868477e
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/8709515e87..f8b2b1163d
* tools/luci-go: git_revision:8b73cff3b780a7136c4904103f19124d2be3dee1..git_revision:3e49653ac027a003d9ef6cf89068acbf28f5bd9e
* tools/luci-go: git_revision:8b73cff3b780a7136c4904103f19124d2be3dee1..git_revision:3e49653ac027a003d9ef6cf89068acbf28f5bd9e
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/30749e99ce..a705c19db3
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/1b7548b361..c9d48cf49a
No update to Clang.
Bug: None
Tbr: abdolrashidi@google.com
Change-Id: If81ca949e6c3d6a7d7a0a145140cf02e01ed5ed1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4896245
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
2c0f9d20
|
2023-09-26T11:50:54
|
|
Metal: Protect against invalid locations in setUniformImpl
Chrome disables validation and a common bug is that the wrong program
is used during uniform setting in Skia. Make this bug less catastrophic
while the root cause is investigated.
Bug: chromium:1484878
Change-Id: I521e99cdf6cebc56775e484fa8d61ad18f506479
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4886384
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
7cacb537
|
2023-09-26T11:27:49
|
|
Limit the uncompressed data size when decompressing blobs.
If the data in the blob cache is invalid for any reason, ANGLE will
take the last 32 bits of it an interpret it as a size for
decompressing the blob. Add some reasonal upper bounds on the
decompressed data size so that if the data is invalid it will simply
fail decompression instead of allocating giant buffers.
Bug: chromium:1485277
Change-Id: Ifb807f5ea836b692f37734b20789f5daefcca5c9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4887599
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
7f5b5f74
|
2023-09-19T07:35:16
|
|
Tests: Add Batman: The Telltale Series trace
Test: angle_trace_tests --gtest_filter="*batman_telltale*"
Bug: b/301024256
Change-Id: Ice5aa3ed093901c04486fca64121592eb8805f93
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4883428
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
97a48912
|
2023-09-26T10:31:58
|
|
Turn is-link-thread-safe feature into a positive condition
Chrome's --disable-gpu-driver-bug-workarounds currently sets every
feature to false, which breaks the GL backend.
Bug: angleproject:8297
Change-Id: I284d0699e356d7c1a362eb992cdc0d052f9ea7c2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4887598
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1579eed5
|
2023-09-25T18:21:39
|
|
BufferHelperPointerVector -> BufferHelperQueue (deque)
DynamicBuffer.mBufferFreeList is a vector<unique_ptr>.
DynamicBuffer::allocate erases an element from the front, which is what
deque is exactly good for.
Changed other uses too (mBufferFreeList,
VertexArrayVk.mCachedStreamIndexBuffers) per Charlie's recommendation.
Yields a significant power improvement in words_crush trace.
Bug: b/302020992
Change-Id: I1b0242481404b8fc2cfdc27611252308b922f4d7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4886367
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
c9955641
|
2023-09-25T14:31:01
|
|
Avoid malloc in angle::Mat4 by using array instead of vector
angle::Matrix<float>::inverse() showed up in cpu profile of "minetest"
trace at ~10%. It's a gles1 trace. Multiple objects are constructed
and require malloc due to the use of std::vector.
Called here:
https://crsrc.org/c/third_party/angle/src/libANGLE/GLES1Renderer.cpp;drc=eb0d59973d21f845b5785563f5d56b8ebb617478;l=371
This CL decouples Mat4 from angle::Matrix (some of the functionality had
to be copied over) to switch from std::vector to std::array.
Testing "minetest" on a phone I saw a ~20% cpu power improvement due to
this CL.
There is an existing unit test coverage: MatrixUtilsTest.Mat4InvTr
Moved 4x4 cofactor matrix code to a helper with transposition included
Bug: b/301977186
Change-Id: I1e4c2201d19759dd37c0fee44fb44f4d24a58a6b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4885501
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
6b0ddce0
|
2023-09-22T13:13:38
|
|
Backends need to handle invalid render area during a clear
1. Frontend no longer noops empty scissors during clear
2. FramebufferVk is updated to handle invalid render area by restaging
deferred clears in clearImpl(...) if render area is invalid
Bug: angleproject:8348
Tests: EGLSurfaceTest*WindowThenScissoredClear*
Change-Id: Iec51914a083a59bad7f939798c932dffada56a6c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4867641
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
826e5f95
|
2023-09-24T09:48:55
|
|
Vulkan: Rename redeferClears as restageDeferredClears
This is a simple rename to better reflect implementation
and has no functional changes.
Bug: angleproject:8348
Change-Id: I53ce42e8bb14687a0dda167b8d79eba1eb357254
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4888691
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
be8739f2
|
2023-09-22T14:36:45
|
|
Vulkan: Fix StatInfo in vk_mem_alloc_wrapper.h to match VMA
Right now we are defining our own StatInfo structure in
vk_mem_alloc_wrapper.h to avoid inclusion of VMA header directly in
other ANGLE code. This caused this struct no longer matches VMA's
structure since VMA 3.0 switch. For quick fix, this CL just update
StatInfo to match VMA 3.0 define.
Bug: b/301653706
Change-Id: Ic510c362f30d9296a13964e6ba9c617e80e49ceb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4888625
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
6399f8d3
|
2023-09-24T05:01:22
|
|
Bugfix in HandleAllocator::reset(...)
Cache "maximumHandleValue" passed in via constructor
and use this value in reset(...)
Bug: angleproject:8354
Test: HandleAllocatorTest.ResetAndReallocate
Change-Id: I63bb953186a07d32582a0276af3ac8cb26a007a5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4888690
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
29d0fe51
|
2023-09-25T07:03:09
|
|
Roll Chromium from 86cb232d2fc2 to eaf61b9c576c (734 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/86cb232d2fc2..eaf61b9c576c
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/3a0a70c754..bf26514b29
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/d53d0131e2..b1681a8c6c
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/f5159f7d11..96134a476f
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/99f2d536fb..3c4b5cf37f
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/af369d8962..c5505889cf
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/a75061bc37..645470002f
* third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/cb9bef1717..c28dc42f0d
* third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/4027f4521c..1f88fff745
* third_party/r8: qLYuLt4k9raGYbeiaAh3ORseYrHh8pt9WUaeD60Yov4C..w5NK9teKNDuEhU_7rQE8WYwuBzdXA8lVkJwo6VOgWv8C
* third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/b1f4a09d6f..fc2715028a
* tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/f1c4d9a146..26ace0aa44
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/ac34945aad..8709515e87
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/0ce20e9bb6..30749e99ce
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/332226148d..1b7548b361
No update to Clang.
Bug: None
Tbr: cnorthrop@google.com
Change-Id: I92e71cf2e4292541413cb14ef59ba7edce77294a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4891377
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
9fc3baf5
|
2023-07-26T10:29:13
|
|
Add the missing GraphicsPipelineDesc legacy dither bit update
When the app calls glEnable(GL_DITHER) or glDisable(GL_DITHER),
we need to update the legacy dither bit of the renderpass that
belongs to ContextVk::mGraphicsPipelineDesc. If not, there is a
change that the graphics pipeline will be created with a
renderpass that has outdated legacy dither bit. This results
the dither being applied to the render results incorrectly:
e.g. the app calls glDisable(GL_DITHER),
but the render results have dithering applied.
Bug: b/286921997
Bug: b/292282210
Bug: b/293349058
Bug: b/284462263
Change-Id: Ie24b95898526c9021be6e3cb7620e4050f9faaaf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4722446
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
141bada9
|
2023-09-22T10:25:30
|
|
Vulkan: add prefer cached memory type for dynamic buffer usage.
Bug: b/288119108
Change-Id: I0fb5d91780e83af06762b9f3e6122313e76624da
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4886846
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Hailin Zhang <hailinzhang@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
e1d2e88a
|
2023-09-20T11:53:15
|
|
Check pending garbage after some buffer releases
* Embedded BufferHelper::releaseBufferAndDescriptorSetCache() inside
a new ContextVk method: releaseBufferAllocation()
* After releasing the buffer, there is a check for excess pending
garbage. If the tracked pending garbage size is larger than the
threshold, the context will be flushed.
* Unskipped the test "BufferDataInLoopManyTimes", which was failing
on Android devices.
Bug: b/280304441
Change-Id: Ib34319f3291dd2200fc1a92e30645f9d1da8e2b9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4879086
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a1e3abc0
|
2023-09-22T10:14:43
|
|
Add ES2 support for copying GL_SRGB8_ALPHA8 to GL_RGBA8
Bug: angleproject:7907
Change-Id: I02ae9785ea1f942e85983c18155cfd75ec39b5c2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4887271
Commit-Queue: ccameron chromium <ccameron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
7b1b8a01
|
2023-09-21T20:15:29
|
|
Metal: Allow using GL_RGB with either RGBA/BGRA IOSurface.
Previously we only allowed GL_RGB internal format to be used with BGRA
IOSurface and GL_RGBX8_ANGLE to be used with RGBA IOSurface
respectively.
However, there are currently many places in Chrome prefer GL_RGB to be
able to be used with both RGBA and BGRA IOSurface.
This CL allows such combinations. Instead of deducing angle::FormatID of
the IOSurface pbuffer based on the input GL internal format & type, we
will take into account the pixel format of the IOSurface as well.
For example, when we call eglCreatePbufferFromClientBuffer with GL_RGB
internal format attribute:
- if IOSurface's pixel format is 'RGBA' ->
deduced angle::FormatID is R8G8B8A8_UNORM.
- if IOSurface's pixel format is 'BGRA' ->
deduced angle::FormatID is B8G8R8A8_UNORM.
This CL also removes GL_RGBX8_ANGLE support from Metal backend. Because
there are many places in Chrome that use this format enum for both RGBA
& BGRA IOSurface when the extension is available. It's redundant to
support that since GL_RGB already covers most of the required cases.
Bug: angleproject:8350
Change-Id: I5a121a97e031a42d0779721d4348f373dfaee9a0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4881742
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org>
|
|
63eb70a6
|
2023-09-22T13:35:51
|
|
Roll VK-GL-CTS from 23a6249942af to d88f9c5772a8 (9 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/23a6249942af..d88f9c5772a8
2023-09-22 ziga@lunarg.com Remove exceptions from vkGetDeviceProcAddr
test
2023-09-22 aitor@lunarg.com Add u/int to fp spirv conversion rounding
tests
2023-09-22 dneto@google.com Exercise narrowing float conversions with
RTE, RTZ
2023-09-22 gleese@broadcom.com Reduce copy-and-paste in localsize tests
2023-09-22 ziga@lunarg.com Fix pNext chain for device create info in api
buffer tests
2023-09-22 ewerness@nvidia.com Compare the results of the shader with an
epsilon
2023-09-22 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7
into vk-gl-cts/main
2023-09-21 lorenzo@khronosgroup.org Merge "Merge
dev/VK_EXT_frame_boundary into main" into main
2023-09-15 gleese@broadcom.com Fix misspelling of OID_LENGTH
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll
Please CC angle-team@google.com,cnorthrop@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: cnorthrop@google.com
Change-Id: Ib45b73402c26629a30424603ee9ad03a1ad08ea8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4885336
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
4ff5beba
|
2023-09-22T08:17:00
|
|
Roll Chromium from 65385dc9c1b7 to 86cb232d2fc2 (626 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/65385dc9c1b7..86cb232d2fc2
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/480a7a59d8..3a0a70c754
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/fb8823aeb4..d53d0131e2
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/625ab1c17d..f5159f7d11
* third_party/android_build_tools/manifest_merger: FlwnxEZ1wdjoQfedkF4MiZgo8pD48-_CJNA7RnU6as4C..EPmMtC5CNXQqxByKOxqF9Vk8LURwarA6qy5siWX1kRoC
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/43f4530c97..99f2d536fb
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/a45d2d4c90..af369d8962
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/316166f499..a75061bc37
* third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/82c3c02548..cb9bef1717
* third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/244575ffb6..4027f4521c
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/cd4546f65b..0ce20e9bb6
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/29f2e7dc1c..332226148d
No update to Clang.
Bug: angleproject:6430,angleproject:8317
Tbr: cnorthrop@google.com
Change-Id: I31aa962ae8747977ec2281c40ae3b0110ddb3664
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4886730
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
26148a02
|
2023-09-21T11:25:16
|
|
Vulkan: Minor cleanup of mPrevUploadedMutableTexture
When texture is transit from mutable to immutable, we need to remove it
from SharedGroupVk::mPrevUploadedMutableTexture if it is pointing to.
Right now we did not clear the pointer, but rely on next texImage call
to detect that mPrevUploadedMutableTexture is pointing to a immutable
texture and then set it to new tetxure. This is a bit confusing since we
only add a mutable texture to this mPrevUploadedMutableTexture pointer
but at some point it becomes immutable. This CL changes to immediately
reset the pointer when texture is respecified from mutable to immutable,
and added assertion that mPrevUploadedMutableTexture is mutable.
Bug: b/301289624
Change-Id: I97a11616887367cd4c2069419fe17d3dea052b50
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4879087
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
9f94ab7f
|
2023-09-21T08:48:56
|
|
Roll Chromium from 82003a98b373 to 65385dc9c1b7 (649 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/82003a98b373..65385dc9c1b7
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/f474ec05a2..480a7a59d8
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/da74596ec9..fb8823aeb4
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/6b95b20c49..625ab1c17d
* third_party/android_toolchain/ndk: vD5FPvy1sIu7nXcWvm7PTF4yfBbjkyJJC-AgjYEdaYQC..NSOM616pOQCfRfDAhC72ltgjyUQp9lAWCMzlmgB18dAC
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/7eff3d6a1f..43f4530c97
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/ed9a0819a4..a45d2d4c90
* third_party/fuchsia-sdk/sdk: version:15.20230909.2.1..version:15.20230920.1.1
* third_party/kotlin_stdlib: 7XCiIAlSi36gvPwOn8N4Q1GE9sMLw6V1RljM9151cWIC..as5vlzFVMpLTCQXVJqs-kifMAEQmjK_fImDy09zQB8AC
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/3e8a3b3c5d..316166f499
* third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/f6a17c88dd..82c3c02548
* third_party/r8: f6AwZX-cIa-qdx2fK93cJy9cfTg9ZqO2PkBWDNUMZXQC..qLYuLt4k9raGYbeiaAh3ORseYrHh8pt9WUaeD60Yov4C
* third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/235986452b..b1f4a09d6f
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/45952a2a57..cd4546f65b
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/7d52128ecb..29f2e7dc1c
No update to Clang.
Bug: angleproject:6430
Tbr: cnorthrop@google.com
Change-Id: I2c0c71fe008388338dd400e58ba789131a070442
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4882004
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
73252f34
|
2023-09-20T16:46:47
|
|
Fix ASSERT and potential bug with UnlockedTailCall
ASSERT happened in the Instagram application.
- record REEL using camera;
- press "Next" button;
- return to the previous screen;
- ASSERT happens.
Crash details:
pid: 31451, tid: 2938, name: mediacompositio >>> com.instagram.android <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'FATAL: entry_points_egl_autogen.cpp:437 (EGL_GetError): ! Assert failed in EGL_GetError (../../src/libGLESv2/entry_points_egl_autogen.cpp:437):
backtrace:
...
#07 pc 0000000000627740 /vendor/lib64/egl/libGLESv2_samsung.so (gl::LogMessage::~LogMessage()+140) (BuildId: acced3587e668343)
#08 pc 000000000027e79c /vendor/lib64/egl/libGLESv2_samsung.so (EGL_GetError+360) (BuildId: acced3587e668343)
#09 pc 000000000007c14c /system/lib64/libEGL.so (android::eglGetErrorImpl()+28) (BuildId: 5b32b014e5c062afdd3d1abd3ba13dd2)
#10 pc 0000000000079464 /system/lib64/libEGL.so (eglDestroyImageKHR+20) (BuildId: 5b32b014e5c062afdd3d1abd3ba13dd2)
#11 pc 000000000000e540 /system/lib64/libnativedisplay.so (android::EGLConsumer::EglImage::~EglImage()+44) (BuildId: 3b0b03d2c8ab7eb49d16eb7be29eb3fd)
#12 pc 000000000000e598 /system/lib64/libnativedisplay.so (android::EGLConsumer::EglImage::~EglImage()+16) (BuildId: 3b0b03d2c8ab7eb49d16eb7be29eb3fd)
#13 pc 000000000000e434 /system/lib64/libnativedisplay.so (android::EGLConsumer::onFreeBufferLocked(int)+156) (BuildId: 3b0b03d2c8ab7eb49d16eb7be29eb3fd)
#14 pc 000000000000bda0 /system/lib64/libnativedisplay.so (android::SurfaceTexture::freeBufferLocked(int)+48) (BuildId: 3b0b03d2c8ab7eb49d16eb7be29eb3fd)
#15 pc 00000000000bc294 /system/lib64/libgui.so (android::ConsumerBase::onBuffersReleased()+172) (BuildId: f219f4196018eeed01e28ec428c73c99)
#16 pc 000000000008d9d4 /system/lib64/libgui.so (android::BufferQueue::ProxyConsumerListener::onBuffersReleased()+92) (BuildId: f219f4196018eeed01e28ec428c73c99)
#17 pc 0000000000099608 /system/lib64/libgui.so (android::BufferQueueProducer::disconnect(int, android::IGraphicBufferProducer::DisconnectMode)+184) (BuildId: f219f4196018eeed01e28ec428c73c99)
#18 pc 00000000000eb3ec /system/lib64/libgui.so (android::Surface::disconnect(int, android::IGraphicBufferProducer::DisconnectMode)+268) (BuildId: f219f4196018eeed01e28ec428c73c99)
#19 pc 00000000000eaf04 /system/lib64/libgui.so (android::Surface::hook_perform(ANativeWindow*, int, ...)+264) (BuildId: f219f4196018eeed01e28ec428c73c99)
#20 pc 0000000000031214 /system/lib64/libvulkan.so (vulkan::driver::DestroySurfaceKHR(VkInstance_T*, VkSurfaceKHR_T*, VkAllocationCallbacks const*)+56) (BuildId: 44c563855311012ead3ce5e7afdb9792)
#21 pc 000000000039bb40 /vendor/lib64/egl/libGLESv2_samsung.so (void std::__Cr::__function::__policy_invoker<void (void*)>::__call_impl<std::__Cr::__function::__default_alloc_func<rx::WindowSurfaceVk::destroy(egl::Display const*)::$_0, void (void*)> >(std::__Cr::__function::__policy_storage const*, void*)+140) (BuildId: acced3587e668343)
#22 pc 0000000000522114 /vendor/lib64/egl/libGLESv2_samsung.so (angle::UnlockedTailCall::runImpl(void*)+56) (BuildId: acced3587e668343)
#23 pc 000000000027dcec /vendor/lib64/egl/libGLESv2_samsung.so (EGL_DestroySurface+260) (BuildId: acced3587e668343)
This CL will fix the ASSERT as well as remove possibility of calling
same callback twice.
Bug: angleproject:8127
Change-Id: I8e56981d0db2ef5723afedc22d5286421237444b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4874040
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
1833a686
|
2023-09-20T16:21:21
|
|
Fix FixedVector bugs and unit tests
Problems:
- test was not testing assignment operators;
- fixed compilation error in r-value assignment operator;
- r-value constructor/assignment were not resetting size.
Additionally updated FixedVector.Constructors to better test copy and
assignment operations.
Bug: angleproject:2435
Bug: angleproject:8127
Change-Id: Ic501b8d85af0280801c7abec8fb20a0ddf67580b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4874039
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8fcd4a50
|
2023-09-19T14:08:14
|
|
Cleanup POD struct usage to make them more consistent
In recent months, I have made many CLs to wrap various data structures
into a trivially copy-able struct. Some of them uses different
terminology. This CL replaces all of these to use a consistent name
"pod" in the struct, and "mPod" in a class.
This CL also turns ActiveVariable methods into macros to remove the code
duplication.
This CL also moves ProgramInput/ProgramOutput struct implementations
from Program.cpp to ProgramExecutable.cpp
Bug: b/275102061
Change-Id: Ia2a4210a9ea633f3d323bebe674ee74f8b90b363
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4877335
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
9ca025d2
|
2023-09-18T15:50:48
|
|
Flatten BufferVariable/ShaderVariableBuffer/InterfaceBlock struct
InterfaceBlock inherits from ShaderVariableBuffer, ShaderVariableBuffer
is not a trivially copyable struct, this made InterfaceBlock not
trivially copyable. InterfaceBlock is being used by some app traces for
uniform blocks. BufferVariable inherits from sh::ShaderVariable which is
very complicated and not trivially copyable. This CL flattens all of
these three structs to simple structs without inheritance, and wraps all
trivially copyable data into one POD struct, thus load/save are cheaper.
Bug: b/275102061
Change-Id: I96f89176ce3d3131cb1d3ea3280c3c36c257560f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4874610
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
120e90eb
|
2023-09-08T11:23:11
|
|
Add test for copying GL_SRGB8_ALPHA8 to GL_RGBA8
The pixel values should be the same (no conversion should happen).
Include sub-tests with and without alpha premultiplication.
Bug: angleproject:7907
Change-Id: I2e3d657d5b8513cd06df357e84027572ebce03ff
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4852258
Commit-Queue: ccameron chromium <ccameron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f5842350
|
2023-08-21T00:00:00
|
|
Vulkan: Flatten secondary fragment output arrays
Added a SPIR-V transformation that makes them private
and copies their values into regular fragment outputs.
Fixed: angleproject:8336
Change-Id: Ide62dd183426e0de70fd4ac6d2b8c6a4b4b33994
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4875327
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
44c6effd
|
2023-09-20T11:21:49
|
|
Fix potential timeout of FixedQueue.ConcurrentPushPop test
The test some times times out in bots. I think what happens is that when
dequeue thread went to sleep and then wake up, during sleep the enqueue
thread already finished and exited (maybe because of timer runs out),
then it will forever stuck in the while loop. This CL adds the check for
other thread is finished or not and exit while loop if other thread has
finished.
Bug: b/301283364
Change-Id: Id6d846600b1749ce0bcb7b080b3b8ce3ad3d1dc4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4879083
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b480ba30
|
2023-09-18T17:30:09
|
|
CopySubTexture: Fix premultiplied alpha
When copying from an sRGB texture to a non-sRGB texture, un-do the
sRGB-to-linear transform independently of the premultiply vs
unpremultiply properties of the texture.
The sRGB-to-linear transform performed during sampling is performed
on the RGB part of the pixel, independent of the alpha channel's
value. Un-do this part immediately before examining the alpha
channel's value (and its premultiply vs unpremultiply state).
Bug: angleproject:7907
Change-Id: I50c8f56182a46957febcd1f7b7887b0956074bb8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4872047
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: ccameron chromium <ccameron@chromium.org>
|
|
bfae8072
|
2023-09-20T06:48:06
|
|
Metal: Support RGBA IOSurface pbuffer.
Currently only BGRA IOSurface is supported by ANGLE.
This CL adds RGBA IOSurface support to Metal backend.
- Added GL_RGBX8_ANGLE & GL_UNSIGNED_BYTE attributes combo to specify
that the IOSurface is RGBX. Only supported on Metal backend for now.
- Added GL_RGBA & GL_UNSIGNED_BYTE combo to specify that the IOSurface
is RGBA. Only supported on Metal backend for now.
Bug: angleproject:8350
Change-Id: I0e05762870c9c034bca78e8989aedf346406df57
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4874484
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
|
|
67350e64
|
2023-09-20T10:01:54
|
|
Roll vulkan-deps from 640b7331b244 to b8fa58ef74a9 (7 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/640b7331b244..b8fa58ef74a9
Changed dependencies:
* spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/a996591b1c..a40483d313
* vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/a01cfc0b78..1ecbed6db3
* vulkan-utility-libraries: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries.git/+log/21ded6ed67..6774c9b24b
* vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/8c7da10180..c26ff51102
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,cnorthrop@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: cnorthrop@google.com
Change-Id: I0e0a9cdbb7404fbff02fc7b113c47b938aae39e4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4877343
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
ea74cc8d
|
2023-09-20T07:02:14
|
|
Roll Chromium from 26ff6b8864ac to 82003a98b373 (614 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/26ff6b8864ac..82003a98b373
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/a66b1c2c6f..f474ec05a2
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/a567506e78..da74596ec9
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/0f7651344a..6b95b20c49
* third_party/android_toolchain/ndk: 3vHltFqfgIw8wZ38ggGM9c7Eyw_AHZnwCgFIVtc9gngC..vD5FPvy1sIu7nXcWvm7PTF4yfBbjkyJJC-AgjYEdaYQC
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/693c3fa3c2..7eff3d6a1f
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/36bd52621f..ed9a0819a4
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/7cee6b00d3..3e8a3b3c5d
* third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/d9b4abf6b6..244575ffb6
* third_party/r8: WptUn43oi_BkFPtEyZTdUD9wZo1yy8OPVqFwdP3jmqoC..f6AwZX-cIa-qdx2fK93cJy9cfTg9ZqO2PkBWDNUMZXQC
* third_party/turbine: laSnfZnTgkmZynERrjAlU3yeqB5rN446BctGmKQsZ64C..NR31kJWll1NZz_scMvMPtPH_P3wOQ5aKBJ-n8XQ7QrYC
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/31a7453f89..ac34945aad
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/0e407d39db..45952a2a57
No update to Clang.
Bug: None
Tbr: cnorthrop@google.com
Change-Id: Ia7ec980ff68ff03aa866bb3e921d9990776a3765
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4878593
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
e3054599
|
2023-09-04T23:20:19
|
|
Metal: Don't use implicit MSAA for render buffers.
This CL removes the usage of implicit MSAA from render buffers.
Implicit MSAA added an extra single-sampled texture & resolve step when
clients render to a multisampled render buffer. It is as if
EXT_multisampled_render_to_texture extension is always used even though
users might not request for it. Not to mention this extension's
implementation is incomplete.
Furthermore, it is hidden from users. Thus
the only way for them to use the render buffer after rendering
(presentting to screen, sampling the pixels, etc) is manually resolving
the render buffer with glBlitFramebuffer. This results in another
redudant texture copy operation.
This CL also removes no-longer used function
FrameBufferMtl::getReadableViewForRenderTarget()
Bug: angleproject:8301
Change-Id: I63053b9e1d1a5cf47a023291b8fcb31d3636d3ff
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4840154
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
43130a0a
|
2023-09-19T14:35:46
|
|
Android: Clean up from previous bad rolls
See the bug for details, but we think the presence of
previous temp directories may be preventing roller CLs.
Test: Locally ran roll_aosp.sh
Bug: angleproject:8352
Change-Id: I7851185b8c77d1b91c7289e3a13c5c0b4175745c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4877189
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
ae9c7857
|
2023-09-19T13:40:52
|
|
Suppress BufferDataInLoopManyTimes for Linux/Intel
* Skipped BufferDataInLoopManyTimes for Linux/Intel due to the long
execution time, suspected to be causing errors on the bots.
Bug: angleproject:8351
Change-Id: Ib7b640800edf5b30e251b47cfabfd34cc1ecea28
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4877693
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
53e3ce59
|
2023-09-08T17:41:56
|
|
Add device lost handle after finishImpl
It is possible that the during context destroy,
when calling finishImpl, the vulkan device is lost,
e.g.
https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/6447#issuecomment-1711479164.
We should check vulkan device lost after finishImpl().
Bug: b/289544394
Change-Id: I75aa650cdd38d81815f7354770639e896e3376a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4854763
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
ecf11eca
|
2023-09-19T15:18:04
|
|
Add ContextMutex unit tests
Test: angle_unittests --gtest_filter=ContextMutex*
Bug: angleproject:8226
Change-Id: I55b69ce8bb89d572a2bf5d28f428635505771fa1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4874388
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
4b724130
|
2023-06-27T18:08:27
|
|
Rename SharedContexMutex into ContexMutex
Follow up after:
Replace (Single/Shared)ContextMutex classed with ContextMutex
Renamed build option:
angle_enable_shared_context_mutex -> angle_enable_context_mutex
Renamed because there is no more SharedContexMutex class and
ContextMutex is now used for both Shared and not Shared Contexts.
Bug: angleproject:8226
Change-Id: I68eea84aa59441d9c5b19870910b2bb499311e08
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4650350
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
ca4dc52e
|
2023-06-22T15:20:12
|
|
Replace (Single/Shared)ContextMutex classed with ContextMutex
This CL removes `SingleContextMutex` class and not 100% safe
`Context::lockAndActivateSharedContextMutex()` method.
`SharedContextMutex<>` was replaced with `ContextMutex` with static
mutex type which is defined in "SharedContextMutex.h":
- ContextMutexType = std::mutex
Above refactoring also allows storing `State::mContext` by value,
instead by pointer. Actual mutex is referenced by `ContextMutex::mRoot`
member. This removes extra pointer indirection and slightly improves
performance.
If newly created Context uses shared textures/samplers, then it uses
`Display::mManagersMutex` root as its root.
Performance in Single/Shared cases now will be the same, and it should
be slightly faster then old Shared case (because of the reduced
complexity).
Bug: angleproject:8226
Change-Id: I7ca4d9ea008c665cbea98ace1c6e7bbc544f54b5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4632729
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
eb0d5997
|
2023-09-15T16:41:13
|
|
Move set/get uniform machinery to ProgramExecutable
This is done because some uniforms are internally added by the compiler
(draw ID, base vertex, and base instance) and are automatically set **on
the installed executable**.
This change fixes scenarios where a draw is done after a program has
failed a relink, and therefore is unable to correctly set the uniforms
(as it does not have access to the executable that is installed).
It also fixes draws that use those uniforms in a PPO.
Bug: angleproject:8297
Change-Id: Id74b4984b88aa09b5b81be1c91412d6c91711136
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4864693
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7cb117e0
|
2023-09-19T10:01:56
|
|
Roll vulkan-deps from dc9947ad4d2b to 640b7331b244 (9 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/dc9947ad4d2b..640b7331b244
Changed dependencies:
* glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/efc33d1ee5..4c57db1595
* vulkan-utility-libraries: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries.git/+log/10f76f75da..21ded6ed67
* vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/867004beac..8c7da10180
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,cnorthrop@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: cnorthrop@google.com
Change-Id: Iae666e69b893afe75f19bc904e1c1b40bbaecc35
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4874893
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
936694e3
|
2023-09-15T16:03:25
|
|
Cache isSeparable in the executable
For convenience, particularly for the next CL.
Bug: angleproject:8297
Change-Id: I55690aecf3936a51a2a2163d7c354a710b81d7f8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4864069
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c8e16b07
|
2023-09-18T12:00:57
|
|
Vulkan: Ignore VVL errors from GOOGLE extension
We're seeing VUID-VkSamplerCreateInfo-pNext-pNext fire
when rolling vulkan-deps.
It is complaining about an unknown VkStructureType (1000264000)
The type is implemented by VK_GOOGLE_sampler_filtering_precision,
which is a private extension.
We can ignore this VVL error.
Bug: angleproject:8349
Change-Id: Ie424458873192b668371d8215dadf9788479f8dd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4874597
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d46bc77d
|
2023-09-19T07:01:23
|
|
Roll Chromium from 0bbd400252a4 to 26ff6b8864ac (512 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/0bbd400252a4..26ff6b8864ac
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/c5658c73de..a66b1c2c6f
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/691073acd7..a567506e78
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/a65c4c3a2f..0f7651344a
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/0dfa3b81d7..693c3fa3c2
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/d7ba85d1eb..36bd52621f
* third_party/flatbuffers/src: https://chromium.googlesource.com/external/github.com/google/flatbuffers.git/+log/28861d1d7d..0343396e49
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/176c934642..7cee6b00d3
* third_party/r8: g3ZKfFfRYNZNHJUs07J5hb92ua_jvjdrbo7I1R585uwC..WptUn43oi_BkFPtEyZTdUD9wZo1yy8OPVqFwdP3jmqoC
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/c73590e223..0e407d39db
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/44d802024e..7d52128ecb
No update to Clang.
Bug: None
Tbr: cnorthrop@google.com
Change-Id: I66a30d8fbaaf44a1616029bcda41ad4245590362
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4874892
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
91ef1f3c
|
2023-09-08T16:39:53
|
|
Move buffer suballocation callers to ContextVk
* Moved the following functions from BufferHelper to ContextVk.
* initBufferForBufferCopy()
* initBufferForImageCopy()
* initBufferForVertexConversion()
Bug: b/280304441
Change-Id: I890f4396b00b0c20feb44f0ad113c55924ce1014
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4854760
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
a1f52f1b
|
2023-09-07T14:44:24
|
|
Vulkan: Flush pending image garbage more often
* Added a counter to the context object to keep track of the size of
the pending image garbage: mEstimatedPendingImageGarbageSize.
* Modified hasExcessPendingGarbage() to use the sum of the size of
the image and and suballocation garbage.
* RendererVk::calculatePendingGarbageSizeLimit() provides the limit.
* Currently the limit is based on the available heap sizes. It will
use a fraction of the largest memory heap size.
* The portion is currently kGarbageSizeLimitCoefficient = 0.2f.
* Unskipped the test "TextureDataInLoopManyTimes", which was failing
on Android devices.
Bug: b/280304441
Change-Id: Ibcced1d118ea8a1f347028b62d29cfbd9e38e8c0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4851252
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
27896999
|
2023-08-16T16:44:22
|
|
Vulkan: Flush pending suballoc garbage more often
* Added a counter to the renderer object to keep track of the pending
suballocation garbage.
* mPendingSuballocationGarbageSizeInBytes
* Once it surpasses a limit (mPendingSuballocationGarbageSizeLimit), it
will flush the context so the pending garbages can be freed.
* Currently the limit is based on the available heap sizes. It will
use a fraction of the largest memory heap size.
* The portion is currently kGarbageSizeLimitCoefficient = 0.2f.
* At the end of the render pass, it is checked if the limit has been
reached. If so, context flush will occur.
Bug: b/280304441
Change-Id: I08e6028cfe20059ece2b2e4e971ece897544cd6d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4787950
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
65220256
|
2023-09-18T12:29:59
|
|
Add ProgramOutput struct for ProgramExecutable::mOutputVariables
Right now ProgramExecutable::mOutputVariables is a vector of
sh::ShaderVariable. ShaderVariable. itself is not a POD struct and can't
memcpy. And most of variables are not needed for mOutputVariables. This
CL adds a custom struct for mOutputVariables so that we only store what
we actually needed and data can be memcpy.
Bug: b/275102061
Change-Id: I045d0618b6dab5f8d58afe40e55147d12987cf61
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4862977
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
602cc1f1
|
2023-09-18T11:59:22
|
|
Don't pack gl_TessLevelInner/Outer
Per the GL spec:
The built-in outputs gl_TessLevelOuter and gl_TessLevelInner are not
counted against the per-patch limit.
Bug: angleproject:3572
Change-Id: I9fb2255d730988e7bfd6b76f9b5fdab8c475c468
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4873400
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
1b450b92
|
2023-09-15T11:07:25
|
|
Vulkan: Fix buffer storage reuse bug when robustAccess is enabled
There is an optimization in vulkan backend that when the bufferData is
called and current storage size is big enough for new bufferData call,
we just reuse the storage. Mean while, when hasRobustAccess() is true,
we must use the VkBuffer with the exact user size that glBufferData call
provides so that driver can set proper access boundary. In order to
satisfy both requirement, if robust resource access is enabled, we
create a separate VkBuffer with the exact user provided size but bind to
the same memory. There is a bug here that if robustAccess is true, this
buffer of user provided size is not been recreated when storage is
reused but with different user size (both has same allocation size).
This causes we keep using the smaller VkBuffer and subsequently causes
missing triangles. This CL clears mBufferWithUserSize when size changes
and storage is reused.
The other bug here is that previously we are checking
isRobustResourceInitEnabled, which is incorrect. We should check
hasRobustAccess. This appears works for chrome possibly due to both are
enabled. This CL switches it to check hasRobustAccess.
This CL also renames mBufferForVertexArray to mBufferWithUserSize to
reflect what its true meaning.
Bug: chromium:1476475
Change-Id: I843cc3a705f8a582a97bc0307f03aa1eb9fad3ff
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4864003
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
503c0db1
|
2023-09-12T18:01:23
|
|
Add the missing multisample and rgb565-no-depth-no-stencil tests.
We need different --deqp-gl-config-name values
for different test applications, to create RenderTarget
with different properties needed for different test
applications, such as multisample, rgb formats.
This CL adds an array of
vector<const char*> gTestSuiteConfigParameters
to store the --deqp-gl-config-name
values for different test applications. Each element
in this array can hold multiple const char* values.
In the upcoming CLs, we can add more customized config
values for each test applications, such as
--deqp-screen-rotation for angle_deqp_gles*rotate*tests.
Rename the gEGLConfigName to gEGLConfigNameFromCmdLine.
The default value for gEGLConfigNameFromCmdLine is empty
string, and its value can be overwritten by specifying
--deqp-gl-config-name when running the tests from command
line. If we pass --deqp-gl-config-name from command line,
then use the value passed from the command line to replace
the values in gTestSuiteConfigParameters.
Bug: b/297901032
Change-Id: Ibf8762c55d7d0cdf7bcf33f384568587023b369c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4851048
Reviewed-by: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
29561184
|
2023-09-06T22:08:33
|
|
Remove forward-to-executable helpers from program
This helps avoid accidental usage of the executable that is in the
program instead of the installed executable in the GL context.
The program's executable is still accessed in specific cases of:
- During link
- GL program queries
Bug: angleproject:8297
Change-Id: I40a956e740944f2ecfbf6e4a3060aac08c21f7f3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4864448
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d62db89e
|
2023-09-18T13:30:54
|
|
Vulkan: Disable VK_EXT_host_image_copy on Fuchsia
An old version of VVL is used, causing incorrect failures.
Bug: angleproject:8341
Change-Id: I0fc605616671343a49fed6ff02ecd67eea672dca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4873440
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
f1345d1c
|
2023-08-02T14:23:59
|
|
Call ReleaseThread() entry point from ThreadCleanupCallback
Change relevant only for the Android platform.
Fixes problems:
1. Current code calls `thread->setCurrent(nullptr)` in
`Display::threadCleanup()` method, while not executing other code
that will actually unmake Context from current. This will affect
following EGL calls from the application's side in its own thread
cleanup callback. For example, calls to `eglMakeCurrent()` (to unmake
from current) or `eglReleaseThread()` will be no-op. This may lead to
memory leak if context was previously marked for destruction.
2. The `Display::threadCleanup()` did not also clears
the `CurrentValidContext`. This may cause crashes or other UB if an
application will call some GLES API in its thread termination
callback (for example `glFinish()`), if ANGLE already destroyed the
context in its ThreadCleanupCallback (use after delete).
3. Context will remain current to a thread that terminated. Current
implementation of GLES drivers on Mali/Adreno GPUs automatically
unmade context from current, so the application may make this context
current to some other thread. ANGLE should mimic this behavior to
avoid possible bugs.
All of the above problems may be fixed by simply calling from the
ThreadCleanupCallback either:
- MakeCurrent(t, d, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT)
- ReleaseThread(t)
This CL choose to call `ReleaseThread()` because this is the API that
the application may call in its own thread cleanup callback. And if
application's callback will be called later than ANGLE's callback, then
application's `eglReleaseThread()` call we be a no-op.
Even if the application does not have its own thread cleanup callback
(like most of the applications), there is no harm to call
`ReleaseThread()` anyway. The only difference with `MakeCurrent()` is
that it will also cleanup invalid objects and some other memory
depending on the backend.
This CL naturally replaces existing logic with Display termination when
there is no active threads thanks to the previous CL:
"Perform Display terminate(InternalCleanup) from makeCurrent()".
Bug: angleproject:6723
Bug: angleproject:8283
Test: angle_end2end_tests --gtest_filter=EGLContextSharingTest.ThreadCleanupCallback*
Test: angle_end2end_tests --gtest_filter=EGLContextSharingTest.UnmakeFromCurrentOnThreadExit*
Change-Id: I8c5b31f34f91c4bfdac165ac30c213ff5fef992e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4742383
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
c38f3374
|
2023-09-15T19:22:44
|
|
Fix "win-asan-test" random failures and timeouts
While exact reason for the failures is unknown, it seems like disabling
Vulkan Loader DLL unloading fixes the problem. More details in the issue
8347.
This CL also sets the variable on the Linux platform, because it does
not hurt and will probably help with similar issues.
Bug: angleproject:8347
Change-Id: I398d55a7c13f1ce6790988983fdf8fee7cc5776c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4868220
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
18f1b3b8
|
2023-09-18T10:01:12
|
|
Roll vulkan-deps from 33efdc70a008 to dc9947ad4d2b (13 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/33efdc70a008..dc9947ad4d2b
Changed dependencies:
* glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/323836e46b..efc33d1ee5
* vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/d40385b174..9dc0e31574
* vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/e7819d8916..867004beac
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,cnorthrop@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: cnorthrop@google.com
Change-Id: I8f55c6837b7843166e70e9d12d7d322e0caacb92
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4872057
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
8f703d87
|
2023-09-18T07:02:27
|
|
Roll Chromium from 0324498f6cbf to 0bbd400252a4 (699 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/0324498f6cbf..0bbd400252a4
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/7070803978..c5658c73de
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/7d64f08b6b..691073acd7
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/a43f7b6121..a65c4c3a2f
* third_party/android_build_tools/lint: 8KAvewZr1XyYqD4IiuVshJeP4y3lg9IgePdsKDz8S-QC..l5GhbN0RAcpoaj1qIS43ZX7AYnLxdF-rZJ0ruGu_iWAC
* third_party/android_build_tools/manifest_merger: Qeitc2DfBrFLUfzkJ3rcI9yHQiKQKC6nNDN89RtwNGgC..FlwnxEZ1wdjoQfedkF4MiZgo8pD48-_CJNA7RnU6as4C
* third_party/android_toolchain/ndk: R_8suM8m0oHbZ1awdxGXvKEFpAOETscbfZxkkMthyk8C..3vHltFqfgIw8wZ38ggGM9c7Eyw_AHZnwCgFIVtc9gngC
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1eb44db04a..0dfa3b81d7
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/f2e3352a0e..d7ba85d1eb
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/55030e041c..176c934642
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/24e9980b2f..c73590e223
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/b662560f84..44d802024e
* tools/skia_goldctl/linux: ESgfYW4L5Q_Q2351ztbGdFg0Ah6n00uuT_oMYgXyH8gC..O5Qnoa4MmsF8xWeyb3Q21JeZTv-xshcXDBNTFS0Pbm8C
* tools/skia_goldctl/mac_amd64: iCXL6g3XKCBXYlkzMZDeqGgTdEW9yRzsVCcs2W-37DUC..N0TF2Fb4AY_HGf_wkMFjMsShJ9KADsZEkZyxbBuGjyoC
* tools/skia_goldctl/mac_arm64: bggzdegdOzNu60PwM5sfR-MkL2LWBAHCHhsnyOuHO-UC..dhhDKAB9aDP4kBCiYZz4-8h4kkvsOmg5s9HqFtLpSqEC
* tools/skia_goldctl/win: Y82RNxTKD09wbNGEQlGS9HJf4fZRrSVq9cX6AZB7Q00C..OpzSEVB6-LaJ1-yaM5mISiNaWker0hgINXOgwOS0dGUC
No update to Clang.
Bug: None
Tbr: ianelliott@google.com
Change-Id: I3037471a7edd3894829684063a38f224227433fc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4869949
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
22b6ca1c
|
2023-08-21T00:00:00
|
|
Remove obsolete EXT_blend_func_extended expectations
Bug: angleproject:5981
Bug: angleproject:6585
Bug: angleproject:7177
Change-Id: I25da401f03ff0bfa7a77c3ce7a3fecd0a119d6a4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4870916
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
9d99f85f
|
2023-09-14T15:01:14
|
|
Add multithreaded texture upload test
Bug: angleproject:8341
Change-Id: I8561a64fb28681509a1d65c490888dfa1a423835
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4864467
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
b2e6a196
|
2023-09-11T15:27:20
|
|
Vulkan: Use VK_EXT_host_image_copy for texture uploads
Of all the scenarios where host image copy may be useful, this is likely
the most common case. There are numerous conditions for when the copy
may be done on the host:
- The image format must support it,
- It must be unused by the GPU,
- It must not have any pending updates (this can potentially be
mitigated if needed), and
- It must be in a host-copyable layout.
However, many texture uploads are done:
- To compressed formats, where support is highly likely,
- On init, where:
- the image is never previously used,
- the image has no previous uploads
- the image is in the UNDEFINED layout
which satisfies the conditions above.
As a result of this change, when the upload is done on the host,
creation of a temp buffer is avoided which greatly reduces memory
pressure (specially during app loading which is when most texture data
is uploaded) and may even improve performance (due to avoiding a double
copy).
Testing the first 3 frames of the following traces with a SwiftShader
implementation shows the amount of buffer allocated for staged uploads
changed as such:
- Black Desert: 185MB -> 65MB
- Genshin Impact: 125MB -> 12MB
- Asphalt 9: 138MB -> 0MB
Bug: angleproject:8341
Change-Id: Id71dcc4a7a0f8b67960d2d283fe9d19ce7429a03
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4856676
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
92218933
|
2023-09-15T10:33:49
|
|
Add VMA version to logcat
This is a temporary CL. It will be used to confirm that Android
uses VMA 3.0 with ANGLE as the default driver.
* Added the VMA version log when the renderer is being initialized.
Bug: b/295208838
Change-Id: I054a4e0e080aa5d06533bd7785eea608e14bba39
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4868086
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
cd8495b0
|
2023-09-14T20:00:32
|
|
Re-enable Metal on AMD FirePro.
Instead of disabling Metal altogether, test whether it works to just
disable the rescobeGlobalVariables compiler workaround on FirePro
devices.
Bug: angleproject:8317
Change-Id: Ia93a1fef04a387c5756d14660a2da4eb39b8db08
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4864732
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ffd6ec26
|
2023-09-07T15:39:19
|
|
Reland "Make egl surface uncurrent when being destroyed"
This relands commit 497440cdcb7d2ee59bca612dd07fc13cf09a6a57.
This is to workaround errors when app does below behaviors:
1) while there is a context still bound to the current
rendering thread and the surface, call eglDestroySurface()
2) create a new surface eglCreateWindowSurface()
3) call eglMakeCurrent() with the surface created in step 2)
4) does work on the new surface
The old surface won't be destroyed in step 1) because
it was still bound by the context of the current rendering
thread. When creating new surface on step 2), some hardware
will return error code EGL_BAD_ALLOC, because the old egl
surface is still associated with the native window.
To workaround, when destroying surface, if the surface
is still bound by the context of the current rendering
thread, release the context and surface by passing
EGL_NO_CONTEXT and EGL_NO_SURFACE to eglMakeCurrent().
The workaround is controlled by a frontend feature
uncurrentEglSurfaceUponSurfaceDestroy. This feature
is only enabled on vulkan backends.
Bug: b/292285899
Change-Id: Id4c47f1b20e0f90d1013a68893fd70e917c030e2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4867066
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
cc242e72
|
2023-09-15T14:26:20
|
|
Roll VK-GL-CTS from 58e66c9d2857 to 23a6249942af (8 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/58e66c9d2857..23a6249942af
2023-09-15 slawomir.cygan@intel.com Fix image layouts for storage image
descriptor and barrier stages
2023-09-15 michal.jakubek@mobica.com Treat DeviceIndex like ViewIndex.
2023-09-15 ziga@lunarg.com Add logs for vkCmdBindVertexBuffers2 tests
2023-09-15 piotr.byszewski@mobica.com Handle multidimensional arrays in
gen_framework
2023-09-15 ziga@lunarg.com Add tests for VK_EXT_host_image_copy
2023-09-15 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7
into vk-gl-cts/main
2023-09-12 lorenzo@khronosgroup.org Allow Vulkan CTS 1.3.7.0
2023-09-11 lorenzo@khronosgroup.org Split image.txt and
shader-object.txt mustpass into multiple files
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll
Please CC angle-team@google.com,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: If3ebdd660f35e9f46d373103caeead85dfa88f3f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4868080
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
d6af4977
|
2023-09-15T10:01:14
|
|
Roll vulkan-deps from f64a38bd0c7a to 33efdc70a008 (19 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/f64a38bd0c7a..33efdc70a008
Changed dependencies:
* spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/d790ced752..fc7d246276
* spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/fc54e178e9..a996591b1c
* vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/e2e3cb97b8..d40385b174
* vulkan-utility-libraries: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries.git/+log/ba0d57a514..10f76f75da
* vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/9ced253f51..e7819d8916
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: If256396fe02e825386cafba4b5c927a765483862
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4868077
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
e3794967
|
2023-09-15T07:36:40
|
|
Roll Chromium from a50e493e11b5 to 0324498f6cbf (556 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/a50e493e11b5..0324498f6cbf
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/7aea0d4843..7070803978
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/692dc363e0..7d64f08b6b
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/5cf0cb5238..a43f7b6121
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e407b66e5f..1eb44db04a
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/4a4428445d..f2e3352a0e
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/68a6f0b882..55030e041c
* third_party/r8: 3kYZB8oSh1P15bfu_s8B4M_5KPhjLhyidp2lyRVqWroC..g3ZKfFfRYNZNHJUs07J5hb92ua_jvjdrbo7I1R585uwC
* tools/luci-go: git_revision:fcec56a73e7375ba26e10e053cee92e06b4636ca..git_revision:8b73cff3b780a7136c4904103f19124d2be3dee1
* tools/luci-go: git_revision:fcec56a73e7375ba26e10e053cee92e06b4636ca..git_revision:8b73cff3b780a7136c4904103f19124d2be3dee1
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/18e77c0dbd..24e9980b2f
* tools/skia_goldctl/linux: FdyOkAznuQ7k2iieFXsUTpz6jBaUHPGw8fNxb1-0JLMC..ESgfYW4L5Q_Q2351ztbGdFg0Ah6n00uuT_oMYgXyH8gC
* tools/skia_goldctl/mac_amd64: 9RuiM5HJiEHkr27MLsTx04jOTEYQG-D_3P1BCrM03q4C..iCXL6g3XKCBXYlkzMZDeqGgTdEW9yRzsVCcs2W-37DUC
* tools/skia_goldctl/mac_arm64: tDNHYe-tSHHr68Th6urfIcXLngT2yJ2jCyZBQLAB5mYC..bggzdegdOzNu60PwM5sfR-MkL2LWBAHCHhsnyOuHO-UC
* tools/skia_goldctl/win: 3VsnMzWsw1jy9-ZgvgPjR5emUA1IwrCNkX8xYK8oxFgC..Y82RNxTKD09wbNGEQlGS9HJf4fZRrSVq9cX6AZB7Q00C
No update to Clang.
Bug: angleproject:8317
Tbr: ianelliott@google.com
Change-Id: Ia07bc5caac8acd337ea5f4725301b45371369347
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4867445
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
b4852ef9
|
2023-02-08T14:18:06
|
|
Vulkan: Drop support for Vulkan 1.0
Bug: angleproject:7959
Change-Id: Ib673679ea1a503af22b37092dbff1ee1fd34fba6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4233092
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
68bfa1ed
|
2023-08-22T22:02:15
|
|
Support for link to be entirely parallelized
The link job is split as such:
- Front-end link
- Back-end link
- Independent back-end link subtasks (typically native driver compile
jobs)
- Post-link finalization
Each step depends on the previous. These steps are executed as such:
1. Program::link calls into ProgramImpl::link
- ProgramImpl::link runs whatever needs the Context, such as releasing
resources
- ProgramImpl::link returns a LinkTask
2. Program::link implements a closure that calls the front-end link and
passes the results to the backend's LinkTask.
3. The LinkTask potentially returns a set of LinkSubTasks to be
scheduled by the worker pool
4. Once the link is resolved, the post-link finalization is run
In the above, steps 1 and 4 are done under the share group lock. Steps
2 and 3 can be done in threads or without holding the share group lock
if the backend supports it. Step 2 is not yet made independent of the
Context on some backends, and a frontend feature is used to make that
step either run on the main thread or as a worker thread.
Bug: angleproject:8297
Change-Id: I12f1e6bbaf365543dfcac969e166e0b5aa622104
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4808191
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3c5728f1
|
2023-09-14T08:19:06
|
|
Roll Chromium from 459a6b238bc8 to a50e493e11b5 (596 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/459a6b238bc8..a50e493e11b5
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/4420c4de06..7aea0d4843
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/b2043d4f43..692dc363e0
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/f79e60f037..5cf0cb5238
* third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/d7df3f77cd..c2ac88e292
* third_party/android_platform: https://chromium.googlesource.com/chromium/src/third_party/android_platform/+log/4b4eee2d24..eeb2d566f9
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/ddbdff3f20..e407b66e5f
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/bcba178212..4a4428445d
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/84fb809dd6..68a6f0b882
* third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/d3ed8c086c..f6a17c88dd
* third_party/r8: oP1tOCigL9cN6j-dfqmgRtMV5zOSZQ2IgaG11GSyNP0C..3kYZB8oSh1P15bfu_s8B4M_5KPhjLhyidp2lyRVqWroC
* third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/f5fd0ad266..235986452b
* tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/4bead2e08b..f1c4d9a146
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/7dff576917..31a7453f89
* tools/luci-go: git_revision:fe3cfd422b1012c2c8cf00d65cdb11aa2c26cd66..git_revision:fcec56a73e7375ba26e10e053cee92e06b4636ca
* tools/luci-go: git_revision:fe3cfd422b1012c2c8cf00d65cdb11aa2c26cd66..git_revision:fcec56a73e7375ba26e10e053cee92e06b4636ca
No update to Clang.
Bug: angleproject:8317
Tbr: ianelliott@google.com
Change-Id: Iafba04bdadd91a3d70f566e648be5ce88be366a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4865949
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
5afc76e3
|
2023-09-12T11:05:08
|
|
Disable Metal on AMD FirePro devices.
These older drivers are crashing in the driver for unknown reasons.
Only 0.5% of Chrome users are on these devices, so we'll disable
Metal on them.
Bug: angleproject:8317
Change-Id: Ia3ca5c3fa8e96aab903e15d989cfbd459679b15d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4859020
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
d3d81498
|
2023-09-11T16:11:33
|
|
Add metrics for shader compilation time and shader blob size
Log the time it takes for the system compiler to compile Metal and D3D
shaders.
Log the D3D shader blob size to get a sense of storage size needed.
Bug: chromium:1481238
Change-Id: I300102dcb035f42e91d7819cd9465ff18436abf3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4851196
Reviewed-by: Peng Huang <penghuang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
8a7ad933
|
2023-09-13T15:11:46
|
|
Revert "Make egl surface uncurrent when being destroyed"
This reverts commit 497440cdcb7d2ee59bca612dd07fc13cf09a6a57.
Reason for revert: this caused chromium webview tests failures: https://chromium-review.googlesource.com/c/chromium/src/+/4860891.
Original change's description:
> Make egl surface uncurrent when being destroyed
>
> This is to workaround errors when app does below behaviors:
>
> 1) while there is a context still bound to the current
> rendering thread and the surface, call eglDestroySurface()
> 2) create a new surface eglCreateWindowSurface()
> 3) call eglMakeCurrent() with the surface created in step 2)
> 4) does work on the new surface
>
> The old surface won't be destroyed in step 1) because
> it was still bound by the context of the current rendering
> thread. When creating new surface on step 2), some hardware
> will return error code EGL_BAD_ALLOC, because the old egl
> surface is still associated with the native window.
>
> To workaround, when destroying surface, if the surface
> is still bound by the context of the current rendering
> thread, release the context and surface by passing
> EGL_NO_CONTEXT and EGL_NO_SURFACE to eglMakeCurrent().
>
> The workaround is controlled by a frontend feature
> uncurrentEglSurfaceUponSurfaceDestroy. This feature
> is only enabled on vulkan and gl backends.
>
> Bug: b/292285899
> Change-Id: I872d2e116ba6860f58d1176f011a5ef7c5a5af4e
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4851255
> Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
> Reviewed-by: Charlie Lao <cclao@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Bug: b/292285899
Change-Id: I760054d856294e6691e79e165fd73ce9e560621f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4862958
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
297877bc
|
2023-09-13T10:01:57
|
|
Roll vulkan-deps from 822425619cd5 to f64a38bd0c7a (9 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/822425619cd5..f64a38bd0c7a
Changed dependencies:
* vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/1c827fd79c..e2e3cb97b8
* vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/d3c1c1ade0..a01cfc0b78
* vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/b8609302c8..9ced253f51
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: Ia38fa3b7c1bd4de491b8ca0da3300ea0d07f7f4d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4860377
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
b4848e85
|
2023-09-13T08:05:26
|
|
Roll Chromium from c661891ca003 to 459a6b238bc8 (608 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/c661891ca003..459a6b238bc8
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/1a25429fe3..4420c4de06
* buildtools/linux64: git_revision:cc56a0f98bb34accd5323316e0292575ff17a5d4..git_revision:991530ce394efb58fcd848195469022fa17ae126
* buildtools/mac: git_revision:cc56a0f98bb34accd5323316e0292575ff17a5d4..git_revision:991530ce394efb58fcd848195469022fa17ae126
* buildtools/win: git_revision:cc56a0f98bb34accd5323316e0292575ff17a5d4..git_revision:991530ce394efb58fcd848195469022fa17ae126
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/ce02ccbb6e..f79e60f037
* third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/ff414082cc..7ebbd1ea9b
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4ca9d0910a..ddbdff3f20
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/8babcb7e2e..bcba178212
* third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/d5209a75b3..d3ed8c086c
* third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/0568576055..d9b4abf6b6
* third_party/r8: fR4aBtFTaohfSjV_Y54-1MC5dV2cTK7iZrFUiGoVivgC..oP1tOCigL9cN6j-dfqmgRtMV5zOSZQ2IgaG11GSyNP0C
* third_party/siso: git_revision:d967f854b8fcd36e484df1b6677fb003a8f48a8b..git_revision:412571deccd76eb54f681963ca14e13c3efc63e1
* tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/438abc2caa..4bead2e08b
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/bea2565145..18e77c0dbd
No update to Clang.
Bug: angleproject:8315
Tbr: ianelliott@google.com
Change-Id: Ica0a5bc156efd51b6b8ea07c28113944b15a40f3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4860376
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
e1b80fac
|
2023-09-12T20:12:36
|
|
Manual roll SwiftShader from 4e40d502c440 to 7f4d495c89c2 (1 revision)
Manual roll requested by syoussefi@google.com
https://swiftshader.googlesource.com/SwiftShader.git/+log/4e40d502c440..7f4d495c89c2
2023-09-12 syoussefi@google.com Implement VK_EXT_host_image_copy
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,syoussefi@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: angleproject:8341
Tbr: ianelliott@google.com,syoussefi@google.com
Use-Permissive-Angle-Pixel-Comparison: True
Change-Id: I1c6d4da1861d5cc52cc94fd9a7100d3b5ed8620e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4859398
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
e7a77053
|
2023-09-12T13:40:47
|
|
Update VulkanMemoryTest after adding context flush
After adding context flushing to the memory allocation fallbacks
in a previous CL (https://crrev.com/c/4787949), some tests in the
VulkanMemoryTest suite no longer test the success path of the fallback
to wait for submitted commands to finish.
* Updated AllocateVMAImageAfterFreeing2DGarbageWhenDeviceOOM
* The test now uses an additional allocation and draw after the
first sync, followed by a second sync. During the allocation
of the last texture, it would wait to finish the submitted
command and free the garbage without flushing the whole context.
Bug: b/280304441
Change-Id: Idc583e120b8d9e1cc550f6cba4cb0b2b197e4944
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4860367
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
497440cd
|
2023-09-07T15:39:19
|
|
Make egl surface uncurrent when being destroyed
This is to workaround errors when app does below behaviors:
1) while there is a context still bound to the current
rendering thread and the surface, call eglDestroySurface()
2) create a new surface eglCreateWindowSurface()
3) call eglMakeCurrent() with the surface created in step 2)
4) does work on the new surface
The old surface won't be destroyed in step 1) because
it was still bound by the context of the current rendering
thread. When creating new surface on step 2), some hardware
will return error code EGL_BAD_ALLOC, because the old egl
surface is still associated with the native window.
To workaround, when destroying surface, if the surface
is still bound by the context of the current rendering
thread, release the context and surface by passing
EGL_NO_CONTEXT and EGL_NO_SURFACE to eglMakeCurrent().
The workaround is controlled by a frontend feature
uncurrentEglSurfaceUponSurfaceDestroy. This feature
is only enabled on vulkan and gl backends.
Bug: b/292285899
Change-Id: I872d2e116ba6860f58d1176f011a5ef7c5a5af4e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4851255
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
e7418836
|
2023-08-16T14:25:52
|
|
Vulkan: Add context flushing as OOM fallback
* As a new fallback for out-of-memory errors, if an allocation results
in device OOM, the context is flushed and the allocation is retried.
* Functions related to buffer/image allocations now return a VkResult
value instead of angle::Result, which will be bubbled up to a higher
level for safer handling.
* The OOM is no longer handled at the level where the allocation
happens, but is moved up to the context.
* Added two functions to ContextVk for allocating memory for images and
buffer suballocations, which also include the fallback options.
* initBufferAllocation(): Uses BufferHelper::initSuballocation()
* initImageAllocation(): Uses ImageHelper::initMemory()
* Moved initNonZeroMemory() out of the following functions:
* BufferHelper::initSuballocation()
* Moved to ContextVk::initBufferAllocation().
* ImageHelper::initMemory()
* Moved to ContextVk::initImageAllocation().
* Also moved to new function:
ImageHelper::initMemoryAndNonZeroFillIfNeeded().
This function replaced the rest of initMemory() usages outside
initImageAllocation().
* New macros for memory allocation
* VK_RESULT_TRY()
* If the output of the command inside it is not VK_SUCCESS, it will
return with the error result from the command.
* VK_RESULT_CHECK()
* If the output of the command inside it is not VK_SUCCESS, it will
return with the input error.
* Added a test in which allocation would fail due to too much pending
garbage without the fix on some platforms. The test ends once there
has been a submission.
* New suite: UniformBufferMemoryTest
* Added a similar test for flushing texture-related pending garbage.
* New suite: Texture2DMemoryTestES3
Bug: b/280304441
Change-Id: I60248ce39eae80b5a8ffe4723d8a1c5641087f23
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4787949
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2fe7bbae
|
2023-09-07T13:21:29
|
|
Tests: Add Oxenfree trace
Test: angle_trace_tests --gtest_filter=TraceTest.oxenfree
Bug: b/298613720
Change-Id: Ie577dff75faf58ee97c0898a28766e9ed7c87459
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4851250
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
ce263437
|
2023-09-11T12:25:28
|
|
Vulkan: Perform CPU wait in clientWait outside the global lock
Leverage UnlockedTailCall and move the CPU side wait
during a clientWait outside of the global mutex lock.
Bug: angleproject:8340
Tests: FenceSyncTest.BasicOperations*
Tests: EGLSyncTest.EglClientWaitSync*
Change-Id: I8c05e62e74cc64d38bf8797d28faaf49135e71fc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4851649
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
b185c3ea
|
2023-09-11T12:28:43
|
|
Vulkan: Add host-image-copy usage to images when optimal
The change currently doesn't actually copy on host, but prepares the
image for it.
Bug: angleproject:8341
Change-Id: I4458712dca46ef9872020e158a3f902e94f5eb93
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4856146
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
6553225d
|
2023-09-11T11:33:19
|
|
Vulkan: Refactor image usage/flags support check logic
The function that checks whether a format supports a specific usage is
moved to ImageHelper. For VK_EXT_host_image_copy, Renderbuffer, AHB etc
may also use this function.
Bug: angleproject:8341
Change-Id: I6ebc06f97fd29e66aa8d43fcf045f51717d27864
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4856144
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a469a5d3
|
2023-09-12T17:28:14
|
|
Hide mac-exp-test from LUCI console
Experiments were finished
Bug: chromium:1456549, chromium:1462473, chromium:1464635
Change-Id: I55f3da2578c84f3d622a5027c07aafed6d02241b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4859442
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
|