|
157a99aa
|
2025-05-20T23:59:29
|
|
Update logic for redeclaring gl_FragDepth.
Update ParseContext logic to handle redeclaration of gl_FragDepth.
Bug: angleproject:419066563
Change-Id: I774d036922ec75ca151f1c871afc243ca09a3061
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6573532
Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
571450df
|
2025-05-15T16:24:12
|
|
Depth value not clamped for clearBufferfi and clearBufferfv
Clamp depth values to [0,1] for calls to glClearBufferfi and
glClearBufferfv.
Bug: angleproject:418030862
Change-Id: I6f5393da863a17c5fd1d78f1b800df0e61d3dc60
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6552161
Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3cf7a604
|
2025-05-17T19:39:08
|
|
WebGPU: Add extensions for importing external textures
Add EGL_ANGLE_device_webgpu which exposes the adapter and device used
by ANGLE internally.
Add EGL_ANGLE_webgpu_texture_client_buffer which allows importing
external WGPUTexture handles if they share the same device as ANGLE
(queried from EGL_ANGLE_device_webgpu).
Bug: angleproject:418022112
Change-Id: I0683d36b84a0f8e0e9b68a5ec0d3aa8b7a95152c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6553063
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
26e790f7
|
2025-05-21T14:07:40
|
|
Update the gn arg to avoid warning message in gn desc json file
After this change
https://chromium-review.googlesource.com/c/chromium/src/+/6547915,
using android32_ndk_api_level and android64_ndk_api_level gn args
will results in a warning message generated at the top of the
gn desc json file:
WARNING Build argument has no effect.
android32_ndk_api_level = 26
^-
Did you mean "android_ndk_api_level"?
This causes the json.load() function in generate_android_bp.py failing
when parsing the json file
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Update roll_aosp.sh to use the android_ndk_apk_level to remove the
warning message.
Also update the gn arg from android32_ndk_apk_level and
android64_ndk_api_level to android_ndk_apk_level in other files.
Bug: b/418837345
Change-Id: I12fa48dcb5638b37a9965d0adb339a2dee018297
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6576736
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
3c0b2787
|
2025-05-17T19:36:42
|
|
WebGPU: Implement EGLImages
Implement EGLImages for WebGPU. Cube maps, and non-zero mip sources
are not supported yet.
Bug: angleproject:418022112
Change-Id: I59955aee907167a1829f870b7d0730a6269d814c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6557130
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
720f6bbe
|
2025-05-15T00:00:00
|
|
Fix attribute and uniform name validation
* Fixed null name error messages
to refer to correct parameters.
* BindUniformLocation
* Added name checks for null
and all reserved prefixes.
* Fixed error code for reserved prefixes.
* GetAttribLocation & GetUniformLocation
* Moved reserved prefixes check to the Context.
* Fixed and expanded tests.
Fixed: angleproject:418986804
Change-Id: I62760b3010fd38ee2e31e4ff88d9910647b329dd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6568552
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
71b58cdc
|
2025-05-17T18:12:33
|
|
Fix feedback loop in ImageTest.SourceRenderbufferTargetTexture*
This test would make a renderbuffer as an EGLImage source and a texture
as the target. It would then try to verify the data in the texture by
sampling but the renderbuffer was currently bound to the framebuffer
creating a feedback loop.
Bug: angleproject:418022112
Change-Id: I456eb541c84d98d99e6b8d8be817ce67d7b1d519
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6556610
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
dcbcee8a
|
2025-05-15T10:39:55
|
|
Tests: Use eglGetPlatformDisplay()
From the EGL 1.5 spec:
Appendix F
Version 1.5
EGL version 1.5 was voted out of the Khronos Technical Working Group
on January 31, 2014, and formally approved by the Khronos Board of
Promoters on March 14, 2014.
EGL 1.5 is the sixth release of EGL. It introduces the following new
features (the EGL extension(s) each feature is based on are also shown
parenthetically):
* Platform support:
– Providing a mechanism for support of multiple platforms (such as
window systems or offscreen rendering frameworks) in a single EGL
implementation at runtime (EGL_EXT_platform_base).
Many tests use eglGetPlatformDisplayEXT() which is provided by the EGL
extension EGL_EXT_platform_base. With the promotion of the
EGL_EXT_platform_base functions to core EGL in version 1.5 and ANGLE
supporting EGL 1.5 (as of at least 2019), update the calls to use
eglGetPlatformDisplay().
This is in preparation for running the ANGLE end2end tests in Android,
which only exposes the EGL 1.5 functions, and not the
EGL_EXT_platform_base functions.
Bug: b/391967165
Test: angle_end2end_tests
Change-Id: I58109c3afe270f46db952e124ee3f5c11200ca35
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6552257
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
e7277deb
|
2025-05-19T11:16:56
|
|
Add test to validate eglGetPlatformDisplayEXT()
Add a test to validate eglGetPlatformDisplayEXT() returns a valid
display on devices that support the EGL extension EGL_EXT_platform_base.
Bug: b/279980674
Test: EGLDisplayTest.GetPlatformDisplayEXT/*
Change-Id: I8cbb9c3905deb960e567a07d64e6c9d590a4ae70
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6565328
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
30479104
|
2025-04-28T16:01:46
|
|
Add support for GL_EXT_texture_norm16 in glCopyImageSubDataEXT
Add the following compatible norm16 formats in EXT_copy_image:
RGBA16_EXT
RGBA16_SNORM_EXT
Bug: angleproject:412517249
Change-Id: I4939705915940dacaf3168acf1a7cc7abb0870ba
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6490613
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Mavis Deng <mavis.deng@arm.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
56becf05
|
2025-05-16T16:58:34
|
|
WGPU: texSubImage2D() should mark textures as dirty
TextureWgpu now observes its ImageHelper's edits to staged
subresources and notifies its observers (Texture) that it has
changed, ensuring TextureWgpu::syncState() is called before
draw if glTextSubImage2D() was called earlier.
Also ends the current render pass when flushing subresource
updates, otherwise if the texture is being used by the current
webgpu::CommandBuffer (staged render pass commands), the texture
may be updated before the staged commands are actually submitted
to the GPU.
Bug: angleproject:389145696
Change-Id: I07db566fca970e877a0d3faa3ceb02f8425c799a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6502676
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
|
|
3f7bded1
|
2025-05-15T13:35:18
|
|
Add ANGLE_FORMAT_PRINTF to StringPrintf
Bug: b/414880678
Test: verified that the compiler attribute will generate error when
building without crrev.com/c/6543549
Change-Id: If1b57f78370d57969e999b93e17444236f194be1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6551849
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
96c9f065
|
2025-05-15T19:22:29
|
|
WGPU: Flip y for the default framebuffer
Bug: angleproject:389145696
Change-Id: I0d527ad3dc24dbca7e9d914b03edacdc257a568f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6477137
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
|
|
1fea2d12
|
2025-05-15T09:57:22
|
|
Roll Chromium from 6511b87fb086 to 924b8c206ea6 (678 revisions)
https://chromium.googlesource.com/chromium/src.git/+log/6511b87fb086..924b8c206ea6
Fix warnings detected by Error Prone checks enabled in
https://chromium-review.googlesource.com/c/chromium/src/+/6543826
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,ynovikov@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in Chromium:
https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Changed dependencies
* build: https://chromium.googlesource.com/chromium/src/build.git/+log/e42f899ae7..a4e74b4312
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/077a66f30f..e9b36e9ffb
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/e93dc3dea2..56ef5f113b
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/fd624be2fa..2fa93b2332
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/032eddc73b..f810dae272
* third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/27ee073016..9aefa1cede
* third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/49f482cb46..36e2b378de
* third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/c523543cf4..abb422e192
* third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/86aca59d7b..fbb9ce5767
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/92a5f60019..4e2e7b926a
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/f7a506e700..866151e951
* tools/rust: https://chromium.googlesource.com/chromium/src/tools/rust.git/+log/96def2f44c..d88ef9e4de
Clang version changed llvmorg-21-init-9266-g09006611:llvmorg-21-init-11777-gfd3fecfc
Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/92a5f60019f3a9ff63b9388d181fa65047377fb4..4e2e7b926a033fc85695da101404f79b7ce2d7a7/scripts/update.py
Bug: None
Change-Id: I95d7c36f8e9baeb828b24f7d96452363175bba2d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6551736
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
f21ec7a0
|
2025-05-14T10:52:50
|
|
Tests: Skip VerifyMutableRenderBufferKHR on Intel+Win
The test
EGLSingleBufferTest.VerifyMutableRenderBufferKHR/ES*_Vulkan_NoFixture is
failing on Intel+Windows and generating VVL errors.
ERR: vk_renderer.cpp:968 (rx::vk::(anonymous
namespace)::DebugUtilsMessenger): [
VUID-VkSwapchainCreateInfoKHR-presentMode-parameter ]
vkCreateSwapchainKHR(): pCreateInfo->presentMode
(VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR) requires the extensions
VK_KHR_shared_presentable_image.
The Vulkan spec states: presentMode must be a valid VkPresentModeKHR
value
(https://docs.vulkan.org/spec/latest/chapters/VK_KHR_surface/wsi.html#VUID-VkSwapchainCreateInfoKHR-presentMode-parameter)
..\..\src\tests\egl_tests\EGLSurfaceTest.cpp(2036): error: Value of:
IsEGLDisplayExtensionEnabled(mDisplay, "EGL_KHR_mutable_render_buffer")
Actual: false
Expected: true
It's not entirely clear where things are going wrong, but appears to be
something in the Intel+Windows driver. Skip the test for now to keep
win-exp-test green otherwise.
Bug: b/417459061
Test: EGLSingleBufferTest.VerifyMutableRenderBufferKHR
Change-Id: Iee848b46cddaf05d0cbb0c2d81d76d07dd0b9bba
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6548415
Auto-Submit: Tim Van Patten <timvp@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
1e7442b2
|
2025-04-24T00:00:00
|
|
Fix KHR_debug operations
DebugMessageInsert:
* Used correct error message when the severity parameter
is invalid and aligned parameter validation order with
the command declaration.
DebugMessageInsert and PushDebugGroup:
* Fixed message length validation.
* Fixed message insertion when
the explicit length is zero.
Object[Ptr]Label:
* Fixed label length validation.
Added new tests.
Fixed: angleproject:417621246
Fixed: angleproject:417684698
Change-Id: I00cd939a83c5b9ae7dddefc51222278615bc0df9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6544152
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8d75490a
|
2025-05-08T00:00:00
|
|
Update zero length for debug marker commands
If the marker length passed to InsertEventMarkerEXT
or PushGroupMarkerEXT commands is zero, compute the
actual marker length in the Context so that the
backends could always rely on the passed length.
Bug: angleproject:408709155
Bug: angleproject:417757002
Change-Id: Ifa36d8d16c7c808855a7500556b569587cdc89a1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6547538
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ad18dc93
|
2025-04-02T16:23:50
|
|
D3D11: Remove the message from Buffer11 to gl::Buffer
This CL removes the D3D back end's usage of Subject/Observer from
Buffer11 to gl::Buffer. BufferFeedback argument has been added to
various functions and directly applied to gl::Buffer object (which will
propagate to VertexArray and texture/XFB if needed).
gl::Buffer::mImplObserver is removed in this CL, and no longer a
Observer.
Bug: angleproject:400711938
Change-Id: Idf4d423904d057ab3a1e52acf8e2496df606cb89
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6514288
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e69813e0
|
2025-05-13T12:29:46
|
|
Fix the formatting for size_t in perf_test
This will print 64bit unsigned int max properly
Bug: b/414880678
Test: (process memory size SIZE_MAX) *RESULT TracePerf_vulkan.memory_median: black_beacon= 18446744073709551615 sizeInBytes
Change-Id: I27f0e2dd34d7fc7c055bea64ecd786e0567b754a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6543549
Commit-Queue: Xiang Wang <xwxw@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
64888cb8
|
2025-04-24T00:00:00
|
|
Align multiview extensions usage with the specs
As per the specs, the OVR_multiview2 extension requires
and implicitly enables the OVR_multiview extension.
Cleaned up the extension state checks
and added dependency tests.
No functional changes.
Fixed: angleproject:417173927
Change-Id: I67d2c19f4ed2f2450bf7fe2a92625cc9525ca020
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6535750
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
82c75df3
|
2025-04-24T00:00:00
|
|
Fix GetDebugMessageLog validation
Used the same validation for GetDebugMessageLog and
GetDebugMessageLogKHR entry points; added tests.
Simplified validation redirects for:
- ObjectLabel and ObjectLabelKHR
- GetObjectLabel and GetObjectLabelKHR
- ObjectPtrLabel and ObjectPtrLabelKHR
- GetObjectPtrLabel and GetObjectPtrLabelKHR
Fixed: angleproject:417493213
Change-Id: Id1fad6c94db78da403e70f40f44630632d375472
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6543489
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3bbdee0f
|
2025-03-28T11:55:24
|
|
Vulkan: Remove Subject/Observer from BufferImpl
Right now the gl::Buffer back end send message to the front end and then
gl::Buffer propagate the message to the observers (vertex array,
textures, transform feedback). We are seeing many of these kind of
message passing (mainly to vertexArray), and each message is a virtual
function call. The message call also lacks of context information that
we can not do certain optimizations. This CL adopts the new API feedback
argument approach for buffer APIs from the back end to the front end.
The only difficulty I ran into is D3D backend where the message could be
delivered from draw calls. For now the subject/observer code path is
still kept in the gl::Buffer, but no back end will use it except D3D11.
That will be removed in the later CL when D3D11 switch to use feedback
mechanism.
BYPASS_LARGE_CHANGE_WARNING
Bug: angleproject:400711938
Change-Id: I5fb3b660fd4260b9ba691239ad777b575b31e2ab
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6408892
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e4ec23a0
|
2025-04-24T00:00:00
|
|
Fix query object support in EXT_debug_label
The GL_EXT_debug_label extension must support labeling
timer query objects created on ES 2.0 contexts even if
the GL_EXT_occlusion_query_boolean is not supported.
Expanded and fixed tests.
Bug: angleproject:42263878
Change-Id: If05cf1b6879d44de1cc893ed45d1b877c963dac6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6539570
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ed4d7278
|
2025-05-13T10:06:18
|
|
Tests: Skip VerifyMutableRenderBufferKHR on Intel+Win
The test
EGLSingleBufferTest.VerifyMutableRenderBufferKHR/ES*_Vulkan_NoFixture is
failing on Intel+Windows and generating VVL errors.
ERR: vk_renderer.cpp:968 (rx::vk::(anonymous
namespace)::DebugUtilsMessenger): [
VUID-VkSwapchainCreateInfoKHR-presentMode-parameter ]
vkCreateSwapchainKHR(): pCreateInfo->presentMode
(VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR) requires the extensions
VK_KHR_shared_presentable_image.
The Vulkan spec states: presentMode must be a valid VkPresentModeKHR
value
(https://docs.vulkan.org/spec/latest/chapters/VK_KHR_surface/wsi.html#VUID-VkSwapchainCreateInfoKHR-presentMode-parameter)
..\..\src\tests\egl_tests\EGLSurfaceTest.cpp(2036): error: Value of:
IsEGLDisplayExtensionEnabled(mDisplay, "EGL_KHR_mutable_render_buffer")
Actual: false
Expected: true
It's not entirely clear where things are going wrong, but appears to be
something in the Intel+Windows driver. Skip the test for now to keep
win-exp-test green otherwise.
Bug: b/417459061
Test: EGLSingleBufferTest.VerifyMutableRenderBufferKHR
Change-Id: I3bc21dfa059b1c0d7c4e8f7ae0452a3819bedbb3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6541387
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
73dabb85
|
2025-04-29T12:39:12
|
|
Add end2end test for AdvancedSyncVertexArray
This is just a port of the upstream test:
KHR-GLES31.core.shader_image_load_store.advanced-sync-vertexArray
Test: ComputeShaderTest.AdvancedSyncVertexArray
Bug: b/416573908
Change-Id: Id04af0a7efa667b7afc8061a9ccaa044e709fe1d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6496293
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
214b7ce2
|
2025-05-09T11:35:31
|
|
Remove --use-reclient flag from capture_replay_tests.py
The flag isn't used anymore.
Bug: b/401959048
Change-Id: I6bedc9fcb2c5a5ed152b3da4bcbce0ba4785c883
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6528770
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Junji Watanabe <jwata@google.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
2f1f9568
|
2025-05-08T12:37:57
|
|
Tests: Run respawnables trace on S24 Xclipse native driver
Their "native" driver is actually ANGLE.
Bug: angleproject:42266627
Change-Id: I53795925219f0be42fbfcb059ce45575f5a98034
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6526326
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
d221cf40
|
2025-04-24T00:00:00
|
|
Adjust EXT_base_instance emulation conditions
* EXT_base_instance may be emulated only on the
GL backend. Other backends either support it
directly or do not support at all.
* EXT_base_instance is never exposed to WebGL.
Bug: angleproject:355645824
Change-Id: I1edea83d83b1e6865eee8022c7110b05ea37d989
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6527730
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
51dd4087
|
2025-04-24T00:00:00
|
|
Autogen support checks for draw_elements_base_vertex commands
Also fixed command support conditions:
* With an exception of MultiDrawElementsBaseVertexEXT,
command and extension suffixes must match. Updated
tests to account for that.
* DrawElementsInstancedBaseVertex{EXT,OES} additionally
require ES 3.0 or any of the instancing extensions.
* DrawRangeElementsBaseVertex{EXT,OES} additionally
require ES 3.0. Updated tests to account for that.
* MultiDrawElementsBaseVertexEXT additionally
requires GL_EXT_multi_draw_arrays.
Bug: angleproject:409484297
Change-Id: I50b72ebc7d66128bcfd5671334094b7e90cb329c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6524686
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
00845fd6
|
2025-05-06T14:13:18
|
|
WebGPU: Do not reuse windows with multiple surfaces
Multiple Dawn backends do not handle re-creating a surface for a native
window. Instead of working around this by caching in the display, rework
our test runner to recreate the OS window and surface instead of just
the surface.
Release all resources in DisplayWgpu::Terminate. Otherwise they wont be
deleted until the display is reinitialized or the test executable
terminates.
Bug: angleproject:342213844
Change-Id: Ic31264a5e646a54c988ef47ca664d8575fda94eb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6515886
Reviewed-by: Liza Burakova <liza@chromium.org>
Reviewed-by: Matthew Denton <mpdenton@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
8c8f016a
|
2025-04-15T17:30:01
|
|
Remove part of releaseTexImageInternal in glGenerateMipmap
In glGenerateMipmap, actually clearing the ImageDesc and
releasing texImage in releaseTexImageInternal is not needed.
The following implementation currently is skipped because getImageDesc
would return empty ImageInfo. Remove those part and put the part
of disconnecting the pbuffer from the texture after generating the
mipmap. And end2end test is also added to verify the implementation.
Bug: angleproject:410996562
Change-Id: I0d8ccd628b98aa5063df2688e9899319c32fd97d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6461524
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
317f81db
|
2025-05-01T14:17:47
|
|
Fix EGL_RENDER_BUFFER query if EGL_SINGLE_BUFFER unsupported
eglCreateWindowSurface() can have the EGL attribute EGL_RENDER_BUFFER
specified:
EGL_RENDER_BUFFER specifies which buffer should be used by default for
client API rendering to the window, as described in section 2.2.2. If
its value is EGL_SINGLE_BUFFER, then client APIs should render
directly into the visible window. If its value is EGL_BACK_BUFFER,
then all client APIs should render into the back buffer. The default
value of EGL_RENDER_BUFFER is EGL_BACK_BUFFER.
Client APIs may not be able to respect the requested rendering buffer.
To determine the actual buffer that a context will render to by
default, call eglQueryContext with attribute EGL_RENDER_BUFFER (see
section 3.7.4).
To support EGL_SINGLE_BUFFER, Vulkan surfaces must support the
VkPresentModeKHR value VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR:
VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR specifies that the
presentation engine and application have concurrent access to a single
image, which is referred to as a shared presentable image. The
presentation engine is only required to update the current image after
a new presentation request is received. Therefore the application must
make a presentation request whenever an update is required. However,
the presentation engine may update the current image at any point,
meaning this mode may result in visible tearing.
However, this is only available on Vulkan devices that support the
extension VK_KHR_shared_presentable_image.
Add checking in Surface::initialize() to update Surface::mRenderBuffer
to EGL_BACK_BUFFER if the backend implementation does not support
EGL_SINGLE_BUFFER. This includes adding supportsSingleRenderBuffer() to
query the backend if it supports single render buffer mode, which
defaults to False. The Vulkan backend overrides this and the result is
based on support for VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR.
Bug: b/412446258
Test: EGLLockSurface3Test.WindowMsaaSurfaceReadTest/ES2_Vulkan_NoFixture
Test: EGLSingleBufferTest.VerifyMutableRenderBufferKHR/*
Change-Id: I4e6d56f01a895a5bd887580e6ffa34d574c87fad
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6506764
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
32f3f043
|
2025-04-28T16:15:15
|
|
Return GL_INVALID_ENUM for invalid target of CopyImageSubData
From spec: INVALID_ENUM is generated if either srcTarget or dstTarget
- is not RENDERBUFFER or a valid non-proxy texture target
- is TEXTURE_BUFFER, or
- is one of the cubemap face selectors described in table 3.17,
if the target does not match the type of the object.
Bug: angleproject:412524049
Change-Id: I2110223059db170e8882efc9666654d318b14ed3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6490614
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Auto-Submit: Mavis Deng <mavis.deng@arm.com>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d8ab156b
|
2025-04-18T10:57:14
|
|
Fix glValidateProgram() not work as spec
According spec ValidateProgram should detect error: Any two
active samplers in the set of active program objects are of
different types, but refer to the same texture image unit.
Bug: angleproject:414259791
Change-Id: I2ab503b745cffdfb8be1a1ad649432fd8a73f63d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6491669
Auto-Submit: Neil Zhang <Neil.Zhang@arm.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
b373892b
|
2025-04-26T20:59:07
|
|
Add test using array of array varyings in tessellation shaders
For per-vertex variables in the Tess shader that support
two-dimensional arrays, when calling GetResourceName,
the string-like tt[0][0] should be returned instead of tt[0].
Bug: angleproject:413447006
Change-Id: Iafd316495ca3c254f9424d84cab71c8385b11e03
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6490616
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Robic Sun <Robic.Sun@arm.com>
|
|
3cc099da
|
2025-03-20T16:47:46
|
|
Add tests for texelFetch with samplerExternalOES
Add two tests to texelFetch in the vertex shader and fragment shader for
YUV with samplerExternalOES. The fetch results are expected to be RGB
value.
Bug: angleproject:405149439
Change-Id: I0a5809b910ac61c678ab240aea8d303e0c9646e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6382116
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Aurora Zhang <Aurora.Zhang@arm.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
9812b972
|
2025-03-05T16:25:45
|
|
PLS: Validate rendering feedback loops of PLS planes
Validate that active textures are not bound as PLS planes in WebGL
compatibility mode using the same validation as for regular framebuffer
attachments.
Update the PLS spec to not generate an error for feedback loops but
update the definition of feedback loops to include PLS planes. The WebGL
spec is dependent on this definition and makes this feedback loop an
error.
Bug: angleproject:40096838
Change-Id: I597efef3685da7bfb2a9d149a9ec3bc9d01e6e4d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6330519
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Chris Dalton <chris@rive.app>
|
|
27cfdf8e
|
2025-04-24T00:00:00
|
|
PLS: Allow type conversions in state queries
The OpenGL ES spec requires data conversions when a query
command is issued that returns a data type different from
the actual type of the requested state.
* Updated PLS state queries to follow the main spec.
* Removed PLS state query dependencies on interruptions.
* Fixed non-robust command declarations in the extension spec.
* Added missing extension support checks to robust commands.
* Drive-by: Fixed invalid use of assertions in PLS tests.
Fixed: angleproject:414361744
Fixed: angleproject:414506466
Change-Id: I573ab66d194d5666fd9c8845ac0ab262a714c5cf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6507065
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
3540a326
|
2025-05-05T16:47:30
|
|
Tests: Skip black_beacon trace on S24
Bug: angleproject:415852525
Change-Id: Ibf4d3f63e96da9cf43c34110654f9383f9ba82f3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6512773
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
95813607
|
2025-05-05T10:53:08
|
|
Manual roll VK-GL-CTS from dd7e71367795 to eeeebaca3f2e (10 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/dd7e71367795..eeeebaca3f2e
2025-04-25 mateusz.bahyrycz@mobica.com Multiple queue test runner
2025-04-25 lorenzo@khronosgroup.org Add missing mandatory features for
VK_KHR_cooperative_matrix using auto-generation from XML
2025-04-25 piotr.byszewski@mobica.com Separate tests for
gl_BaseVertexARB and gl_BaseInstanceARB
2025-04-25 piotr.byszewski@mobica.com Update spirv-tools and fix
validation errors
2025-04-25 kamil.goras@mobica.com Add OpenGL tests for textureQueryLod
2025-04-25 rgarcia@igalia.com Force position-independent code in
vulkan-video-samples
2025-04-25 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.2
into vk-gl-cts/main
2025-04-23 michal.jakubek@mobica.com Fix "Linux link failures" on
Windows build
2025-04-23 michal.jakubek@cognizant.com Linux compile failure when
commenting out some test additions
2025-04-23 piotr.byszewski@mobica.com Remove temporary entries from
Android*.bp files
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll
Please CC angle-team@google.com,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
Change-Id: I9d56381e80b6a89f307573ffc7f5c790c9ff4153
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6512791
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
f6e1d4d7
|
2025-05-02T12:02:09
|
|
Fix include header case mismatches
This CL fixes the include header names to be aligned with the actual
file names. It's problematic for cross compile on Linux, where file
system is case sensitive.
Context:
Goma/Reclient's deps scanner was able to handle those case mismatches.
But, Siso's builtin remote execution doesn't resolve them automatically.
Bug: b/401959048
Change-Id: I98282899e31ea801058f82d4cad770413634f4f3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6508684
Reviewed-by: Charlie Lao <cclao@google.com>
Auto-Submit: Junji Watanabe <jwata@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
d4c83ace
|
2025-04-30T12:05:19
|
|
Fix the test to use the right uniform location
mTexture2DUniformLocation and mTextureCubeUniformLocation are
uniform locations retrieved from the TextureCubeTest.mProgram.
We should get the location from the shader program that the current
test uses.
Bug: angleproject:401546698
Change-Id: I7c5f022a9fab58572cae2e78fc328c1c0f74f977
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6502892
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
998b5693
|
2025-04-30T11:05:52
|
|
Fix ExternalBufferTest end2end test
The application or test should be responsible for managing the lifetime
of external buffer ensuring that the external buffer is not deleted as
long as there are any GL buffer objects referring to it.
https://registry.khronos.org/OpenGL/extensions/EXT/EXT_external_buffer.txt
Bug: b/396231708
Change-Id: Ib8e7e2ef0349cadc42b839019e2b2334b4cc5085
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6502674
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
c52183bd
|
2025-04-11T11:17:10
|
|
Reset sample coverage after fbo change on Adreno
Adreno drivers cache some internal value based number of samples in
currently bound FBO and glSampleCoverage value, but doesn't update it on
FBO change.
So if we set sample coverage to 1 when FBO with 1 samples bound and then
switch to FBO with 4 samples it behaves like coverage is 0.25 instead of
1.
To avoid this, reset sample coverage after each FBO change.
Bug: chromium:408364831
Change-Id: I7d5e36926e8568f4c652049b43ecdbe382ddc293
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6447878
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Vasiliy Telezhnikov <vasilyt@chromium.org>
|
|
6bdbe9cc
|
2025-05-01T12:33:41
|
|
Manual roll Chromium from dd275389e023 to cf3a960742c3 (1975 revisions)
Use third_party/depot_tools/gn.py instead of gn to accommodate
https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/6504176
Manual roll requested by ynovikov@google.com
https://chromium.googlesource.com/chromium/src.git/+log/dd275389e023..cf3a960742c3
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,ynovikov@google.com
on the revert to ensure that a human
is aware of the problem.
To file a bug in Chromium:
https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Changed dependencies
* build: https://chromium.googlesource.com/chromium/src/build.git/+log/88030b3203..aaf578b4fc
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/0f32cb9025..6d4e129ac6
* buildtools/linux64: git_revision:90478db6b59b9bebf7ca4cf912d860cf868e724c..git_revision:487f8353f15456474437df32bb186187b0940b45
* buildtools/mac: git_revision:90478db6b59b9bebf7ca4cf912d860cf868e724c..git_revision:487f8353f15456474437df32bb186187b0940b45
* buildtools/win: git_revision:90478db6b59b9bebf7ca4cf912d860cf868e724c..git_revision:487f8353f15456474437df32bb186187b0940b45
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/fe092931f1..35b04da37d
* third_party/android_build_tools/error_prone/cipd: -IrkxgAkj3RxGNBPp6b4r9OWZC6_dTbI-jC3c3UPgq8C..2t_u1XEjof609BQE4czlCQzEqRliKS_qY35FOu_VckgC
* third_party/android_build_tools/lint/cipd: gx4NrAApWUVG5HG3WJRIIzZrTssD6H5uGbKe0g77mucC..TEDRB0F7VgCgyepd8FsIxPRqvKjvWQ_YkLV-ybx-GQYC
* third_party/android_build_tools/manifest_merger/cipd: HhXknpcPosMUDHZQD-8Ogve-HaG4HmJ4p082zKKAcnMC..fPGWiT0LVG2_ifxOpHb5KNwTL-_7lb7tYOsB_ZoIiskC
* third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/1ea2115b17..a86aaa9531
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/000f47cfa3..1591e813b6
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/1fcc527019..5982a1aeb3
* third_party/fuchsia-sdk/sdk: version:27.20250424.2.1..version:27.20250501.3.1
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/917609c669..62724eb55f
* third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/912274164f..bf95cc5da6
* third_party/r8/cipd: bA3htCoEd_EArHekDGQSNpmBzQrcby2ioG6SFyl3AtwC..sxgLKZyJNZMVi8cot5yvRzqCFQxX_HbbR0psaeto5RcC
* third_party/r8/d8/cipd: 6qLey8EBp9ivhThnqVPWy2ZDGpsf5Y29EsTbi_rZ1pMC..bA3htCoEd_EArHekDGQSNpmBzQrcby2ioG6SFyl3AtwC
* third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/926ec54499..7c098b791b
* third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/1e85c01b15..6f9b4e6192
* tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/60443ebac3..e4c0da2094
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/6c4f037a98..5ae6e4bfb4
* tools/luci-go: git_revision:fd48b8efe637ea5f431fc371f1617b215b7ba1a2..git_revision:a9a10995e2889126ace91faf4052949e38c69d33
* tools/luci-go: git_revision:fd48b8efe637ea5f431fc371f1617b215b7ba1a2..git_revision:a9a10995e2889126ace91faf4052949e38c69d33
* tools/luci-go: git_revision:fd48b8efe637ea5f431fc371f1617b215b7ba1a2..git_revision:a9a10995e2889126ace91faf4052949e38c69d33
* tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/3b0c718c2d..e3589a5831
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/9c8188cae9..1a0049ce09
* tools/rust: https://chromium.googlesource.com/chromium/src/tools/rust.git/+log/fa679ed68e..7e70cdf64e
* tools/skia_goldctl/linux: M9CSmdri8G3miQpGPQeqstBvQ3TtlngrsiF5GdSTYs0C..srGbc-O6bVQmBoT6VLvP66h6Be4A-nffx4UhixUJ9w0C
* tools/skia_goldctl/mac_amd64: Txs7Izu5kRGbcoAc9qESynBnBHo8RdRIyim5zF9rWbgC..tZvHxy8AcDJhO9A-5UuZKL_-5vfE_wC-RBkElqWZpM4C
* tools/skia_goldctl/mac_arm64: LTzU4UbKV4zw61tWyttEX62vyq7nErr2gD8-jiH8IhgC..2br8hIWKHDAaOt77siYyRUclHBYUZX6dj8jtogL90nwC
* tools/skia_goldctl/win: UKiySjywM8juGVuMwWbOdaBXFD1TbzUOWcGGVTYfem0C..zasiUhQIHGZ2e60_M6g41oz8mYgPta5JmOWV5LwFjGMC
No update to Clang.
Bug: chromium:414330998
Change-Id: I5ce14c5574391c1dd638787c09789f0577ee26a2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6503456
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
e93c143a
|
2025-04-28T15:39:35
|
|
tests: Prepare capture_replay_tests for Siso migration
- Adds --use_remoteexec as an alias of --use_reclient.
- Adds --use_siso to add `use_siso=true` GN arg.
- Changes the out dir to out_CaptureReplayTest, so that the build dir
depth will be 2 for Siso remote execution rules.
- Cleans up build dir when switching from Ninja to Siso.
Bug: b/401959048
Change-Id: Id698644f16c161e86d1d1b42828281cb5fb690ca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6489896
Auto-Submit: Junji Watanabe <jwata@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
128c9682
|
2025-04-24T00:00:00
|
|
Make GL_ANGLE_texture_rectangle non-toggleable
This extension is not meant to be disabled.
Bug: angleproject:40096622
Change-Id: Iea87210ab1bf3800759a3c65c566af67dada75f0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6494384
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
cac1e824
|
2025-04-29T18:27:36
|
|
WGSL: Output driver uniform and UBO structs
This is the WGSL half of the change to implement driver uniforms.
Driver uniforms are implemented as a UBO and reuse the default
set of driver uniforms. User-provided UBOs don't yet have
variables outputted for them.
This requires moving MSL's ReduceInterfaceBlocks to the tree_ops
dir in order to change interface block definitions into struct
definitions.
Bug: angleproject:389145696
Change-Id: I27f3837b3d115f2ffac66cc545f3b60ca9f01cb6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6477564
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
4b69ba93
|
2025-04-28T16:45:56
|
|
WGPU: upload texture bind groups and configured samplers
GLSL samplers are split into separate sampler/texture variables
in WGSL. Before this CL, the WGSL translator generated shaders
that look like:
@group(1) @binding(@@@@@@) var ANGLE_sampler_samp2D :
sampler;
@group(1) @binding(@@@@@@) var ANGLE_texture_samp2D :
texture_2d<f32>;
@group(1) @binding(@@@@@@) var ANGLE_sampler_sampCube :
sampler;
@group(1) @binding(@@@@@@) var ANGLE_texture_sampCube :
texture_cube<f32>;
This CL replaces those with actual binding numbers
@group(1) @binding(0) var ANGLE_sampler_samp2D :
sampler;
@group(1) @binding(1) var ANGLE_texture_samp2D :
texture_2d<f32>;
...
Such that @binding(n*2) is the WGSL sampler variable corresponding
to the n-th GLSL sampler and @binding(n*2+1) is the WGSL texture
variable corresponding to the n-th GLSL sampler.
This CL then generates binding group layouts matching the above,
and uploads textures and configured samplers in bind groups.
This makes some of the deqp_gles2 tests 2d texture tests pass,
though some fail because they need a flipped y coordinate.
Not yet supported:
1. arrays of samplers
2. shadow samplers
3. cube textures
Bug: angleproject:389145696
Change-Id: I2ab18ae5ebb4d1289101266bd9451576aa04ce2a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6382272
Reviewed-by: Liza Burakova <liza@chromium.org>
Auto-Submit: Matthew Denton <mpdenton@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c884460a
|
2025-04-24T16:43:04
|
|
Vulkan: Fix deferred clears vs noop multidraw
Bug: chromium:407828338
Change-Id: I5da22aeb72605bb7943fa5ae079ae297d00888f7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6488794
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
f6da7aed
|
2025-04-18T00:00:00
|
|
Fix UniformTest.GetUniformNoCurrentProgram
Added the extension check and
the result re-initialization.
Fixed: angleproject:414491366
Change-Id: I04abc847a7fd48c411e62208e88c19d9d3f6ec50
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6494452
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
828bec45
|
2025-04-26T16:12:56
|
|
Vulkan: Fix SPIR-V gen for constant constructors
... inside non-constant constructors of different basic type.
The SPIR-V generator proactively casts the elements of the inner
constructor to the type of the outer constructor, but it was mistakenly
using the original inner constructor's type id for the constant instead
of the cast type id.
Bug: chromium:413775106
Change-Id: I95e8b1dcc1ba36777eb4475042f0d106a6abe109
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6489041
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
84e3b8f1
|
2025-04-18T00:00:00
|
|
Fix GetInteger64vRobustANGLE validation
* Removed incorrect validation code.
* Implemented capture support.
* Added a new test.
Fixed: angleproject:413595073
Change-Id: Ib84ae410fbd7a18d4a8bbb2545fe2952938088e5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6491648
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ef61ff8d
|
2025-04-24T16:18:34
|
|
Improve the judgement of texture and attachment completeness
When the GL_TEXTURE_MIN_FILTER is not mipmap, that is GL_LINEAR or
GL_NEAREST, ANGLE should allow the texture's base level greater than the
max level. The spec does not consider this situation as texture
incomplete.
Also, attachment completeness should ignore mipmap completeness when
selected level is the base level. Hence, increase a constriction in
CheckAttachmentCompleteness and end2end test
Texture2DBaseMaxTestES3.Fuzz545ImmutableTexRenderFeedback.
Bug: angleproject:42267266
Change-Id: I6a41f7d0716a7c9506b82390e2c0b083ab1626a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6197735
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Aurora Zhang <Aurora.Zhang@arm.com>
|
|
4429afe9
|
2025-04-23T23:47:26
|
|
Tests: Add Black Beacon trace
Test: TraceTest.black_beacon
Bug: b/413215850
Change-Id: Iecbb4d2b4a251943857fd3d945318cec29c1b37f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6487386
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
d08e9e9c
|
2025-04-18T00:00:00
|
|
Fix use of OpenGL ES 2.0 commands in ES 1.0 tests
Bug: angleproject:409484297
Change-Id: I0186e23074ec7ac6cfae9d04645923d6acb163f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6487928
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e5680ba6
|
2025-04-14T17:43:07
|
|
Fix mInFlightCommands.empty() assert in CommandQueue destroy
When initialize a higher priority shared Context, ANGLE internal call
updateContextsPriority to submit previously flushed commands. This
submission is not tracked by any Context. Add
Renderer::mSubmittedResourceUse to record submitted queue serials not
belonging to any Context to fix the assertion.
Bug: angleproject:410996556
Change-Id: I7a91e47c0233832b8806637f295dffd1ff54f729
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6458623
Reviewed-by: Igor Nazarov <i.nazarov@samsung.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Neil Zhang <Neil.Zhang@arm.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4c1c7c08
|
2025-04-18T00:00:00
|
|
Include entry point names in error messages
Moved entry point name injection to ErrorSet::validationError
to ensure that error messages handled via GL_KHR_debug always
contain the corresponding entry point names.
Updated affected tests.
Fixed: angleproject:412384507
Change-Id: I9e898cadca0634505d70b36dbbb00feedb6c10b2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6480177
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
d698500d
|
2025-04-08T09:05:42
|
|
Fix an ASSERT() crash in ExternalFence SyncWaitFd().
https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetFenceFdKHR.html
If pGetFdInfo->handleType is VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT
and the fence is signaled at the time vkGetFenceFdKHR is called, pFd
may return the value -1 instead of a valid file descriptor.
So when above scenario happens, ANGLE will get a -1 fd from
vkGetFenceFdKHR(), and then Angle will call SyncWaitFd() with the
invalid fd, it will cause an ASSERT() crash.
Bug:angleproject:409342980
Change-Id: I48d4d21d531e40f8ba275918454632ae14fec04b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6439303
Auto-Submit: Peng Huang <penghuang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
6f9f343a
|
2025-04-16T14:45:33
|
|
Reland "Vulkan: Prune superseded updates during host-image-copy"
This is a reland of commit f8a8adf63c5834a725d1bd752acc6d63c3f45c05
Original change's description:
> Vulkan: Prune superseded updates during host-image-copy
>
> Bug: angleproject:42266771
> Change-Id: I7aa8e85720a54537389df615b575ddfa9951770d
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6462475
> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
> Reviewed-by: Cody Northrop <cnorthrop@google.com>
> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Bug: angleproject:42266771
Change-Id: I95e6f1d2421327a6394e627f03ef5b4cddf4a1e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6480011
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3c554454
|
2025-04-03T16:55:11
|
|
Incorrect BUFFER_DATA_SIZE and UNIFORM_OFFSET for ACB array of array
The buffer size and offset calculation for the atomic counter buffer
defined as an array of arrays is incorrect. The issue occurs with the
following declaration:
layout (binding=0, offset=0) uniform atomic_uint ac[2][2];
Observed Results:
GL_BUFFER_DATA_SIZE -> 8;
GL_UNIFORM_OFFSET of "ac[1][0]" -> 0;
Expected Results:
GL_BUFFER_DATA_SIZE -> 16;
GL_UNIFORM_OFFSET of "ac[1][0]" -> 8;
Bug: angleproject:407564097
Change-Id: Ibf99ccd5412629f0feb74a9a34337b82894e74c6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6429625
Auto-Submit: Mavis Deng <mavis.deng@arm.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
abe3c63a
|
2025-04-16T15:30:10
|
|
Add CubeMapBug2 test to trigger Angle bug in validation
Add one extra texture sampler in fragment shader
and adjust texture binding unit for textures
Bug: angleproject:401546698
Change-Id: Ib5c3482a243075a98f1ce1b1f4d4cc9884f5f980
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6458622
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3f88a505
|
2025-04-03T17:29:20
|
|
GenerateMipmap encode and decode sRGB when GL_SKIP_DECODE_EXT is set
According to the spec, if TEXTURE_SRGB_DECODE_EXT is set before
GenerateMipmap for a texture with format sRGB, mipmap generation should
skips the encode and decode steps during mipmap generation, matching the
mipmap generation for a non-sRGB texture.
Bug: angleproject:406829410
Change-Id: Icea8c27a1ab2f20e9fd6c8d79187c0c5cfe8e789
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6428506
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Tingwei Guo <tingwei.guo@arm.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: mohan maiya <m.maiya@samsung.com>
|
|
50a4ad19
|
2025-04-22T09:29:17
|
|
Revert "Vulkan: Prune superseded updates during host-image-copy"
This reverts commit f8a8adf63c5834a725d1bd752acc6d63c3f45c05.
Reason for revert: Has a bug in the calculation of image layers whose
updates should be dropped.
Bug: angleproject:42266771
Original change's description:
> Vulkan: Prune superseded updates during host-image-copy
>
> Bug: angleproject:42266771
> Change-Id: I7aa8e85720a54537389df615b575ddfa9951770d
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6462475
> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
> Reviewed-by: Cody Northrop <cnorthrop@google.com>
> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Bug: angleproject:42266771
Change-Id: I2b992c8598f58c40386338ade3cf59ffdb03abd5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6480413
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
81f1a733
|
2025-04-04T00:00:00
|
|
Fix use of OpenGL ES 3.0 commands in image tests
Fixed tests that used OpenGL ES 3.0 commands instead
of extensions when running on lower context versions.
Bug: angleproject:409484297
Change-Id: Ie220acbf8d1d287e3e19a52307ac3625d2f29c9f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6469896
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
f8a8adf6
|
2025-04-16T14:45:33
|
|
Vulkan: Prune superseded updates during host-image-copy
Bug: angleproject:42266771
Change-Id: I7aa8e85720a54537389df615b575ddfa9951770d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6462475
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
b86d7d8f
|
2025-04-14T15:37:47
|
|
Android: Add Galaxy S24 support (Xclipse)
Bug: b/410630704
Change-Id: I97fd649de4278f447893a01fbe5ceeee02dd100e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6456664
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
53279e92
|
2025-04-16T16:04:55
|
|
Traces: Update traces that need ES 3.2
With Alexey's change to autogen ES version checks, he found that some
traces required 3.2 without requesting it: http://crrev/c/6441552
This likely happened due to a combination of apps assuming it is
supported, and get_min_reqs reliance on errors thrown to detect when
an ES version is needed.
This CL updates the traces identified to properly request ES 3.2 and
any extensions. It also removes redundant extension requests from
TracePerfTest.cpp now that they show up in JSON.
Test: Trace tests with autogen fixes
Test: retrace_restricted_traces.py get_min_reqs
Bug: angleproject:409484297
Change-Id: Ia19d70316f5e6422d027c1ce135593391abce378
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6465695
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
ccabbbca
|
2025-04-16T23:52:32
|
|
Suppress flaky test on Nvidia/D3D
Bug: angleproject:411157348
Change-Id: I08542c9ca0d332ab2f88a3174ab42e08d9a21f31
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6466885
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b64d380e
|
2025-04-15T00:54:22
|
|
Vulkan: Ghost texture's image backing if overwritten
If the texture's image is in use by the GPU but is overwritten
completely, this change releases the old image and creates a fresh one.
If the texture was used in a render pass, this avoids breaking the
render pass. Otherwise, it allows the new image to be initialized with
VK_EXT_host_image_copy functionality. In the very least, an unnecessary
barrier is avoided.
As a targeted optimization, this functionality is limited to non-array
2D color textures which are known to benefit from this ghosting in
applications. Other texture types can be easily added, but need lots of
tests to be added.
Bug: angleproject:42265356
Change-Id: I18a7587599e36f9f70109264ddc1003b24b8b2df
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6456345
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
838c6596
|
2025-04-14T16:46:42
|
|
Add EGL image tests where source texture is modified
Covering the following cases:
* The source texture is changed with glTexImage2D. In this case, the
image is orphaned and the siblings point to the old image.
* The source texture is used in a compute shader. In Vulkan, the
internal image backing is recreated, and siblings should continue to
track the new image (which they don't, due to a bug).
* The source texture is completely overwritten. This is in anticipation
of a follow up change in the Vulkan backend that similarly may
recreate the backing image of the texture (and should not be affected
by the same bug).
* The source texture's base level is completely overwritten while the
image is in use, and glGenerateMipmap is called. This is also in
anticipation of another follow up change in the Vulkan backend that
may recreate the backing image.
Bug: angleproject:42265356
Bug: angleproject:410584007
Change-Id: I2d5f7f668d77ec6940d34bdf80eb7c885fc6a59d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6454132
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
e39bcdc3
|
2025-04-09T17:26:34
|
|
Support GLES query counter bits
ANGLE only support query GL_QUERY_COUNTER_BITS_EXT
with TIME_ELAPSED_EXT or TIMESTAMP_EXT, but other targets
should also be supported. Since the values are stored in
32 bits, we just return 32 for other target. An end2end
test is added.
Bug: angleproject:409674598
Change-Id: I98941f4dd36ef62c57bcb87475ebb9f626c1bbf9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6437686
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
4be3143c
|
2025-04-10T15:18:52
|
|
Vulkan: Vertex attribute hole crash workaround
When the start vertex index of glDrawArrays is not 0, this hole
case will crash again.
* Added a condition to bypass the attribute update if the
attribute pointer is null.
* Added a glDrawArrays(GL_TRIANGLES, 3, 3) in unit test
VertexAttribPointerCopyBufferFromInvalidAddress
Bug: angleproject:359729255
Change-Id: I1d7f50dc56080ef0b4e48c4c3c983189a26171c1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6445172
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Mavis Deng <mavis.deng@arm.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
a3f2545f
|
2025-04-11T14:03:08
|
|
Tests that exercise overwriting textures while in use
The first three tests are credit Cheryl Wei <@arm.com>, adopted from
https://chromium-review.googlesource.com/c/angle/angle/+/3366193
The change also exposed the fact that the force_fallback_format with
ASTC leads to assertion failure if ASTC emulation is not built. This
change adjusts the format table to fix that as well.
Bug: angleproject:42265356
Change-Id: Ib68355f317472d8cc3f035b492b273ac452a8217
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6447202
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
a5d750fb
|
2025-03-25T14:24:19
|
|
Add test to check EGL_KHR_platform_android
Add an end2end test to check that eglGetPlatformDisplayEXT
can use EGL_PLATFORM_ANDROID_KHR to get display. Also, to
follow the spec, ValidateGetPlatformDisplayCommon should
set EGL_BAD_PARAMETER for unsupported platform.
Bug: angleproject:404581995
Change-Id: I20a962adb2dab4434141417b11c959924aff1597
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6369995
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5dd05578
|
2025-04-14T07:34:57
|
|
Revert "GL: Allow untranslated shaders to pass through on GLES"
This reverts commit 4e77552b86a89b449ada6d6c18f84285f5812b1d.
Reason for revert: breaks ChromeOS and fuzzers
Bug: angleproject:398857482
Original change's description:
> GL: Allow untranslated shaders to pass through on GLES
>
> Add an EGL extension EGL_ANGLE_create_context_passthrough_shaders which
> uses the NULL translator and passes the original shader to the driver.
> The parser is still used for shader reflection.
>
> Bug: angleproject:398857482
> Change-Id: I7c5fcc318c7e11931f78c08dcbf4764bf77d397d
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6297527
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Bug: angleproject:398857482, angleproject:410423936
Bug: chromium:410114655, chromium:410100607, chromium:410121218
Bug: chromium:410052365, chromium:410290507, chromium:410178288
No-Presubmit: true
Change-Id: I45b01960637a1cda05d21a7df6d07465f6a8f5e9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6448984
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
96628296
|
2025-04-04T00:00:00
|
|
Fix GL_OES_texture_3D entry points validation
* Added missing checks to the extension
entry points to generate proper error
messages.
* Ensured that the extension entry points
are invalid on unextended OpenGL ES 3.x
contexts.
* Fixed invalid usage of the extension entry
points in PLS tests.
Fixed: angleproject:409959473
Change-Id: If579e6171751dea1049e1ed85020f485d1e9deb2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6449807
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4e77552b
|
2025-02-24T18:04:32
|
|
GL: Allow untranslated shaders to pass through on GLES
Add an EGL extension EGL_ANGLE_create_context_passthrough_shaders which
uses the NULL translator and passes the original shader to the driver.
The parser is still used for shader reflection.
Bug: angleproject:398857482
Change-Id: I7c5fcc318c7e11931f78c08dcbf4764bf77d397d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6297527
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
b81b7115
|
2025-04-04T00:00:00
|
|
Fix entry point replacements in TracePerfTest
The same entry point name, including its suffix,
must be used when replacing command arguments
for perf testing to avoid validation errors.
Fixed: angleproject:409576882
Change-Id: I076f476a7fec3fcd6a6d5e59016a67bf2cdc1aa5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6446633
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
cb60429d
|
2025-04-04T00:00:00
|
|
Fix BlitFramebuffer entry point validation
* Fixed validation for BlitFramebufferNV
and BlitFramebuffer (ES 3.0).
* Updated tests.
Fixed: angleproject:409579363
Change-Id: I11ef69433a5ae947c0deb069bd0abfa0144e9661
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6444471
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4f450985
|
2025-04-09T14:34:01
|
|
Skip 3D texture unpack test on Mac
* Skipped the following test on the Mac bots (for AMD):
Texture3DTestES3.PixelUnpackParamsChangeTexImage/ES3_OpenGL
* Example of error on the bots:
https://ci.chromium.org/ui/p/angle/builders/ci/mac-exp-test/2475
Bug: angleproject:406566447
Change-Id: Iea584dd8526ac1773c6a0bd22ea8ad3e1ef05b14
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6444358
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
76561acc
|
2025-04-04T00:00:00
|
|
Fix use of OpenGL ES 3.2 commands in tests
Fixed tests that used OpenGL ES 3.2 commands instead
of extensions when running on lower context versions.
Bug: angleproject:409484297
Change-Id: I1d032a8ed4df429e564c24321101b4dfcd5d1ba8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6441554
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
02ae054c
|
2025-04-07T13:48:29
|
|
Translator: Fix init of inactive output variables
Bug: chromium:398401939
Change-Id: I0df494b945b8d0e805a62cf7645d06bf233f36ca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6438495
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a6f44806
|
2025-04-01T17:30:53
|
|
Wrong condition to call copyBufferDataToImage
In function copyBufferDataToImage, it call vulkan vkCopyBufferToImage
directly. To call copyBufferDataToImage directly, it needs that there's
no overlap when copy.
If mImage is not valid, it will assert in mImage->getActualFormatID().
Need to check its validation at beginning.
Bug: angleproject:406566447
Change-Id: I875c2a97bec52251b9c5b3d196466e8bf5ce662d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6400313
Auto-Submit: Jiaqi Li <Jiaqi.Li@arm.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
3207b535
|
2025-04-08T12:50:19
|
|
Tests: Skip new denorm test on Pixel 6
Test: GLSLTest_ES3.DenormFloatsToIntValues
Bug: b/406827038
Change-Id: I9202e750dc5f80f1ed0d9c2153cdc2c73b72c1d2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6441469
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
2fcd88e1
|
2025-04-08T09:30:59
|
|
Tests: order bot mode batch configs alphabetically
Currently ordered by hashmap key ordering which shuffles the order even
with --max-processes=1. Adding a sort to make this deterministic.
Bug: angleproject:408276172
Change-Id: Ice96e350ba4247a1f40870e275d04d2f654bc4f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6438024
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
8424dd22
|
2025-04-08T13:39:59
|
|
Suppress end2end test on iOS Metal
PixelLocalStorageTest.FlushFinishSync added in
https://chromium-review.googlesource.com/c/angle/angle/+/6427324
Bug: angleproject:40096838
Change-Id: Ibd357a357823e757c71c0d4527db774f721b28f6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6440285
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
1a1978fd
|
2025-04-08T13:29:12
|
|
Suppress dEQP-GLES2.functional.debug_marker.random on Linux SwANGLE
Bug: angleproject:42266920
Change-Id: Ib45f9c6f5c64c6fab5310f8ea24b5da308097c66
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6439421
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
d27a1fd0
|
2025-04-03T19:59:20
|
|
Compiler: Allow denorm float values in the lexer
This adds an option to preserve denorm values in the lexer,
skipping the explicit zero conversions for below range floats.
There are applications in the wild that expect to be able to
use denorm float values. They are typically immediately converted
to integer values, not used in floating point operations.
The option is only enabled for Vulkan backends.
Test: FloatLexTest, DenormFloatsToIntValues, app traces
Bug: b/406827038
Change-Id: Iab5a1a69a540b78ccbce8ea90b532d2d4976e29e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6432237
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
79832ea3
|
2025-04-07T10:33:17
|
|
Revert "Suppress 5 dEQP EGL tests on Pixel 6 Vulkan"
This reverts commit 87950668c45a0b5df6045d750afd4fd3c0502be2.
Reason for revert: should be fixed by
https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/9860
Original change's description:
> Suppress 5 dEQP EGL tests on Pixel 6 Vulkan
>
> Report VUID-vkGetDeviceFaultInfoEXT-device-07336 after VVL roll
> https://chromium-review.googlesource.com/c/angle/angle/+/6430461
>
> Bug: angleproject:408225528
> Change-Id: I5208e5b4a8eea598feb0a155a6dadb3e1e722143
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6432451
> Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bug: angleproject:408225528
Change-Id: Ie832e7cb6856184e51a26d27c372753e2e597137
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6439031
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
0f356a34
|
2025-04-02T14:14:43
|
|
Update invalidation commands to disable PLS
Previously, commands that flush or invalidate tiled memory were
specified to generate an error if issued while PLS was active.
Remove all provisions around Flush(), Finish() and ClientWaitSync(),
and add a test to ensure these commands have no effect on PLS.
The reason we can make this change now is because we no longer support
EXT_shader_pixel_local_storage, which previously prevented us from
allowing these 3 commands.
Update the invalidation commands to disable PLS instead. This is more in
line with the general design pattern of PLS. Update the wording of the
spec to reflect this better organization.
Also clean up some legacy code that was no longer used.
Bug: angleproject:40096838
Change-Id: I9687deaf17a583f8757ffcd050eda154b4e7a949
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6427324
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
3818d37d
|
2025-04-04T15:07:59
|
|
CL: Add end_capture to capture/replay tool
Many different applications don't explicitly make it clear
the ending frame of what's being run. With the end_capture
utility, when the user sets end_capture to 0, the application
automatically finishes the capture immediately.
Example OpenCL applications where this is useful:
AI-Benchmark, Geekbench Compute, Geekbench AI
Bug: angleproject:402174922
Change-Id: I1710ae1b1703f710865a9862c4cf3de753c2ccbd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6339791
Reviewed-by: Roman Lavrov <romanl@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
c9e90490
|
2025-03-27T18:26:19
|
|
Capture: Keep binary data in memory in chunks
This is needed for taking large captures out of Chromium, because its
memory allocator refuses to allocate objects bigger than 1~2GB.
Incidentally, it also optimizes taking large captures by avoiding
frequent calls to `vector::resize` while the vector is very large.
Bug: b/381284577
Change-Id: I4ccd3c8ea50df59520334f70e99083847da20c9f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6406214
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
f798b0d2
|
2025-04-04T08:17:57
|
|
Vulkan: Remove enablePreRotateSurfaces feature
Removed to simplify the code and to avoid the problem for which
`presentSubOptimalReturnedOnTransformChange` feature was added.
Platforms without the per-rotation support always have
`VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR` as the `currentTransform`, so
the code will perform the same as when the feature was disabled.
Add `warmUpPreRotatePipelineVariations` to explicitly control
per-rotation pipeline warm up.
Bug: angleproject:42262166
Change-Id: I44f6c221c11105f01f62f62622987b1955bc58aa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6433586
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
87950668
|
2025-04-04T10:38:07
|
|
Suppress 5 dEQP EGL tests on Pixel 6 Vulkan
Report VUID-vkGetDeviceFaultInfoEXT-device-07336 after VVL roll
https://chromium-review.googlesource.com/c/angle/angle/+/6430461
Bug: angleproject:408225528
Change-Id: I5208e5b4a8eea598feb0a155a6dadb3e1e722143
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6432451
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
0f9feb49
|
2025-03-15T23:51:04
|
|
Metal: Use render passes for B2T PBO copies.
This would make it possible to avoid setting ShaderWrite usage to all
textures in future.
Bug: chromium:392521084
Change-Id: I25145f3578589c71ee469df08162d3a3f17c8cbe
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6356129
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
|
|
f56c8e02
|
2025-03-28T00:00:00
|
|
Fix & cleanup advanced blend equations support
* Made advanced blend equation extensions
enableable to facilitate better testing.
* Made initial BLEND_ADVANCED_COHERENT state to be
unconditionally true regardless of the extension
support. If the coherent extension is unsupported,
that state must not be observable anyway.
* Ensured that advanced blend equation functionality
is supported on unextended OpenGL ES 3.2 contexts.
* Removed redundant ES 2.0+ context version checks
because these extensions must never be enabled
on ES 1.x contexts.
* Fixed ValidateBlendBarrierKHR to set the correct
error code and properly mark invalid calls.
* Added more negative test cases and enabled
tests on OpenGL ES 3.0 contexts.
Bug: angleproject:42262258
Bug: angleproject:406922380
Change-Id: I709376ad40b09972a31a691ca3813e87dd2c8165
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6421857
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
45de9be0
|
2025-03-27T16:38:28
|
|
num_views layout qualifiers are allowed only in vs
Bug: angleproject:385038758
Change-Id: I415c9d83b227673f9fbeeb30e8f51d69c34212ef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6414749
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Robic Sun <Robic.Sun@arm.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
eec873ed
|
2025-03-28T00:00:00
|
|
Fix FramebufferTexture2DMultisampleEXT validation
Generate an error when the samples value is negative.
Bug: angleproject:406922380
Change-Id: I508f3ddf82e30291fdcc3086ab19ebfa4f84947c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6421716
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
bbf92d12
|
2025-03-21T12:43:14
|
|
Vulkan: Add workaround flag for extra submit fence
This change is a workaround for some devices exhibiting a
device-lost error related to the fence usage in the command
batches when working with EGL sync objects, such as a cycle
similar to below:
- <Some GL work>
- eglCreateSyncKHR()
- glFlush()
- eglDupNativeFenceFDANDROID()
- eglDestroySyncKHR()
- <More GL work>
(The exact point of error and the reason for the device-lost
remain unknown.)
This change is meant to mitigate such errors on those devices if
needed. However, for the rest, the feature will remain disabled.
* Added a new feature flag: enableExtraSubmitFence
* Modified the usage of mFence in CommandBatch
* It is also used when enableExtraSubmitFence is enabled, even if
there is an external fence.
* When there is an external fence, this object is used to create
an empty submission after the primary commands are submitted
using the external fence.
* Added the config to enable EnableExtraSubmitFence for the following
suite: EGLSyncTest
Bug: b/384477641
Change-Id: I05f8bdcc804967c4984416af802326d22afd7a46
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6378778
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|