|
806c80ec
|
2025-08-14T13:41:58
|
|
Add a new ShaderVariable struct property
Add a new ShaderVariable struct property isTransformedFP16FloatUniform.
This property will be set by compiler when the corresponding shader
variable data type in shader code is transformed from 32 bit to
16 bit. The property value be later passed to LinkedUniform so that
the frontend knows if it should transform the data from 32 bit to 16
bit before writing to memory, and if it should transform the data
from 16 bit to 32 bit after reading from memory.
This change is no op.
Bug: angleproject:405795981
Change-Id: Iaae15baa8ab9f7c3295071fa1e1ab04752bd69bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6852396
Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
25f5e2cf
|
2025-08-13T17:03:19
|
|
Vulkan: Add support for built-in gl_PrimitiveShadingRateEXT
Add support for built-in gl_PrimitiveShadingRateEXT and relative const
value.
Bug: angleproject:397255625
Change-Id: I25d51f5805697e137b232175ee790808c45850b7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6845515
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
240f6af8
|
2025-08-12T14:32:40
|
|
Capture/Replay: Pick up API SSBO binding changes
GenerateLinkedProgram pulled uniform block bindings from
inShaderBindings, but for trace this does not pick up API-side
changes to the bindings with glUniformBlockBinding calls for
example, resulting in missing geometry in some games.
Test: angle_trace_tests --gtest_filter=*onmyoji
Bug: b/438231427
Change-Id: I1b95c004c4fd856dc8b3a91cdef3e9251a275ca6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6842217
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
|
|
42a59dcd
|
2025-08-15T03:01:23
|
|
Roll SwiftShader from 98d09f8e88db to fed7f25ca957 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/98d09f8e88db..fed7f25ca957
2025-08-13 swiftshader.regress@gmail.com Regres: Update test lists @
98d09f8e
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,geofflang@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in SwiftShader:
https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: geofflang@google.com
Use-Permissive-Angle-Pixel-Comparison: True
Change-Id: I2cc99db2ed831a02d0b5287c64e4b1aa1093c51d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6853859
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
1d8279a2
|
2025-08-13T13:35:02
|
|
Do not sort ANGLE internal uniforms or built-in uniforms
On Mac, for webGL app on chrome, if the uniforms added by ANGLE
are not placed at the top of the ANGLE_UserUniforms struct, the user
defined uniforms in the same ANGLE_UserUniforms struct seem to be
messed up and not read correctly by shader code. This change fixes
it by moving the sortUniforms() function call to the place before we
add ANGLE internal uniforms. That way ANGLE internal uniforms will
be inserted later and stay on top of ANGLE_UserUniforms struct.
Bug: chromium:437678149
Change-Id: I34a0d3dcb98c5fe30ad248381ecb5f7f78252275
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6847281
Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
9034e29b
|
2025-08-14T13:25:39
|
|
Vulkan: add a feature flag controlling float uniforms 16-bit transform
Add a feature flag that will guard whether we want to transform
mediump / lowp float uniforms from 32-bit to 16-bit in SpirV.
The feature flag is enabled when VK_KHR_16bit_storage extension is
supported, and uniformAndStorageBuffer16BitAccess vulkan feature is
supported.
The feature flag is initialized to false in this change. It will be
turned on in a later change when it is being used.
Bug: angleproject:405795981
Change-Id: I37c77270fbd391cc97f58890065b66faf77766c1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6852395
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
63d8f74c
|
2025-08-12T19:39:03
|
|
WGSL: move DeclareDefaultUniforms() out of SPIR-V
WGSL needs the same thing (default uniforms gathered into
an interface block).
Changes 3 things in the file move:
1. Now capable of adding a named interface block (Vulkan's
is nameless) to hold the default uniforms.
2. Removes inactive uniforms
3. Deals with the case where there are no active default
uniforms, by not declaring an interface block at all.
Bug: angleproject:376553328
Change-Id: Ia25318b4db93068010c3c44414cd00803b783799
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6843929
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
|
|
7ad67712
|
2025-08-13T16:33:03
|
|
CL/Vulkan: Enable cl_khr_integer_dot_product extension
- Enabled extension string and corresponding opencl_c features
- Updated packed_cl_enums.json with three new enums
- Enabled support for this extension in function clGetDeviceInfo
- Add support for CL_DEVICE_OPENCL_C_FEATURES API query through
clGetDeviceInfo corresponding integer_dot_product extension
- Updated vk_features.json with new ANGLE Feature
supports_shader_integer_dot_product
- The changes in autogen files are generated by running the
run_code_generation.py script
Tests-Passing:
ocl_cts: test_integer_ops integer_dot_product
ocl_cts: test_compiler features_macro
VK-GL-CTS:dEQP-VK.spirv_assembly.instruction.compute.opsdotkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opudotkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opsudotkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opsdotaccsatkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opsudotaccsatkhr.*
Bug: angleproject:433980939
Change-Id: Iae7a7753d0556beeb85c254c61a37a0d047df058
Signed-off-by: Hareesh Karada <hareesh.k@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6785089
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
2eef3701
|
2025-08-11T20:25:42
|
|
FrameCapture: Handle null texture in MEC
When interating through a UnsafeResourceMapIter, we need to
check for null entries before dereferencing.
Test: Fortnite MEC
Bug: b/180418810
Change-Id: I0dc234234f9bb219026b2b67febb32e8af19e8b1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6839286
Reviewed-by: Xiang Wang <xwxw@google.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Xiang Wang <xwxw@google.com>
|
|
edb05627
|
2025-08-12T12:17:36
|
|
Fix sort uniform bug
Current sort doesn't take care of the case when both uniforms
are struct specfiers. Given that struct types are easily broken by
sort, make the sort not reordering uniforms if both are structs.
Bug: b/437825940
Change-Id: Idda1810ac4234f7e1547735e4e09658ab0a57eed
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6842936
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
60e3f72a
|
2025-08-14T11:16:06
|
|
Revert "Roll Chromium from a7c02b33f4fa to 62e63b840dcd (617 revisions)"
This reverts commit 94c74b65d8457bff27adeabb175e9316c25682ba.
Reason for revert: v8 crash on
https://ci.chromium.org/ui/p/chromium/builders/ci/linux-angle-chromium-intel/115164/overview
Bug: None
Original change's description:
> Roll Chromium from a7c02b33f4fa to 62e63b840dcd (617 revisions)
>
> https://chromium.googlesource.com/chromium/src.git/+log/a7c02b33f4fa..62e63b840dcd
>
> 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,geofflang@google.com on the revert to
> ensure that a human
> is aware of the problem.
>
> To file a bug in Chromium:
> https://bugs.chromium.org/p/chromium/issues/entry
> To file a bug in ANGLE:
> https://bugs.chromium.org/p/angleproject/issues/entry
>
> To report a problem with the AutoRoller itself, please file a bug:
> https://issues.skia.org/issues/new?component=1389291&template=1850622
>
> Documentation for the AutoRoller is here:
> https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
>
> Changed dependencies
> * build: https://chromium.googlesource.com/chromium/src/build.git/+log/54b614ad17..e26806d941
> * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/6bce2b528b..7b1e40ac7f
> * buildtools/linux64: git_revision:cc7c61e105fb56183fd6c5c52bbe3c37ff724a0d..git_revision:c15bfa41e5266dcce4161968ab4eb0387cae7a7a
> * buildtools/mac: git_revision:cc7c61e105fb56183fd6c5c52bbe3c37ff724a0d..git_revision:c15bfa41e5266dcce4161968ab4eb0387cae7a7a
> * buildtools/win: git_revision:cc7c61e105fb56183fd6c5c52bbe3c37ff724a0d..git_revision:c15bfa41e5266dcce4161968ab4eb0387cae7a7a
> * testing: https://chromium.googlesource.com/chromium/src/testing/+log/fb889d0363..cc7f7eaea1
> * third_party/android_build_tools: https://chromium.googlesource.com/chromium/src/third_party/android_build_tools/+log/f43e2cc47f..d8f491e447
> * third_party/android_build_tools/nullaway/cipd: mFkUqdlIqmMQ3rAaTHFmOBYjNFgFUQOmMlPG6PGgmHYC..Zk_ffB0B6qGrr2ZDKqCxAgnPmo4-5giVRIauRffZaZYC
> * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/973ea8c7c6..13878d879f
> * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/8dc29cff6c..1988bb4841
> * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/eddc72dce5..ae986eff19
> * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/82c07b9654..56fffe72d2
> * third_party/r8/cipd: qD5apdNjxRv3dBblf27nEZYf7r_pbLEgfN7hWyXvP_UC..pBaBgtFdvclLMBwz1H7s88bhc3ioF8iEyFh6rZ81054C
> * third_party/re2/src: https://chromium.googlesource.com/external/github.com/google/re2.git/+log/85c7c0fb11..a4b2aeed3a
> * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/5de5e7b6ba..a6fcae88ae
> * third_party/siso/cipd: git_revision:2643989eca46dcd64a8d8f0ba842016b203e97b8..git_revision:036cd5f39e6b81724e5af3ef37f4fa432b5405e6
> * third_party/turbine/cipd: TkTaFqF4Bs-JmFtxFV_Nfh4u5jh_401ZQsLhC7vIEqQC..9ZS5YYFBth7RSqNe7VLip-qJhk00WoicV_Qb0byHna8C
> * tools/luci-go: git_revision:2aa8d904a9f8cc8891d2710e4cf58156057fa4b3..git_revision:29cc373045f98f684026b780492e5008bff2b84e
> * tools/luci-go: git_revision:2aa8d904a9f8cc8891d2710e4cf58156057fa4b3..git_revision:29cc373045f98f684026b780492e5008bff2b84e
> * tools/luci-go: git_revision:2aa8d904a9f8cc8891d2710e4cf58156057fa4b3..git_revision:29cc373045f98f684026b780492e5008bff2b84e
> * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/c5719eb114..17d3804b38
> * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/c1a26b544f..8377324335
> * tools/rust: https://chromium.googlesource.com/chromium/src/tools/rust.git/+log/fa1df48579..82a20975ce
> * tools/skia_goldctl/linux: 84tAKAqEtqjebJywg8jyXDWUVodNBYZraFt9RZ0A2pwC..rs4kNy3WxYX8RF95dArFDycOQpLdkegUSAvjqlQnVnQC
> * tools/skia_goldctl/mac_amd64: dpgLOuWsqpBYSIj44DbnlJD7fnp640TD4cprUlwV0VMC..vH133SLPYqFW6LGzMTKIOdPlUZrpdikqcAfjufZMqLIC
> * tools/skia_goldctl/mac_arm64: AU5OTil4VjYO94g8-Jhq02qBoLka6t-JsgKKEzllcy8C..xPhqMsRJuxnknusAGo0SB26j6d5VOZUPTBLPioC0WVUC
> * tools/skia_goldctl/win: DW55Ki0OZtTTzxrsItNbFeB9IDA9GBVXB647W6SOLN4C..xJAKZtm5N9Q92_wReRzapzXG_dTJ0T5zzcPjzuKl4ioC
> No update to Clang.
>
> Bug: None
> Tbr: geofflang@google.com
> Change-Id: I159bbae28229495e48c1bc3bac90ba32f07ce95f
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6840997
> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bug: None
Change-Id: Idf12240dab96320dbeb96500bd3f5ec09486ba4c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6850309
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
899f3505
|
2025-08-07T09:59:19
|
|
TestSuite: Android: Call onCrashOrTimeout() on test crash
Currently, when a test crashes on Android we don't get any results for
tests that ran or for the crashing test itself. This makes it difficult
for developers to debug the issue, since they don't know which test
crashed.
Add signal handlers which call onCrashOrTimeout() when a test crashes.
Typically, crashes occur within the individual tests rather than in the
test runner (TestSuite), so it should be "safe" to attempt to dump the
results up to and including the crash to aid with debugging.
This is still risky since things are in a bad state, but we expect
(essentially) all crashes to be in the individual tests, ANGLE, or the
underlying driver code, rather than in the TestSuite instance, so
writing the results JSON file should have a good chance of succeeding.
Worst case, we just crash again and get nothing (like we have before
this change).
Bug: b/279980674
Change-Id: Ifd5f3b97d5af731586e7bbf765bb60b3cb4f503b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6827986
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Solti Ho <solti@google.com>
|
|
94c74b65
|
2025-08-12T09:32:33
|
|
Roll Chromium from a7c02b33f4fa to 62e63b840dcd (617 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/a7c02b33f4fa..62e63b840dcd
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,geofflang@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in Chromium:
https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Changed dependencies
* build: https://chromium.googlesource.com/chromium/src/build.git/+log/54b614ad17..e26806d941
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/6bce2b528b..7b1e40ac7f
* buildtools/linux64: git_revision:cc7c61e105fb56183fd6c5c52bbe3c37ff724a0d..git_revision:c15bfa41e5266dcce4161968ab4eb0387cae7a7a
* buildtools/mac: git_revision:cc7c61e105fb56183fd6c5c52bbe3c37ff724a0d..git_revision:c15bfa41e5266dcce4161968ab4eb0387cae7a7a
* buildtools/win: git_revision:cc7c61e105fb56183fd6c5c52bbe3c37ff724a0d..git_revision:c15bfa41e5266dcce4161968ab4eb0387cae7a7a
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/fb889d0363..cc7f7eaea1
* third_party/android_build_tools: https://chromium.googlesource.com/chromium/src/third_party/android_build_tools/+log/f43e2cc47f..d8f491e447
* third_party/android_build_tools/nullaway/cipd: mFkUqdlIqmMQ3rAaTHFmOBYjNFgFUQOmMlPG6PGgmHYC..Zk_ffB0B6qGrr2ZDKqCxAgnPmo4-5giVRIauRffZaZYC
* third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/973ea8c7c6..13878d879f
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/8dc29cff6c..1988bb4841
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/eddc72dce5..ae986eff19
* third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/82c07b9654..56fffe72d2
* third_party/r8/cipd: qD5apdNjxRv3dBblf27nEZYf7r_pbLEgfN7hWyXvP_UC..pBaBgtFdvclLMBwz1H7s88bhc3ioF8iEyFh6rZ81054C
* third_party/re2/src: https://chromium.googlesource.com/external/github.com/google/re2.git/+log/85c7c0fb11..a4b2aeed3a
* third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/5de5e7b6ba..a6fcae88ae
* third_party/siso/cipd: git_revision:2643989eca46dcd64a8d8f0ba842016b203e97b8..git_revision:036cd5f39e6b81724e5af3ef37f4fa432b5405e6
* third_party/turbine/cipd: TkTaFqF4Bs-JmFtxFV_Nfh4u5jh_401ZQsLhC7vIEqQC..9ZS5YYFBth7RSqNe7VLip-qJhk00WoicV_Qb0byHna8C
* tools/luci-go: git_revision:2aa8d904a9f8cc8891d2710e4cf58156057fa4b3..git_revision:29cc373045f98f684026b780492e5008bff2b84e
* tools/luci-go: git_revision:2aa8d904a9f8cc8891d2710e4cf58156057fa4b3..git_revision:29cc373045f98f684026b780492e5008bff2b84e
* tools/luci-go: git_revision:2aa8d904a9f8cc8891d2710e4cf58156057fa4b3..git_revision:29cc373045f98f684026b780492e5008bff2b84e
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/c5719eb114..17d3804b38
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/c1a26b544f..8377324335
* tools/rust: https://chromium.googlesource.com/chromium/src/tools/rust.git/+log/fa1df48579..82a20975ce
* tools/skia_goldctl/linux: 84tAKAqEtqjebJywg8jyXDWUVodNBYZraFt9RZ0A2pwC..rs4kNy3WxYX8RF95dArFDycOQpLdkegUSAvjqlQnVnQC
* tools/skia_goldctl/mac_amd64: dpgLOuWsqpBYSIj44DbnlJD7fnp640TD4cprUlwV0VMC..vH133SLPYqFW6LGzMTKIOdPlUZrpdikqcAfjufZMqLIC
* tools/skia_goldctl/mac_arm64: AU5OTil4VjYO94g8-Jhq02qBoLka6t-JsgKKEzllcy8C..xPhqMsRJuxnknusAGo0SB26j6d5VOZUPTBLPioC0WVUC
* tools/skia_goldctl/win: DW55Ki0OZtTTzxrsItNbFeB9IDA9GBVXB647W6SOLN4C..xJAKZtm5N9Q92_wReRzapzXG_dTJ0T5zzcPjzuKl4ioC
No update to Clang.
Bug: None
Tbr: geofflang@google.com
Change-Id: I159bbae28229495e48c1bc3bac90ba32f07ce95f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6840997
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
cfeea900
|
2025-08-12T17:23:32
|
|
Vulkan: Don't require COLOR_ATTACHMENT_BLEND_BIT for YUV format
The only way to render to yuv texture is via EXT_yuv_target, but
EXT_yuv_target spec
https://registry.khronos.org/OpenGL/extensions/EXT/EXT_YUV_target.txt
explicitly said you have to disable blend: "Blending applies only if the
color buffer has a fixed-point format and non YUV space format color
buffer.". Thus when we check if format supports rendering, we should
exclude VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT if its YUV format.
Bug: b/432398245
Change-Id: If5bfa58db30465ab707f63f34dd6487d8a03652f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6843926
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
ef4bc113
|
2025-08-07T14:20:08
|
|
Add DIR_METADATA to specific buganizer_public component_id
Currently LUCI Analysis file bugs for angle test flaky issue under the
top level Chromium component, example: http://crbug.com/401993176
These bugs should filed directly under the Public Trackers > ANGLE, to
avoid engineers updating the component manually.
Bug: b/437142709
Change-Id: Ie8fa4f02fea10c49cb94d736f674f655fe9f791b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6829151
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
9d1edb4e
|
2025-08-08T18:21:03
|
|
Fix the assert on texture target to allow GL_TEXTURE_CUBE_MAP_ARRAY
Add anend2end test to verify glCopyImageSubData works.
Bug: b/419863436
Test: TextureCubeTestES32.CopyImageSubDataCubeMapArray
Change-Id: I2a569680ed20f05b4182045cb4bdf08d4c66d8df
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6832639
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Xiang Wang <xwxw@google.com>
|
|
7e28089b
|
2025-07-31T18:44:01
|
|
WGSL: support bvecs in uniforms
WGSL does not allow booleans in the uniform address space.
The last CL uses u32s to represent bools in the uniform address
space, and this CL uses vecN<u32> to represent bvecN.
Bug: angleproject:376553328
Change-Id: Ibf9f1fbf230ca03dd3d4661ba599e5fb1cb26ac4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6808955
Reviewed-by: Liza Burakova <liza@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
|
|
f92d6f4b
|
2025-04-07T17:42:46
|
|
CL: Route API trace to logcat for Android
For better logging when running Android APKs
Bug: angleproject:433980940
Change-Id: Ib924262a92728d0a9711a5b98f051634341859d4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6785090
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5fb77159
|
2025-08-12T15:21:25
|
|
Add stubs for GL_ARM_texture_unnormalized_coordinates
Bug: angleproject:352345942
Change-Id: I05e2b0c83f07bfe35eb58fc657b834f6253d4cb9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6839660
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Shufen Ma <Shufen.Ma@arm.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
88357fc3
|
2025-08-11T10:01:18
|
|
Roll vulkan-deps from 588672b6b2e5 to faf017592714 (14 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/588672b6b2e5..faf017592714
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/0d614c24699d986afd590b93a8c0f0946e997919..b4e66d7b148ea1c245e1a66c2f3abf6c1103fc59
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/b8b90dba56eb8c75050a712188d662fd51c953df..5e7108e11015b1e2c7d944f766524d19fb599b9d
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/a01329f307fa6067da824de9f587f292d761680b..2e0a6e699e35c9609bde2ca4abb0d380c0378639
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/07aa86589862b3888c3f09a11bbb34243f1efc13..be3fe40144f269d0e834693f966443c6c24a6962
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/b149d5c52c06836ab333ba571791f79a9fb8eb50..4f4c0b6c61223b703f1c753a404578d7d63932ad
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/438279c224e786e44aa1027fff9b51b3b1ba8520..3218d4c9923db10e1184701e970b993e2588b334
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,geofflang@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: geofflang@google.com
Change-Id: I694531cd0366c88bc5888107e87e878027e97fdc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6835266
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
316e6831
|
2025-08-08T14:14:20
|
|
Vulkan: Support KHR versions of surface/swapchain_maint1
They are straight promotions of the EXT versions of the extensions.
Bug: angleproject:430106352
Change-Id: I889dfda99d8ad35de1672914e7cc73b2879be6a2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6832392
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2a5ad67c
|
2025-08-12T10:23:10
|
|
Tests: Skip CapturedTestCL to unblock vulkan-deps roll
Test: angle_end2end_tests --gtest_filter=CapturedTestCL.*
Test: capture_tests.py
Bug: angleproject:438195622
Change-Id: I9dd0f861ce4325c29305aa8de598f3434ec86ab3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6842935
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b2e2766c
|
2025-08-12T11:08:46
|
|
Translator: Reject bool < bool
This is not allowed per the GLSL ES spec.
Bug: chromium:437983671
Change-Id: I9bd46718a35917dcdf6382cd51253ca2b68d5636
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6842555
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
540c5965
|
2025-08-12T03:01:44
|
|
Roll SwiftShader from 1a72692154cc to 98d09f8e88db (3 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/1a72692154cc..98d09f8e88db
2025-08-11 swiftshader.regress@gmail.com Regres: Update test lists @
1a726921
2025-08-11 syoussefi@google.com Implement
VK_KHR_surface/swapchain_maintenance1
2025-08-11 syoussefi@google.com Update Vulkan headers to version 1.4.321
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,geofflang@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in SwiftShader:
https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: geofflang@google.com
Use-Permissive-Angle-Pixel-Comparison: True
Change-Id: I281100cda7743a3d42f3e69803913e05e2e4796e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6840058
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
61140fa9
|
2025-08-12T17:43:27
|
|
Remove references to is_nacl
Nacl is gone.
Bug: chromium:40511454
Change-Id: Ifda638d2700073d1e4ff02871f091ed9b7542eb4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6840417
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3643c21d
|
2025-08-11T15:02:18
|
|
Suppress oclcts NonUniform Workgroup failures pt.2
Suppress 2 other non-uniform workgroup
smoke tests (as a stop-gap) until we root-cause
the issue.
Unblocks:
https://chromium-review.googlesource.com/c/angle/angle/+/6831861/1
Bug: angleproject:42267085
Change-Id: I956d3706e160f38e33e5789e70abdc343fac8b54
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6838877
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
555b2328
|
2025-08-08T13:32:13
|
|
BindVertexBuffer should pick up buffer change in other context
Buffer is modified in the first context and calling glBindVertexBuffer()
of the same buffer on the second context should pick up the buffer
changes made in first context.
Bug: b/433331119
Change-Id: I694f66b38b11b87e0efa8d9b939f8384120823af
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6830125
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
9a23635c
|
2025-08-09T18:17:33
|
|
Tests: Add Frost and Flame trace
Test: angle_trace_tests --gtest_filter="*frost_and_flame*"
Bug: b/437598600
Change-Id: Icf8c5ce3e0e1f0cadc442aedc8b38a70efb1e3f7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6834277
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
|
|
f255a887
|
2025-08-11T07:02:14
|
|
Roll Chromium from e6155ca57dc6 to a7c02b33f4fa (796 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/e6155ca57dc6..a7c02b33f4fa
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,geofflang@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in Chromium:
https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Changed dependencies
* build: https://chromium.googlesource.com/chromium/src/build.git/+log/94272db917..54b614ad17
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/5f342e9223..fb889d0363
* third_party/android_build_tools/error_prone/cipd: 56Xo0VEDkKxzOr5L7pafI6SaIY2S7wnOOcgy4CNSANEC..wQ_Wsj0aINAwt4LrHHM6IEnMhVEAdvQtBFtLv7YL4PoC
* third_party/android_build_tools/lint/cipd: VZgk5wz1BPF6SWy4Z3CMhSYeolfmz7D8QoXkNgimoXoC..XO6ykSsPN632w1Hwz4YCLW0qC1KhVCn53F8FdJeuhKUC
* third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/47abf56825..973ea8c7c6
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4cf600c459..8dc29cff6c
* third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/af814cb1fe..82c07b9654
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/4ed4c20a21..9d91ec919b
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/eeae4c6391..c1a26b544f
No update to Clang.
Bug: None
Tbr: geofflang@google.com
Change-Id: I5afc680ef28cd03e92dbd867556a3e2c370a563c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6834634
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
5f5baf86
|
2025-08-08T10:22:07
|
|
Reduce WebGLCompatibilityTest::L32FTextures test time
This test is looping formats. Within each loop it compile the same
program which makes this test take very long to finish. This CL caches
the programs so that it only compile/link once. This reduce this test
run time on my local gLinux box from 1633 ms to 326 ms.
Bug: angleproject:40096431
Change-Id: I32d7ad4fd25e1e4130766578fff21b1a2058c183
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6830119
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
9367369d
|
2025-08-08T16:56:58
|
|
Tests: Add Kingshot trace
Test: angle_trace_tests --gtest_filter="*kingshot*"
Bug: b/437417676
Change-Id: I6c4a7a095266f6f99b0810854acbbfb50024d52f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6832638
Reviewed-by: Solti Ho <solti@google.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
ca3d732d
|
2025-07-24T16:22:31
|
|
WGSL: support bool in uniforms
WGSL does not allow booleans in the uniform address space.
This CL changes the translator to substitute u32 for bool
in the uniform address space, and convert it to bool on use.
Arrays of bools are obviously arrays of u32s, and those
will need special conversion functions to convert the entire
array<u32> to array<bool> if necessary.
This also includes the optimization of an array<bool> in a
uniform--when indexing into it, only the indexed element
will be converted to a native bool, instead of converting
the entire array and then indexing.
Note that substituting u32 for bool matches std140, so this
change requires no changes to layout of uniforms.
Also note that WGSL really likes explicit casts, so there's
not really a way to avoid inserting explicit casts everywhere
when using u32.
Bug: angleproject:376553328
Change-Id: I8f72e55c6b401c28ff622622df7a450b7032721f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6785609
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Liza Burakova <liza@chromium.org>
|
|
41e44587
|
2025-08-06T20:04:23
|
|
BufferBindingMask in VertexArray::onBufferChanged are same buffer
The bufferBiningMask bits received from VertexArray::onBufferChanged()
must point to the same buffer, in case of one buffer is bound to
multiple binding points. We can do some minor optimization here when we
loop the BufferBindingMask bits: We only need to calculate hasConflict
once when we call updateCachedTransformFeedbackBindingValidation().
Bug: b/433331119
Change-Id: I9f7cfa543deb46cd369915293b97f5d3122e1708
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6826782
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
d63cff37
|
2025-08-06T13:31:02
|
|
Fix bug when rebind the same buffer not pick up the change
Buffer is modified in one context and rebind the same buffer on the
second context should pick up the buffer changes.
Bug: b/433331119
Change-Id: I8085fe826c339692881f2d3d6515efb19bbc4a88
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6825767
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
8796f68c
|
2025-08-07T14:25:19
|
|
Tests: Add Top Heroes: Kingdom Saga trace
Test: angle_trace_tests --gtest_filter="*top_heroes_kingdom_saga"
Bug: b/437162076
Change-Id: Ia690266b34f0da0c23fbd099ed28f20657529644
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6828593
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
7c8e357c
|
2025-07-15T17:24:25
|
|
Fix NULL handling in glGetAttachedShaders and ShaderPrecisionFormat
Fix the case where passing NULL to the shaders parameter in
getAttachedShaders and to the range and precision parameters in
getShaderPrecisionFormat would trigger assertions.
Bug: angleproject:431900689
Change-Id: I0d01bbb0d13f9a4704b47066c85ac7c1368534a0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6733749
Auto-Submit: Tingwei Guo <tingwei.guo@arm.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
9fc25039
|
2025-08-08T03:01:54
|
|
Roll SwiftShader from fdb6700ecb04 to 1a72692154cc (4 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/fdb6700ecb04..1a72692154cc
2025-08-08 dneto@google.com kokoro: vs2022: explicitly configure x64
2025-08-07 dneto@google.com kokoro: use vs2022 instead of vs2019
2025-08-06 natsu@google.com Update SPIRV-Tools targets for Android after
latest update
2025-08-06 syoussefi@google.com Update SPIR-V Headers to 97e96f9e9 and
SPIR-V Tools to 3aeaaa088
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,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://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: syoussefi@google.com
Use-Permissive-Angle-Pixel-Comparison: True
Change-Id: I6d1722342a4300ac7ee095a86708659a8eb8ec8e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6832275
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b778f1ce
|
2025-08-07T15:31:01
|
|
Balance test shards to 10 minutes
Shards increased due to googletest roll:
angle_end2end_tests on Win ASAN: 10 -> 14
angle_deqp_gles3_tests on Linux ASAN and TSAN: 8 -> 11
Drive-by shards increase for slowness which was not investigated:
angle_end2end_tests:
on Linux Intel and Windows and Linux NVIDIA: 2 -> 3
on Win Intel experiment (UHD 770, 2 processes): 3 -> 5
on Win Intel (UHD 630, 1 process): 4 -> 10
angle_restricted_trace_gold_tests
on Linux Intel and Windows and Linux NVIDIA: 1 -> 3
on Win Intel UHD 770: 1 -> 4
on Win Intel UHD 630: 1 -> 5
angle_trace_perf_vulkan_tests
on Win Intel UHD 770: 2 -> 4
on Win Intel UHD 630: 2 -> 3
Skip EGLDisplayTest.ContextLeakAfterTerminate on Linux Intel,
which started failing with the new sharding.
Bug: angleproject:428697844, angleproject:437259106
Change-Id: I3ba458aa7b68bddf9786bb9fcbc2a3ed7479556c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6827389
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
7f0fa360
|
2025-08-08T07:02:17
|
|
Roll Chromium from 38622a565a0f to e6155ca57dc6 (551 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/38622a565a0f..e6155ca57dc6
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,syoussefi@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in Chromium:
https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Changed dependencies
* build: https://chromium.googlesource.com/chromium/src/build.git/+log/b0a7830b79..94272db917
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/16b1d7d539..6bce2b528b
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/6b4f7b3aa6..5f342e9223
* third_party/android_build_tools/lint/cipd: AGywP4kNoPZjZa3fVdf1g2cKgEPkXnVFRxhlFjroXJcC..VZgk5wz1BPF6SWy4Z3CMhSYeolfmz7D8QoXkNgimoXoC
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/322a071997..eddc72dce5
* third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/1ae5fcb80c..af814cb1fe
* third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/bfa8cbf94e..78c1ca719e
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/a88e228080..4ed4c20a21
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/8c5f1d5cea..eeae4c6391
No update to Clang.
Bug: None
Tbr: syoussefi@google.com
Change-Id: I9d04cc0f90a3f3777933a3c76d5b5541153d0eb6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6831874
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
d8dc3cc2
|
2025-08-02T12:02:20
|
|
Remove shared context lock from glVertexAttrib{I}Format
This CL removes shared context lock from glVertexAttribFormat() and
glVertexAttribIFormat() APIs, since they no longer access anything
outside VertexArrayPrivate. The main problem I had run into is
validation code. Before this CL, ValidateIntegerVertexFormat() needs
context's mStateCache for mCachedVertexAttribTypesValidation and
mCachedIntegerVertexAttribTypesValidation. Given these two cached value
are constant after initialization, in this CL, I have moved them to
PrivateStateCache. PrivateStateCache argument is added to
ValidateVertexAttribFormat() and ValidateVertexAttribIFormat() to get
them access to mCachedIntegerVertexAttribTypesValidation.
Bug: b/433331119
Change-Id: Ifc3fbed32b4d3722c335dd2c393bc6519ed0b544
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6822032
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
61ddca79
|
2025-08-07T11:16:29
|
|
Tests: Add Gossip Harbor ANGLE trace
Test: angle_trace_tests --gtest_filter=*gossip_harbor
Bug: b/437087719
Change-Id: Ia0d313b3e34074df8e24ad3eae63b4718ed2bfc7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6828000
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
c39f1d0f
|
2025-08-01T15:44:11
|
|
Move updateCachedTransformFeedbackBindingVali* to VertexArray
Since updateCachedTransformFeedbackBindingValidation needs buffer
argument, this is now moved from VertexArrayPrivate to VertexArray class
to make it obvious. Also mCachedTransformFeedbackConflictedBindingsMask
is per bindingIndex, so I have changed it from AttributeMask to
VertexArrayBufferBindingMask.
Bug: b/433331119
Change-Id: I321267637ba661b18ef236260a17e6e8f7043eb9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6814158
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
ae4aead5
|
2025-07-24T16:35:38
|
|
Remove sharedContextLock from glVertexAttrib{Divisor|Binding}
With prior CLs all the functions used by glVertexAttribDivisor*,
glVertexBindingDivisor and glVertexAttribBinding only access
VertexArrayPrivate. This CL removes shared context lock from these APIs.
Bug: b/433331119
Change-Id: Ib1632797c53d2cd7a31c21e93c0e69385c71a27f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6814157
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
328a205f
|
2025-08-07T11:02:12
|
|
Revert "Fix bug when reattach the same buffer not pick up the change"
This reverts commit a93f4c8d29c8d214e4823032e6e2c061d5dab1b1.
Reason for revert: https://issues.chromium.org/437092065
Bug: b/433331119
Original change's description:
> Fix bug when reattach the same buffer not pick up the change
>
> Added a test that the same buffer is used in two contexts. Buffer is
> modified in one context and reattached the same buffer on the second
> context's vertex array should pick up the buffer changes. This test
> exposed the bug and it is fixed in this CL.
>
> Bug: b/433331119
> Change-Id: Ia5675581857a642fe9727f196326da9af43d52cf
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6821923
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
> Commit-Queue: Charlie Lao <cclao@google.com>
Bug: b/433331119
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Change-Id: Iaa14b5dbbdb02c69bb060d5073072ec6ddd473ce
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6827998
Auto-Submit: Charlie Lao <cclao@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
e0a7c4b6
|
2025-08-07T12:58:03
|
|
Roll vulkan-deps from ab8547a94528 to 588672b6b2e5 (14 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/ab8547a94528..588672b6b2e5
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/6ff473ebd460d2f8463b1c45542ed4dd4086cd95..7d91d6f4df4e32fda3021e2923be7f92140d31c4
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers/+log/97e96f9e9defeb4bba3cfbd034dec516671dd7a3..a7361efd139bf65de0e86d43b01b01e0b34d387f
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/3aeaaa088d37b86cff036eee1a9bf452abad7d9d..b8b90dba56eb8c75050a712188d662fd51c953df
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/7a1d96aae809216705b2d0ed6c36ec747ab00845..07aa86589862b3888c3f09a11bbb34243f1efc13
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/4a7bd3884fac006445a87b7eacf2770e0e4c9fc6..438279c224e786e44aa1027fff9b51b3b1ba8520
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,syoussefi@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: syoussefi@google.com
Change-Id: Ic1a81c5d6ab4ee5a6f65129280cbbc55dc7a46d8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6827110
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
1943d505
|
2025-08-06T10:03:45
|
|
Tests: Add Seaside Escape ANGLE trace
Test: angle_trace_tests --gtest_filter=*seaside_escape
Bug: b/436801950
Change-Id: Iedc4b03317ef02585ccf86b54494f1938379a68a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6823580
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Mark Łobodziński <mark@lunarg.com>
|
|
671f3e60
|
2025-08-07T09:09:57
|
|
Roll Chromium from 67602e695f23 to 38622a565a0f (3396 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/67602e695f23..38622a565a0f
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,syoussefi@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in Chromium:
https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Changed dependencies
* build: https://chromium.googlesource.com/chromium/src/build.git/+log/38265dc962..b0a7830b79
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/6a6a2b6fd3..16b1d7d539
* buildtools/linux64: git_revision:3a4f5cea73eca32e9586e8145f97b04cbd4a1aee..git_revision:cc7c61e105fb56183fd6c5c52bbe3c37ff724a0d
* buildtools/mac: git_revision:3a4f5cea73eca32e9586e8145f97b04cbd4a1aee..git_revision:cc7c61e105fb56183fd6c5c52bbe3c37ff724a0d
* buildtools/win: git_revision:3a4f5cea73eca32e9586e8145f97b04cbd4a1aee..git_revision:cc7c61e105fb56183fd6c5c52bbe3c37ff724a0d
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/d383bed741..6b4f7b3aa6
* third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/5f6b05eac0..1e18dc54a0
* third_party/android_build_tools/error_prone/cipd: V1UaojOb1ghWxbzvm7e3KAo4E5L41McXcK_4S37dQWAC..56Xo0VEDkKxzOr5L7pafI6SaIY2S7wnOOcgy4CNSANEC
* third_party/android_build_tools/lint/cipd: aS4jV08o7OzcMeyyL2RcyXM0e8V2feomEKdqh8nowjwC..AGywP4kNoPZjZa3fVdf1g2cKgEPkXnVFRxhlFjroXJcC
* third_party/android_build_tools/manifest_merger/cipd: XY78mpSqG9c2zsRPfLI2m16ihBltxa3R27qOXhV9WMIC..K-0K2jznbc6LGEnKhT8NliSShwC43TBuVFZ6gRjOuxgC
* third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/4460514cd2..47abf56825
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4e4076a0d7..4cf600c459
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/ba3926011b..322a071997
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/c105b13e37..6f8fe913d6
* third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/866857ce9c..1ae5fcb80c
* third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/17e748fa88..bfa8cbf94e
* third_party/re2/src: https://chromium.googlesource.com/external/github.com/google/re2.git/+log/66a656e6d9..85c7c0fb11
* third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/1b9595854c..5de5e7b6ba
* third_party/siso/cipd: git_revision:e5fa67c5a456c1ab932f440ddfb195a8a33c235b..git_revision:2643989eca46dcd64a8d8f0ba842016b203e97b8
* tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/4e1963c579..b44ad70ef5
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/094a12c2b1..a88e228080
* tools/luci-go: git_revision:f2aee64d8d98e4fe969d433785e969f3effe90c6..git_revision:2aa8d904a9f8cc8891d2710e4cf58156057fa4b3
* tools/luci-go: git_revision:f2aee64d8d98e4fe969d433785e969f3effe90c6..git_revision:2aa8d904a9f8cc8891d2710e4cf58156057fa4b3
* tools/luci-go: git_revision:f2aee64d8d98e4fe969d433785e969f3effe90c6..git_revision:2aa8d904a9f8cc8891d2710e4cf58156057fa4b3
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/d90a4a94e0..c5719eb114
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/1965f74931..8c5f1d5cea
* tools/rust: https://chromium.googlesource.com/chromium/src/tools/rust.git/+log/1195ae05a7..fa1df48579
* tools/skia_goldctl/linux: UePaQAmB4znC2DdGIm_DqUAEKytlOUofw0oMO0VhStcC..84tAKAqEtqjebJywg8jyXDWUVodNBYZraFt9RZ0A2pwC
* tools/skia_goldctl/mac_amd64: RVm2d4iM3iQFkXafgLvvzi3KHIq_qhFWz3dNRFhamowC..dpgLOuWsqpBYSIj44DbnlJD7fnp640TD4cprUlwV0VMC
* tools/skia_goldctl/mac_arm64: X4Xi1f4spVZ7l32U7eqx8LghvrWxh_NLSkTB_hqW3s4C..AU5OTil4VjYO94g8-Jhq02qBoLka6t-JsgKKEzllcy8C
* tools/skia_goldctl/win: Y69lYD2QQGCN58_A0A21UHInQVZU2kWqKStG-ls-4NkC..DW55Ki0OZtTTzxrsItNbFeB9IDA9GBVXB647W6SOLN4C
No update to Clang.
Bug: None
Tbr: syoussefi@google.com
Change-Id: I307a84254fdc10b43ce6470d33727be2688aa366
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6825318
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
a93f4c8d
|
2025-08-05T16:45:21
|
|
Fix bug when reattach the same buffer not pick up the change
Added a test that the same buffer is used in two contexts. Buffer is
modified in one context and reattached the same buffer on the second
context's vertex array should pick up the buffer changes. This test
exposed the bug and it is fixed in this CL.
Bug: b/433331119
Change-Id: Ia5675581857a642fe9727f196326da9af43d52cf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6821923
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
7a193b06
|
2025-08-06T13:50:50
|
|
Unthrottle validation error messages for all of Chromium
Chromium uses the debug callback to check if there were any errors
instead of glGetError(). With the previous change that throttled error
messages, some webgl tests failed to correctly recognize that an invalid
call did actually fail validation, as well as passthrough command
decoder fuzzer tests.
Bug: angleproject:423956139
Bug: chromium:436292490
Change-Id: Ida254c9bdd2137afcc9483cc1860254781338dbc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6823824
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
88de021d
|
2025-08-01T17:15:22
|
|
tests: Skip PbufferDifferentConfig on system EGL
Skip the test EGLBackwardsCompatibleContextTest.PbufferDifferentConfig
when testing the system EGL, because not all platforms expose
ANGLE-specific extensions.
Bug: b/409384875
Test: angle_end2end_tests \
--gtest_filter=EGLBackwardsCompatibleContextTest.PbufferDifferentConfig/ES2_Vulkan_NoFixture
Change-Id: I1556d7981d1e6c8c6fc1803cafcb76fa1052dcef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6814161
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
bc7e86b1
|
2025-07-30T14:55:34
|
|
tests: RequestedRendererCreated: Get created context version
If the driver being tested does not support the ANGLE extension
EGL_ANGLE_create_context_backwards_compatible, then the Context version
returned may not match the requested version.
Update the test RendererTest.RequestedRendererCreated to query the
current Context's version if the extension is not supported so the
renderer string is checked against the correct value. Continue enforcing
the renderer string has the expected value if the extension is
supported.
Bug: b/409384875
Test: angle_end2end_tests
--gtest_filter=RendererTest.RequestedRendererCreated/*
Change-Id: Iad1b6d36a31b7d79e8fc5fae9e4cc9769b55edb8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6803326
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c2316adb
|
2025-08-05T10:43:09
|
|
Add support for ARM to expectations file
Add support for skipping tests on ARM devices with the tag "ARM".
Bug: b/279980674
Change-Id: If310955c5dfb2af19493f8af70f4f6c00c97fcc9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6821832
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
da8462d4
|
2025-08-06T05:44:28
|
|
Unthrottle validation error messages in WebGL
Chromium uses the debug callback to check if there were any errors
instead of glGetError(). With the previous change that throttled error
messages, some webgl tests failed to correctly recognize that an invalid
call did actually fail validation.
Bug: angleproject:423956139
Bug: chromium:436354527
Change-Id: Ic65761f412d3548fedd63f48d36357c9568c0b53
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6822578
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
f1c6e1a8
|
2025-08-04T19:55:02
|
|
Vulkan: Disable EXT_fragment_shading_rate
Due to a few dEQP failures, this extension will be
temporarily disabled. It can be reverted once the issues
have been resolved.
* Disabled fragmentShadingRateEXT for Vulkan.
Bug: b/436169197
Bug: angleproject:420310117
Change-Id: I94fbbb8b0a0866465e8c67e34c214b465fc35558
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6820702
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
394df705
|
2025-08-01T14:03:17
|
|
Cache per bufferIndex buffer properties in VertexArrayPrivate
This is another preparation CL. This CL caches per bindingIndex buffer
properties in VertexArrayPrivate: mCachedBufferPropertyMapped and
mCachedBufferPropertyMutableOrImpersistent. The only difference between
these and mCachedMappedArrayBuffers /
mCachedMutableOrImpersistentArrayBuffers is that one indexed by
attribIndex and another is indexed by bindingIndex. With this, when
attribute binding changes, we no longer need to make buffer access. With
this, we can move setVertexAttribBinding and setVertexBindingDivisor
from VertexArray into VertexArrayPrivate class and Context argument is
also removed.
Bug: b/433331119
Change-Id: I666544ee0585727ca92d640f372f5a64d1d85576
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6814156
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
5f42ce7e
|
2025-08-05T11:57:54
|
|
Enable KHR-GLESEXT tests on bots
* Enabled several bots to run the khr_glesext tests.
* Skipped some failing tests for Vulkan.
Bug: b/436389014
Change-Id: If0c43f508eb04c21307f75c6dc62e3ef30b0556e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6821642
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
71b7b5ee
|
2025-08-04T18:44:35
|
|
Add KHR-GLESEXT test suite
* Added rules to build new dEQP test binary to run KHR-GLESEXT tests:
angle_deqp_khr_glesext_tests
Bug: b/436389014
Change-Id: I53b74605d3c2a9a5f6a8fece17bc3f7656a6772c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6820701
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
f3b4b716
|
2025-08-05T14:28:04
|
|
TracePerfTest: Disable debug callbacks for GLES1 on Android
We're seeing nullptr crashes when running GLES1 traces through
the Android EGL loader with debug callbacks enabled.
The callbacks are only enabled for Debug builds.
Current theory is that the loader exposes the extension, but
doesn't actually connect the call for GLES1 contexts.
For now, expand the existing ARM skip to all Android devices.
Test: restricted_trace_perf.py --renderer vulkan -f minetest
Bug: b/352386141
Bug: b/436624755
Change-Id: I8ebe8f53c5efdecb2169ce017886753779ef5219
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6821913
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
bafe39e2
|
2025-07-14T16:07:51
|
|
Vulkan: Use BindIndexBuffer2 when available
This Vulkan API becomes available with VK_KHR_maintenance5. In
addition to the original args, it also takes the index buffer size.
* Added the necessary functions to use the following API:
vkCmdBindIndexBuffer2KHR()
* handleDirtyGraphicsIndexBuffer() now uses this API if maintenance5
is available.
Bug: angleproject:394337110
Change-Id: I9a650ac5a033b449da05e0c226e2cfb6df74a75c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6735725
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
eca5244d
|
2025-07-30T16:59:16
|
|
Remove buffer from VertexArrayState::setAttribBinding
In later CLs we try to remove shared lock from glVertexAttribBinding().
One of the lockers for that is right now setAttribBinding() references
"buffer" for size. This CL caches the per binding index bufferSize in
VertexArrayPrivate (i.e, std::vector<size_t> mCachedBufferSize).
setAttribBinding() moved from VertexArray to VertexArrayPrivate since it
no longer needs buffer access, but uses mCachedBufferSize instead.
This CL also changes std::vector to std::array for mVertexArrayBuffers
Bug: b/433331119
Change-Id: Ie34aef82379af8f04099cdc20ebdf354d2787a65
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6803592
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
0a93fc11
|
2025-08-05T03:01:47
|
|
Roll SwiftShader from 681d07e76d8e to fdb6700ecb04 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/681d07e76d8e..fdb6700ecb04
2025-08-04 swiftshader.regress@gmail.com Regres: Update test lists @
681d07e7
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,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://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: syoussefi@google.com
Use-Permissive-Angle-Pixel-Comparison: True
Change-Id: I639309cf9fe1ac076a7af92964bd52a6d81b9ca1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6821313
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
8950217b
|
2025-08-05T10:01:02
|
|
Roll vulkan-deps from 5755777e263c to ab8547a94528 (14 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/5755777e263c..ab8547a94528
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/38f6708b6b6f213010c51ffa8f577a7751e12ce7..0d614c24699d986afd590b93a8c0f0946e997919
https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/ac2c388bf81603af09d0eb599322b2f3447c5812..6ff473ebd460d2f8463b1c45542ed4dd4086cd95
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/37057b4756df4009ad85803bd2e06ec8a3bb1bca..a01329f307fa6067da824de9f587f292d761680b
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/f2389e27734347c1d9f40e03be53f69f969976b1..7a1d96aae809216705b2d0ed6c36ec747ab00845
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/b0a40d2e50310e9f84327061290a390a061125a3..b149d5c52c06836ab333ba571791f79a9fb8eb50
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/f113d73531fb6b82f6cb3aebc0e7c0915b3f611e..4a7bd3884fac006445a87b7eacf2770e0e4c9fc6
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,syoussefi@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: syoussefi@google.com
Change-Id: I538f0a9681ec2fccd127041b9767b85c9c330d47
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6821332
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
fc0e0397
|
2025-07-31T13:15:45
|
|
Translator: Fix location validation for inout
Without this validation, a shader using an inout variable can
write into a memory beyond the limit set by MaxDrawBuffers when
shader framebuffer fetch is enabled.
* Extended the location check in visitSymbol() to include InOut
qualifiers (EvqFragmentInOut) as well (in ValidateOutputsTraverser).
* Moved RewritePixelLocalStorage() after ValidateOutputs() to avoid
issues related to locations not being specified in the InOut nodes
from the PLS implementation.
* Added a unit test to test that this case results in a compilation
error: GLSLTest_ES3.CompileFSWithInoutLocBeyondMaxDrawBuffers
Bug: chromium:435139154
Change-Id: I44c729377a2e1d3126c2d279172217b2ab92b57b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6806230
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
91fa29be
|
2025-08-04T11:08:20
|
|
Add a feature to force contexts into debug mode
Bug: angleproject:423956139
Change-Id: Ie166b40eb9c241140daf4a35df3391829c64f84e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6817467
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
be43e317
|
2025-07-31T17:40:24
|
|
EXT_external_buffer should have DYNAMIC_DRAW usage
EXT_buffer_storage requires that BUFFER_USAGE must be DYNAMIC_DRAW.
EXT_external_buffer only mentions that the buffer can be sourced from an
external EGLClientBuffer. Therefore, the BUFFER_USAGE should still be
DYNAMIC_DRAW.
Add an end2end test.
Bug: angleproject:436046320
Change-Id: Ie79a1b1f8be0df4566bff26800599b192c4f70b1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6817076
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Aurora Zhang <Aurora.Zhang@arm.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
35023c8a
|
2025-07-31T17:40:45
|
|
Throttle validation error messages in release builds
Some apps make invalid but harmless calls every frame. ANGLE inserts a
debug message for each validation failure which comes with a performance
cost. This change makes ANGLE stop reporting validation failure messages
after a handful have already been reported. This is only done when
assertions are disabled and when the context is not a debug context.
Bug: angleproject:423956139
Change-Id: Ie3fb121b2686cddf7da98fc23422b5d12097c6fa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6805901
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b6b2f380
|
2025-08-01T16:52:17
|
|
Manual roll vulkan-deps from c98f4a016f37 to 5755777e263c (15 revisions)
Manual roll requested by solti@google.com
https://chromium.googlesource.com/vulkan-deps.git/+log/c98f4a016f37..5755777e263c
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/8e12361e6be96dee212177e3eeb162d007959ecf..38f6708b6b6f213010c51ffa8f577a7751e12ce7
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/9b035b701e6ee7b6e80c0192f8826979da1f332f..3aeaaa088d37b86cff036eee1a9bf452abad7d9d
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/89268a6d17fc87003b209a1422c17ab288be99a0..37057b4756df4009ad85803bd2e06ec8a3bb1bca
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/c8ac60ea2ddc5fc5c4c180c40f0d2f4caa23e1cf..f2389e27734347c1d9f40e03be53f69f969976b1
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/f28c0df8a5170cbcc66f7cb6b49674f2c13983e7..f113d73531fb6b82f6cb3aebc0e7c0915b3f611e
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: solti@google.com
Change-Id: I6266b319d9d600579412e1f722fe419a80d1ff4b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6811126
Commit-Queue: Solti Ho <solti@google.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
fa29f604
|
2025-07-02T13:23:31
|
|
Remove sharedContextLock from {Enable|Disable}VertexAttribArray
VertexArray objects are per context objects. In theory they do not need
to protected by shared context lock. The reason we are taking locks
because all these functions end up accessing Buffer object which are
shared. In prior CLs we have removed subject observer usage from
VertexArray which means VertexArray no longer accessed from other
thread. In prior CLs we also split VertexArray into two classes:
VertexArrayPrivate which has no buffer, and VertexArray which is
subclass from VertexArrayPrivate and owns buffer. In this CL,
glEnableVertexAttribArray and glDisableVertexAttribArray calls no longer
take shared context lock. ContextPrivateEnableVertexAttribArray and
ContextPrivateDisableVertexAttribArray are called from these two APIs
and they only have access to StatePrivate. State Private holds a
VertexArrayPrivate pointer, which means they do not have anyway to
access buffer objects. The main challenge I run into here is
mCachedActiveClientAttribsMask, mCachedActiveBufferedAttribsMask,
mCachedActiveDefaultAttribsMask, mCachedHasAnyEnabledClientAttrib,
mCachedNonInstancedVertexElementLimit,
mCachedInstancedVertexElementLimit. These StateCache variable needs to
be updated when these two APIs are called, and calculating these
variable needs access to buffer object. The solution here is adding a
bool mIsCachedActiveAttribMasksValid in the PrivateStateCache so that
instead of immediately update these mCached* variable, we just set
mIsCachedActiveAttribMasksValid to false. Then whenever any of these
mCached* variable is needed, we will check
mIsCachedActiveAttribMasksValid and calculate these cached variables. It
adds one if check when accessing these caches, but the other benefit is
that we may have avoided duplicated calculation when multiple states
changed.
Bug: b/433331119
Change-Id: I3227c72bc40501712db93fb3d540b835f07150b5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4514436
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
2ef85c24
|
2025-07-09T17:13:52
|
|
Vulkan: Add support for GL_EXT_fragment_shading_rate
Add support for GL_EXT_fragment_shading_rate.
Bug: angleproject:420310117
Change-Id: I7b368afc45baf8551c222b2569991269117d385b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6726817
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Panfeng Hou <panfeng.hou@arm.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
279652e3
|
2025-07-21T16:21:28
|
|
Vulkan: Flush more often due to render pass count
Accumulating too much workload before submission can lead to
stuttering and reduced quality in rendering. In this change,
a threshold is set for the number of render passes in order to
submit the command buffer.
* Added the following to ContextVk: mRenderPassCountSinceSubmit
* It is incremented every time a render pass begins in the command
buffer.
* When the count reaches the following threshold at the RP closure,
there is a submission: kMaxRenderPassCountPerCommandBuffer
* (Currently set to 128)
Bug: b/426439980
Change-Id: I4cde223fb81e6a27a61f78c924d3c9f2a082e995
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6775626
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
a1d5d102
|
2025-07-22T02:15:43
|
|
WGSL: Allow matrices as in/out vars in shaders
WGSL only supports scalars and vectors in in/out vars in shaders,
matrices will need to be broken into column vectors and then
put back together at the beginning (or end) of the shader.
Arrays also need to be split, which will be done in another CL.
Bug: angleproject:42267100
Change-Id: If1ba28c1b687ae0a3a5a554479f0ff0b5d9df39c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6777201
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Liza Burakova <liza@chromium.org>
|
|
ddd397b3
|
2025-07-31T01:00:34
|
|
Manual roll vulkan-deps from 3418ef9703fe to c98f4a016f37 (2 revisions)
Manual roll requested by solti@google.com
https://chromium.googlesource.com/vulkan-deps.git/+log/3418ef9703fe..c98f4a016f37
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/f43df42fe69bb38d43625b53e0706bbee43d74b4..8e12361e6be96dee212177e3eeb162d007959ecf
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/e41b4bb2ae355fd3119c19ce3d898d0c111a7060..f28c0df8a5170cbcc66f7cb6b49674f2c13983e7
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: solti@google.com
Change-Id: If5979cab3ce4285ba926b534a977b098ac5870ac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6803594
Commit-Queue: Solti Ho <solti@google.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
b0e0c9f6
|
2025-07-30T17:20:25
|
|
tests: DefineTexture2DArrayShouldFail skip on ES3+
The test Texture3DTestES2.DefineTexture2DArrayShouldFail is validating
behavior specific to OpenGL ES 2.0. Skip the test when running on
OpenGL ES 3+ contexts, which is possible when testing the system EGL
which may not support the extension
EGL_ANGLE_create_context_backwards_compatible.
Bug: b/409384875
Test: angle_end2end_tests
--gtest_filter=Texture3DTestES2.DefineTexture2DArrayShouldFail/*
Change-Id: I129ce494c784c3889f21d4950a0302258b423b08
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6803336
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
2a2cb538
|
2025-07-31T03:02:00
|
|
Roll SwiftShader from 7cd1022cdc50 to 681d07e76d8e (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/7cd1022cdc50..681d07e76d8e
2025-07-30 sharjeelkhan@google.com Suppress -Wnontrivial-memcall warning
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in SwiftShader:
https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: solti@google.com
Use-Permissive-Angle-Pixel-Comparison: True
Change-Id: Ibaca15b65476a2470091097086f1b2ccc59ba619
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6805444
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
5fd368aa
|
2025-07-30T14:45:55
|
|
Replace Surface::getWidth/Height() with getSize()
Most places in the code use both `getWidth/Height()` methods at the same
time. On some back-ends it is more optimal to have single method.
For example, `WindowSurfaceWGL` first uses `GetClientRect()` Win32 API
inside each method to then calculate width and hight in each method,
causing repeated `GetClientRect()` call.
The only place where only one of the methods may be used is from
`SurfaceImpl::getUserSize()` when one of the parameters is `nullptr`,
which is only possible from `QuerySurfaceAttrib()` function. This
method is rewritten to use new `getSize()` method and then use whatever
dimensions is requested by the caller. This may cause
`QuerySurfaceAttrib()` inefficiency on some back-ends that get width and
height of the surface differently (`SurfaceEGL` for example). In such
cases `getUserSize()` is overridden to avoid returning a dimension
which is not required.
After this change all places in the code that previously used both
`getWidth/Height()` methods (like `Surface::getAttachmentSize()`) will
be more efficient. The `QuerySurfaceAttrib()`, on the other hand, will
have slightly more overhead on back-ends where base
`SurfaceImpl::getUserSize()` method is used, which only happens on
back-ends with trivial `getSize()` implementation.
Bug: angleproject:397848903
Change-Id: I4a22701a1e62ee4e7d07e77cac5b388050d98e4d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6802440
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
456204ea
|
2025-07-31T09:00:03
|
|
Roll Chromium from e55234bb049e to 67602e695f23 (642 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/e55234bb049e..67602e695f23
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in Chromium:
https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Changed dependencies
* build: https://chromium.googlesource.com/chromium/src/build.git/+log/f08f3ce8d6..38265dc962
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/ea47cf7cad..6a6a2b6fd3
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/2e9b59c277..d383bed741
* third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/8b3cac3801..5f6b05eac0
* third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/44bda899a5..4460514cd2
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/e473b90df1..ba3926011b
* third_party/fuchsia-sdk/sdk: version:28.20250723.2.1..version:29.20250730.5.1
* third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/33645b3d12..866857ce9c
* third_party/r8/cipd: JPUb5oFXJVCZnmHps_x4jsuJNZzT4zTUYPDo0AsI1K0C..qD5apdNjxRv3dBblf27nEZYf7r_pbLEgfN7hWyXvP_UC
* third_party/r8/d8/cipd: JPUb5oFXJVCZnmHps_x4jsuJNZzT4zTUYPDo0AsI1K0C..qD5apdNjxRv3dBblf27nEZYf7r_pbLEgfN7hWyXvP_UC
* third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/498b55d696..1b9595854c
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/b6138bef35..094a12c2b1
* tools/md_browser: https://chromium.googlesource.com/chromium/src/tools/md_browser/+log/6cc8e58a83..b7cfebc814
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/12a10dcc90..1965f74931
No update to Clang.
Bug: None
Tbr: solti@google.com
Change-Id: Id786b478bffc67b722e1c8bd5776de269182d993
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6805553
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
d94f5aa3
|
2025-07-30T23:00:37
|
|
Manual roll vulkan-deps from 89ca3c7958f1 to 3418ef9703fe (2 revisions)
Manual roll requested by solti@google.com
https://chromium.googlesource.com/vulkan-deps.git/+log/89ca3c7958f1..3418ef9703fe
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/cef15589abb337bf883f7e8835279eee6546a6a7..9b035b701e6ee7b6e80c0192f8826979da1f332f
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/a1684e4bd23ab130c5e7c37ab72b07dd541897a9..c8ac60ea2ddc5fc5c4c180c40f0d2f4caa23e1cf
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: solti@google.com
Change-Id: I492e6a5f26329164574f5c36306f369ff880e865
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6803590
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
fa90dac8
|
2025-07-30T14:04:58
|
|
Revert "Vulkan: Disable VK_EXT_host_image_copy on Fuchsia"
This reverts commit d62db89e1753ece99633143faf4c87b2ff23f96c.
Reason for revert: It's been years, hopefully VVL is updated by now.
Bug: angleproject:8341
Original change's description:
> 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>
Bug: angleproject:8341
Change-Id: Ia7a8875b955a120c80d59f2ae7566648e055eedc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6804001
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
aa533732
|
2025-07-28T15:56:13
|
|
CreateGeometryShaderInES3: Skip on ES3.1+
When testing the system EGL (angle_test_enable_system_egl = true), the
context returned is the maximally conformant version, which can be
OpenGL ES 3.2. The test GeometryShaderTestES3.CreateGeometryShaderInES3
verifies that geometry shaders cannot be created, assuming it will only
ever be testing ES 3.0 contexts.
1. Add ANGLE_INSTANTIATE_TEST_ES3_AND_ES31_AND_ES32() to instantiate a
test for ES 3.0, 3.1, and 3.2.
2. Update GeometryShaderTestES3.CreateGeometryShaderInES3 to skip when
testing ES 3.1+ contexts.
3. Instantiate GeometryShaderTestES3 for ES 3.0, 3.1, and 3.2.
Bug: b/409384875
Test: GeometryShaderTestES3
Change-Id: Ic5b4dbb167b8de7f24da285b4620f5257ed7df54
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6794766
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4189fbb8
|
2025-07-29T17:50:24
|
|
Implement EGL_ANDROID_presentation_time for Vulkan backend
The implementation leverages the VK_GOOGLE_display_timing Vulkan
extension.
Bug: chromium:434977616
Bug: angleproject:42261214
Change-Id: I7e6c64eca6c01e7eb79d41dc5ef63311a7792e2b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6799254
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b84c764f
|
2025-07-30T19:39:38
|
|
Manual roll vulkan-deps from 03166deacb9d to 89ca3c7958f1 (2 revisions)
Manual roll requested by solti@google.com
https://chromium.googlesource.com/vulkan-deps.git/+log/03166deacb9d..89ca3c7958f1
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers/+log/de1807b7cfa8e722979d5ab7b7445b258dbc1836..97e96f9e9defeb4bba3cfbd034dec516671dd7a3
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/c8fd10183c2059e3226b1a310e0826b09579155e..cef15589abb337bf883f7e8835279eee6546a6a7
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: solti@google.com
Change-Id: I725f9b2cda9af8fed119b70d40c111393209f75d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6802870
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
92089dce
|
2025-07-29T14:09:24
|
|
Vulkan: Limit maxPerStageTextures to 4096
Many devices support a huge number of samplers (millions) and every one
needs a uniform location, either generated by ANGLE or assigned by the
user. Limit the number of samplers per stage to something reasonable,
which in turn also lowers the number of uniform locations.
This isn't expected to have any practical effect on real apps/users, but
is instead to keep tests for these limits (e.g., dEQP, end2end) within
reason in terms of shader program sizes and compilation times.
Test:
KHR-GLES31.core.explicit_uniform_location.uniform-loc-mix-with-implicit-max
Test: angle_end2end_tests
--gtest_filter=GLSLTest.VerifyMaxVertexUniformVectorsWithSamplers*
Bug: b/434763439
Change-Id: I378483fd869b9f5ebee21760eec4dec2dd793b92
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6798920
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
cd969c3e
|
2025-07-28T16:27:12
|
|
Vulkan: Disable clipCullDistance ext if GS/TS
The extension GL_EXT_clip_cull_distance also interacts with geometry
and tessellation shaders. These features are currently in development.
* Added temporary flag: supportsClipCullDistanceInGSAndTS
* Currently disabled by default
* clipCullDistanceEXT can only be enabled if this feature is enabled,
or if the device does not support geometry or tessellation shaders.
* After the features become available, this flag can be removed.
Bug: angleproject:42264006
Bug: b/415288635
Change-Id: Iac5c672fd980710519407c482bc95d2b0019aea2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6795025
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
b61038bf
|
2025-07-28T21:55:11
|
|
Tests: Add ANGLE trace for Whiteout Survival
Test: angle_trace_tests --gtest_filter=*whiteout_survival
Bug: b/435147875
Change-Id: I09c429dca130321f2a7cd33abdb0521715637257
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6801131
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
f8aecaf9
|
2025-07-30T03:01:00
|
|
Roll SwiftShader from 4bd5bd8d51e4 to 7cd1022cdc50 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/4bd5bd8d51e4..7cd1022cdc50
2025-07-29 casey.smalley@arm.com Update arm_control_flow_integrity to
use bti+pac-ret
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in SwiftShader:
https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: solti@google.com
Use-Permissive-Angle-Pixel-Comparison: True
Change-Id: Ibc1e8929942c9b345ed3f6f1c30d0ae44807bf1a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6801547
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
3e52318c
|
2025-06-26T10:46:00
|
|
Vulkan: Ensure always using resolved Window Surface size
`WindowSurfaceVk::getWidth/Height()` methods return cached, previously
resolved Surface size. Using these methods while current Window Surface
size is unresolved may return stale values, causing undesired behavior.
Appropriate ASSERTs were added to these methods to prevent such usage.
Added ASSERTs revealed few places with incorrect usage:
- In `Context::makeCurrent()` to set initial viewport or for capture.
- In `IsPartialBlit()` and `ValidateReadPixelsBase()` validations.
- In `SerializeFramebufferAttachment()` during capture.
Rest of the code was thoroughly checked if it is possible to call
`WindowSurfaceVk::getWidth/Height()` when size is unresolved. All other
places always call these methods after framebuffer state
synchronization, which acquires swapchain images and resolves the
surface size.
Added `ensureSizeResolved()` method that is called during validation and
in the `SerializeFramebufferAttachment()` method. It is possible to use
existing `Framebuffer::syncState()` method as alternative, but this
solution was discarded since it may potentially interfere with
`State::syncDirtyObjects()` method.
The `Surface::getUserSize()` replaces old methods as optimization, to
prevent calling relatively expensive method twice from
`Context::makeCurrent()` to get width and height of the `drawSurface`.
Test: angle_trace_tests --gtest_filter=EGLSurfaceTest.ResizeBeforeMakeCurrent/*
Test: angle_trace_tests --gtest_filter=EGLSurfaceTest.ResizeBeforeMakeCurrentPostSizeQuery/*
Test: angle_trace_tests --gtest_filter=EGLSurfaceTest.ResizeAndReadPixelsRobustANGLE/*
Test: angle_trace_tests --gtest_filter=EGLSurfaceTest.ResizeAndBlitFramebufferANGLE/*
Bug: angleproject:397848903
Change-Id: I082e13d0b8db5fd7d08ff25b102df1f283e1256d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6792928
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
11120f40
|
2025-07-30T09:16:04
|
|
Roll Chromium from 1beec4a855e7 to e55234bb049e (713 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/1beec4a855e7..e55234bb049e
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in Chromium:
https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Changed dependencies
* build: https://chromium.googlesource.com/chromium/src/build.git/+log/105157d961..f08f3ce8d6
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/bbc0003050..ea47cf7cad
* buildtools/linux64: git_revision:acfe5fde8c5475a9a83bd55f3f222a6dbbcbd0ae..git_revision:3a4f5cea73eca32e9586e8145f97b04cbd4a1aee
* buildtools/mac: git_revision:acfe5fde8c5475a9a83bd55f3f222a6dbbcbd0ae..git_revision:3a4f5cea73eca32e9586e8145f97b04cbd4a1aee
* buildtools/win: git_revision:acfe5fde8c5475a9a83bd55f3f222a6dbbcbd0ae..git_revision:3a4f5cea73eca32e9586e8145f97b04cbd4a1aee
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/2e275f3da7..2e9b59c277
* third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/b7afe66a62..44bda899a5
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/6d019469b4..e473b90df1
* third_party/libc++abi/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/00a175050b..a6c815c69d
* third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/14ca6ad7d6..33645b3d12
* tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/3793401522..4e1963c579
* tools/luci-go: git_revision:7e34add007600430452e65b281863bb4fbeb25c8..git_revision:f2aee64d8d98e4fe969d433785e969f3effe90c6
* tools/luci-go: git_revision:7e34add007600430452e65b281863bb4fbeb25c8..git_revision:f2aee64d8d98e4fe969d433785e969f3effe90c6
* tools/luci-go: git_revision:7e34add007600430452e65b281863bb4fbeb25c8..git_revision:f2aee64d8d98e4fe969d433785e969f3effe90c6
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/8d35380437..12a10dcc90
* tools/rust: https://chromium.googlesource.com/chromium/src/tools/rust.git/+log/522bd21e55..1195ae05a7
* tools/skia_goldctl/linux: 9cBfu6rdomrQL916sGYsOiSQUrWOuIR_jBjvm7ccFeQC..UePaQAmB4znC2DdGIm_DqUAEKytlOUofw0oMO0VhStcC
* tools/skia_goldctl/mac_amd64: e7Uq2XB1IRBbp3a32o4m4yyU-eHdxmQ-2Kcp464UUoQC..RVm2d4iM3iQFkXafgLvvzi3KHIq_qhFWz3dNRFhamowC
* tools/skia_goldctl/mac_arm64: mfzexptpGHu1w9xTtsm7-y3fgnZeDzkcRg99pgZm6XYC..X4Xi1f4spVZ7l32U7eqx8LghvrWxh_NLSkTB_hqW3s4C
* tools/skia_goldctl/win: vQKW52sc1DbdemqngJE-HRBoOAXzfbPJiltAV2gCcT8C..Y69lYD2QQGCN58_A0A21UHInQVZU2kWqKStG-ls-4NkC
No update to Clang.
Bug: None
Tbr: solti@google.com
Change-Id: I84dbc5cff0a9a78b60a425b36b5ad3b77724e05e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6801411
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
e286ef78
|
2025-07-24T21:19:54
|
|
ANGLE: Add validation test for GL_RENDERER string format
This change introduces a new ANGLE end-to-end test to validate the
format of the GL_RENDERER string, preventing regressions caused by
downstream modifications.
A recent issue (b/318636997) was caused by a partner modifying the
ANGLE GL_RENDERER string in a way that broke Skia's parser. This
revealed that the string format is a de-facto API contract that must
be enforced.
This new test, RendererTest.ValidateCanonicalFormat, serves as an
automated guardrail and will become part of the Android CTS.
The test enforces the following structural contract:
1. The overall structure must be "ANGLE (Vendor, Renderer, Version)".
2. The separator between components must be ", ".
3. The Vendor, Renderer, and Version components must not be empty.
This ensures the string is parsable by clients like Skia without
over-constraining the content of the component strings, which may
originate from underlying drivers.
The test correctly skips validation on the Null backend, which is not
subject to this contract.
Test: autoninja -C out/Android angle_end2end_tests && out/Android/angle_end2end_tests --gtest_filter="RendererTest.*" --num-retries=0
Bug: b/432805963
Change-Id: I1202074cc9f4413ee88e4534fb72fb71101721e3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6788522
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Solti Ho <solti@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b4d84458
|
2025-05-23T18:08:19
|
|
Move Buffer from VertexBinding to VertexArray
In later CL we will not taking shared context lock for certain
VertexArray API calls. VertexArray itself is per context, so this sounds
reasonable to do. The main challenge here is a lot of VertexArray
function end up accessing gl::Buffer object, which could be modified by
other shared contexts. In order to safely not taking the shared context
lock, we need to separate out Buffer object out of VertexArray itself so
that these lockless APIs will take VertexArray that does not have access
to buffer.
In this CL, VertexArray is split into two classes: VertexArrayPrivate is
everything in VertexArray except buffers. VertexArray is a subclass of
VertexArrayPrivate and owns all the buffers. Buffer is removed from
gl::VertexBinding class. In order to let back end access to buffers,
VertexArrayImpl holds a weak reference to
VertexArray::mVertexArrayBuffers (which is a vector of buffers).
Further, VertexArrayBufferBindingMask mBufferBindingMask is moved from
VertexArrayState into VertexArray class well, since it tracks which
index has a non-null buffer. The bulk of change are due to the
VertexARrayImpl constructor change, since it now takes
vertexArrayBuffers argument. Other bulk of changes are due to
VertexBinding no long has the buffer, but you need to get it directly
from VertexArray or VertexArrayImpl.
This CL also reverts some of the change in crrev.com/c/6758215 that
mVertexBindings no longer contains kElementArrayBufferIndex.
BYPASS_LARGE_CHANGE_WARNING
Bug: b/433331119
Change-Id: I15f4576f7c5c8d8f4d9c9c07d38a60ce539bfeea
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6774702
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
8dca0efe
|
2025-07-21T15:29:10
|
|
Replace VertexArray::DIRTY_BIT_LOST_OBSERVATION with API call
This dirty bit was added so that back end can inspect buffers and set
proper VertexArray::DirtyBitType. The same thing can achieved by add a
virtual function on VertexArrayImpl class. The advantage of virtual
function on VertexArrayImpl is that all back end essentially have the
same implementation and we can just implemented in VertexArrayImpl
instead of duplicate in each back end. The other advantage is after this
CL DIRTY_BIT_BINDING_n and DIRTY_BIT_BUFFER_DATA_n will be well aligned
instead of offset by 1 caused by DIRTY_BIT_LOST_OBSERVATION. The other
motivation of this change is in later CL I want to move
mBufferBindingMask out of VertexArrayState, which means back end will
not have access to it. By using VertexArrayImpl API, I can pass
mBufferBindingMask directly to the back end via function parameter. So,
this CL removed DIRTY_BIT_LOST_OBSERVATION, added
VertexArrayImpl::checkBufferForDirtyBits().
Bug: b/433331119
Change-Id: I5c8cbc9bace63db416e86c2ae3631f74a12b20b8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6775986
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
130fb2a1
|
2025-07-29T08:16:57
|
|
Vulkan: Don't allocate ExternalFormatIDs for sampling usecases
Update the condition for allocating YUV ExternalFormatIDs to exclude
sampling-only usecases. Also, rename "isYuvResolve()" to
"isYuvExternalFormat()" to better reflect intent.
Bug: angleproject:386749841
Change-Id: I0e4f5b79937ea8ad98b5d00fdc7531b34ffa7e16
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6797965
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
40a2a912
|
2025-07-15T14:39:10
|
|
Track mElementArrayBuffer in std::vector<VertexBinding>
Right now mElementArrayBuffer are treated a little bit differently from
other vertex buffers, mainly because of elementBuffer does not have
corresponding "attributeIndex" to bind to. But a lot of logic in
VertexArray are same for mElementArrayBuffer and mVertexBindings. In
recent CLs, we are using mBufferBindingMask to track both
mElementArrayBuffer and mVertexBindings with kElementArrayBufferIndex
represents element buffer. With that, some of logic handling buffers can
be merged, with looping of mBufferBindingMask bits. In later CL, we are
going to separate "binding" from "buffer" so that we can move buffer out
of VertexArrayState class. So this is also a preparation CL so that when
we move buffers out of VertexArrayState class, it does so for all
buffers (both element buffer and vertex buffers). In order to track how
many vertex buffers in mVertexBindings, a new variable
mMaxVertexAttribBindings is added. In later CL when we move buffers out
of VertexBinding, some of this CL's change will be reverted back,
mVertexBindings will be reverted back to track only bindings and
mMaxVertexAttribBindings will be deleted.
Bug: b/433331119
Change-Id: Idd2cfe4ce64bb22923bac70abb752e132fe1abd3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6758215
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
09bbe914
|
2025-07-28T12:53:53
|
|
Add test for mapBuffer and disable/enable attrib interaction
Added a test that mapBuffer while attribute is disabled, the draw call
should succeed. If attribute is then enabled, the next draw call should
fail with GL_INVALID_OPERATION error.
Bug: b/433331119
Change-Id: I61d9ff16b0d485309c58c2fe2939c3de8b25864a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6792268
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
4f4eab29
|
2025-06-30T14:58:28
|
|
Reset index buffer offset between indirect GL_LINE_LOOP draws
In two consecutive glDrawArraysIndirect with GL_LINE_LOOP mode, and
bound to a different Indirect Buffer, the variable value captured
through TransformFeedback is the same as the first result when the
second DrawArraysIndirect.
When calling DrawArraysIndirect the second time, DIRTY_BIT_INDEX_BUFFER
should be set to dirty so that it re-gets INDEX BUFFER to get the
correct result.
Bug: angleproject:428561247
Change-Id: I7f4ebb53e20cf8e362e67679b45185b8b68c56ef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6687309
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Tingwei Guo <tingwei.guo@arm.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
866370dc
|
2025-07-28T22:12:00
|
|
Disable texture_compression_astc_decode_mode exts during capture
The GL_EXT_texture_compression_astc_decode_mode and
GL_EXT_texture_compression_astc_decode_mode_rgb9e5 extensions are
not widely supported outside of ARM and Qualcomm. Disable while
ANGLE capture is enabled.
Test: angle_trace_tests --gtest_filter=*whiteout_survival
Bug: b/434819166
Change-Id: I4cebf6942144c61a954dfd9dfe9bd9935638ff60
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6794776
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
6fe8c6ed
|
2025-07-29T10:01:33
|
|
Roll vulkan-deps from aef5b0045b59 to 03166deacb9d (8 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/aef5b0045b59..03166deacb9d
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/e832dc66e14bb68683cd5ae51fd2431c3f544c4d..ac2c388bf81603af09d0eb599322b2f3447c5812
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/a983ab19d6f91a07a8272767427b6c5208576d08..c8fd10183c2059e3226b1a310e0826b09579155e
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/9007c052db384bdea65c0c4dba927efdf93c465a..e41b4bb2ae355fd3119c19ce3d898d0c111a7060
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: solti@google.com
Change-Id: Idda582e26561e72c8521923450b6003896cd39f1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6794779
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
ebfee8a1
|
2025-07-29T03:01:46
|
|
Roll SwiftShader from 8802b4ec130b to 4bd5bd8d51e4 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/8802b4ec130b..4bd5bd8d51e4
2025-07-28 swiftshader.regress@gmail.com Regres: Update test lists @
8802b4ec
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in SwiftShader:
https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: None
Tbr: solti@google.com
Use-Permissive-Angle-Pixel-Comparison: True
Change-Id: Ie463d1381e60bc1ebd4bf74b18765113fda654b7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6796494
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
a08c092e
|
2025-07-29T07:42:42
|
|
Roll Chromium from 2f075e19fc00 to 1beec4a855e7 (711 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/2f075e19fc00..1beec4a855e7
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-angle-autoroll
Please CC angle-team@google.com,solti@google.com on the revert to ensure
that a human
is aware of the problem.
To file a bug in Chromium:
https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Changed dependencies
* build: https://chromium.googlesource.com/chromium/src/build.git/+log/7c4b770a83..105157d961
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/9c179c04d3..bbc0003050
* buildtools/linux64: git_revision:4cfb717bbd5ecfcf63af3cb4487da5ea4777ef67..git_revision:acfe5fde8c5475a9a83bd55f3f222a6dbbcbd0ae
* buildtools/mac: git_revision:4cfb717bbd5ecfcf63af3cb4487da5ea4777ef67..git_revision:acfe5fde8c5475a9a83bd55f3f222a6dbbcbd0ae
* buildtools/win: git_revision:4cfb717bbd5ecfcf63af3cb4487da5ea4777ef67..git_revision:acfe5fde8c5475a9a83bd55f3f222a6dbbcbd0ae
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/485707903e..2e275f3da7
* third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/3146ad28d4..b7afe66a62
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1addc95539..4e4076a0d7
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/56f1f96c4b..6d019469b4
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/be9dd89ffb..c105b13e37
* third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/f24be5deb7..14ca6ad7d6
* third_party/re2/src: https://chromium.googlesource.com/external/github.com/google/re2.git/+log/6e8f5be3a3..66a656e6d9
* third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/283b3095a9..498b55d696
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/6cec3ec692..b6138bef35
* tools/luci-go: git_revision:efbba64186435ac28ad419751e67e377c7459c38..git_revision:7e34add007600430452e65b281863bb4fbeb25c8
* tools/luci-go: git_revision:efbba64186435ac28ad419751e67e377c7459c38..git_revision:7e34add007600430452e65b281863bb4fbeb25c8
* tools/luci-go: git_revision:efbba64186435ac28ad419751e67e377c7459c38..git_revision:7e34add007600430452e65b281863bb4fbeb25c8
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/3e256eafee..8d35380437
* tools/skia_goldctl/linux: Sg25-ZztJqPtMF0rPXgRDM3-fKRveWcIbIvbwwKPAPUC..9cBfu6rdomrQL916sGYsOiSQUrWOuIR_jBjvm7ccFeQC
* tools/skia_goldctl/mac_amd64: hZpj0hRnYNFplpUOcSd95nLfQDnWLU1-a_aTEzwQCjwC..e7Uq2XB1IRBbp3a32o4m4yyU-eHdxmQ-2Kcp464UUoQC
* tools/skia_goldctl/mac_arm64: ulgsu9nJXlCe-TeAX6PIPIIVr557_qKnjOjyPO9ib9UC..mfzexptpGHu1w9xTtsm7-y3fgnZeDzkcRg99pgZm6XYC
* tools/skia_goldctl/win: 0sP0Mad75mVvpE0TL1hNJaOPR1oZCkpx5K_zELfKe2YC..vQKW52sc1DbdemqngJE-HRBoOAXzfbPJiltAV2gCcT8C
No update to Clang.
Bug: None
Tbr: solti@google.com
Change-Id: I1e598edafe63df5550e82daa7f5522e8304b102d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6794777
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
9635df8e
|
2025-07-16T15:13:19
|
|
Move mCached*ArrayBuffers from VertexArrayState to VertexArray
The three cached AttributeMasks variables are mCachedMappedArrayBuffers,
mCachedMutableOrImpersistentArrayBuffers,
mCachedInvalidMappedArrayBuffer. They are currently declared in
VertexArrayState class. They are only accessed by VertexArray front end,
back end does not use them, which means they do not need to be in
VertexArrayState class. This CL moves these three variables to
VertexArray class in preparation for later CLs that VertexArrayState
will not have access to Buffer objects.
This CL also removed unnecessary
updateCachedMutableOrNonPersistentArrayBuffers call from
VertexArray::enableAttribute, since
mCachedMutableOrImpersistentArrayBuffers does not depend on any
variables enableAttribute() is modifying.
Bug: b/433331119
Change-Id: I8b1f0c7d511dbc6858d20f33863154e8fe3077f8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6762902
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
a6699c9f
|
2025-07-23T13:33:48
|
|
Android: Stop polling messages when app destroy requested
The Chromium Android testing app enters an infinite loop to poll for
messages to run the tests. However, this prevents the app from
gracefully shutting down when the DESTROY event is received, because
android_main() never returns, so the NDK function android_app_free()
never sees android_app->destroyed become true. This prevents using
Android instrumented tests in CTS, because the instrumentation never
sees the ANGLE app complete the handling of the DESTROY event and
exit cleanly.
To fix this, check sApp->destroyRequested after each event and break
from the infinite loop if the app is being destroyed.
Bug: b/279980674
Change-Id: I63edaa6d64e57cd99b6b63a9631c30a65c416220
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6781760
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|