|
20a72581
|
2025-10-09T00:25:48
|
|
Skip the shader translator entirely with passthough shaders.
Reflect attribute and uniform information from the linked program in the
backend before the frontend links so that the link process can mostly
continue as usual.
BUG: angleproject:398857482
Change-Id: I88bcf28118deea278610d62cbb789d8c4097fb5a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7022354
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
6233955b
|
2025-10-13T17:58:29
|
|
Optimize SetUniform for isFloat16 case
Before this change, we use a temporary std::vector<GLshort> to store
the transformed GLshort uniform data. This incurs heap memory
allocation and deallocation every time we call SetUniform().
This change removes the temporary std::vector<GLshort>, and use the
stack memory to store the transformed GLshort uniform data.
To make code easier to read, placing the UpdateBufferWithLayout()
function for the special GLshort case inside the SetUniform() itself,
and remove the UpdateBufferWithLayout implementation for GLshort type.
On Pixel 9, the driver_overhead_2 trace wall_time changes from 9.4 ms
to 8.7 ms after this change.
Bug: angleproject:405795981
Change-Id: I7508e4a3e3c4615129ef540b0b4d6b3feea0e705
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7038417
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
7f5958c7
|
2025-10-15T15:09:45
|
|
Vulkan: roll Volk
This pulls in support for VK_AMD_anti_lag entry points.
Bug: angleproject:452392028
Change-Id: I03109ac30a88bdb551f9bc1ccaae91f79464bfa9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7046016
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
eaad4345
|
2025-09-25T11:41:47
|
|
Fix issues from mixing regular/MSRTT multisampled renderbuffers
Mixing resolved and unresolved attachments results in inconsistent
sample states within the FBO, which violates the completeness
requirements. In ANGLE, the framebuffer completeness logic checks
RenderToTextureSamples only if the first attachment uses MSRTT mode.
However, it fails to account for cases where the first attachment uses
regular (non-MSRTT) mode. As a result, when the same framebuffer is
later used with MultisampledRenderToTexture, the sample count mismatch
between attachments may go undetected or misinterpreted, leading to
incorrect completeness status.
Bug: angleproject:447833937
Change-Id: I2d2743d7567b052b8df418447f287e6ac8af7b9a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6992818
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
99c47333
|
2025-10-15T13:21:19
|
|
[metal] Fix data race in commands scheduled sync
The recently added commands scheduled sync object adds a callback to
the command queue to be invoked when the scheduled handler for the
committed command buffer runs. This callback could be called after the
sync object is destoyed, so make sure it doesn't reference the original
sync object, but only a thread-safe ref-counted state object.
Bug: chromium:444702048
Change-Id: Ifaef54eae5dfdb0b6eb6b767120947e66a6a6964
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7046662
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Sunny Sachanandani <sunnyps@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
0b9caaf7
|
2025-10-16T09:28:43
|
|
Vulkan: Limit atomic counters to 32
Technically, the limit for atomic counters can be very large; we use an
SSBO to emulate them, which can commonly be gigabytes.
However, some tests create as many atomic counters as possible, which
with the added logic to use those atomic counters result in huge
shaders, risking exhausting SPIR-V's 16-bit ids.
Given most GLES drivers expose a limit of 8, there's no reason for ANGLE
to expose 4096 of them. This limit is lowered to 32 in this change.
Bug: angleproject:42262227
Change-Id: I9f1db94bb688050cbd9b4eaa7af65317ab806322
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7042357
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
665785f6
|
2025-10-11T14:11:26
|
|
Vulkan: Load the image when damage region is set
Ensure image loads when buffer age > 0 and damage region is set,
regardless of first eglQuerySurface call
Bug: angleproject:450967247
Change-Id: I5cae32fc3c3e8c0b26e9d8a6eb6c1365d0d12bf9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7031241
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Xin Yuan <xin.yuan@arm.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
b712a720
|
2025-10-10T17:06:44
|
|
Translator: Check for recursion during parse
GLSL bans static recursion (i.e. it's an error even if recursion could
get dead-code-eliminated). Tracking the call graph at parse time lets
the translator be precise about this.
This change also prepares for a few follow up changes that make CallDAG
obsolete.
Bug: angleproject:349994211
Change-Id: I66f2cc3e544932f089f8185ccf15b3bd98779d13
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7031487
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
8469b249
|
2025-10-10T14:12:20
|
|
Translator: Reject infinite loop during parse
Bug: angleproject:349994211
Change-Id: I38964414b2992319e5f80f18a417210f86d806a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7029684
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
caf63365
|
2025-10-15T13:10:37
|
|
Translator: Avoid unreachable in presence of shader error
When the gl_ClipDistance/gl_CullDistance index is tracked for future
validation, the parser expected the index type to be valid, but it may
not be if there's a compile error.
Bug: angleproject:349994211
Change-Id: I94f39bec34a8ae68ef7d6c3cce256026808c0bc9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7042014
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3add1bfa
|
2025-10-10T12:31:30
|
|
FrameCapture: Add skip invalid condition
If array buffers bound to the vertex array object are deleted
and this vertex array object is not deleted, the replay could not work.
Added a skip condition when buffers bound to VAO are deleted.
Bug: b/448683996
Change-Id: I4c88438f81c9e8ff73f9dba994f445b7cb7ec58a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7030341
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
|
|
ded8ecc0
|
2025-10-15T15:26:23
|
|
Translator: Handle GS and TES output gl_Position like VS
The spec declares these special shader variables identically as:
```
out gl_PerVertex {
highp vec4 gl_Position;
};
```
Between vertex, geometry and tessellation evaluation shaders. Since the
output is nameless, vertex shaders have always treated `gl_Position` as
if it's a variable on its own. In this change, TES and GS treat that
variable the same way.
Additionally, this change removes `gl_Position` as a standalone variable
from tessellation _control_ shaders, which must always use `gl_out`
instead.
Bug: angleproject:349994211
Change-Id: Ib33592fb62af31021a99f76f77c27da214425826
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7042770
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
97b93617
|
2025-10-15T15:17:15
|
|
Translator: Remove gl_out from TES built-ins
Tessellation evaluation shaders don't have such a built-in. Like
geometry shaders, they only have an `out gl_PerVertex` that is not an
array.
Bug: angleproject:349994211
Change-Id: I6b333a223b721ca5ceb2d6c5658d802cb66769ad
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7042769
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d9ff0591
|
2025-10-15T13:43:51
|
|
Translator fuzzer: dump the shader to stderr
Bug: chromium:448166385
Change-Id: I67ff0a5b78a488bef2a867abef4b7f1ba72137bf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7042568
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
4ad0cae3
|
2025-10-15T14:55:27
|
|
Fix OpenGL ES version string
Cache only the major and minor version for GLES
Bug: angleproject:386749841
Change-Id: I936ee56f19d1d459f855a643f9b67ae4f596a1d5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7047080
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
ac80018c
|
2025-08-17T06:33:17
|
|
CL/Vulkan: Set host cached bit for HOST_PTR buffers
Leads to better performance on "clEnqueueReadBuffer" operations
when CL buffers are created as host-pointer based buffers.
Bug: angleproject:42267018
Change-Id: I18048deea96858180b63cfad95fe33fbab7f11c9
Signed-off-by: kyongjoo.oh <kyongjoo.oh@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981096
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
fc46d336
|
2025-10-14T14:52:20
|
|
Add RobustBufferAccessBehaviorTest test
Bug: angleproject:451733089
Change-Id: If96dc9360ac952ad83f1edd9c5779c35c84eec02
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7043022
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
255dc673
|
2025-10-09T00:17:59
|
|
Translator: Validate ESSL 100 limitations during parse
Validating the shape of the for loop as specifically required by WebGL
(per ESSL 100 spec, Appendix A) is more easily done during parse, where
the shape of the input GLSL is exactly known.
Bug: angleproject:349994211
Change-Id: I05a9b1b6915dbc1f6c74bb9159f6cc85fefc7b67
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7022355
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
84b0cf1a
|
2025-10-08T15:54:43
|
|
Translator: Validate gl_FragData xor gl_FragColor early
The translator validates that these two built-ins are not simultaneously
used. This validation is moved earlier to the post-parse checks.
Bug: angleproject:349994211
Change-Id: I59f1266406c3f82da560f3a18bb88571ab614d75
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7022017
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
8c15b966
|
2025-10-08T15:31:25
|
|
Translator: Validate MaxFunctionParameters limit during parse
Bug: angleproject:349994211
Change-Id: Ic9e4a6d1279cdfdb8d24a029182f3c83a79ef05f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7022016
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7280d3d1
|
2025-10-14T09:56:58
|
|
Turn off preferSubmitAtFBOBoundary and add early submit logic
Disabling preferSubmitAtFBOBoundary for MALI GPUs and submit pending
commands at the draw call time if the number of write-commands in the
current render pass reaches a threshold to avoid delaying
the submission too much.
Bug: angleproject:447444701
Change-Id: I413a4beb7147afd4f064286433a76014b19a49c6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6994438
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Sean Feng <Sean.Feng@arm.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2027314b
|
2025-08-26T17:07:27
|
|
CL/Vulkan: Enable OpenCL kernel printf in logcat
Added `__android_log_write` for kernel print output buffer
in case of android build
Bug: angleproject:433980940
Change-Id: I4eac408076c3b4d804949724eff439137172fa54
Signed-off-by: hoonee.cho <hoonee.cho@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981095
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
|
|
54409f2b
|
2025-09-22T15:00:59
|
|
cl/vk: Autogen image order and types
Adding ANGLE packed enums for image
order and types.
Bug: angleproject:447192713
Change-Id: I92950330cbaabc48b3c481d5ce3616a3c0030259
Signed-off-by: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6980531
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
774bca93
|
2025-10-08T18:41:13
|
|
[metal] Add commands scheduled sync object
We need a thread-safe way to wait for ANGLE Metal command buffers to be
scheduled for IOSurface synchronization with DrDC + Graphite on Mac.
The existing eglWaitUntilWorkScheduledANGLE API isn't thread-safe as it
reaches into ContextMtl innards to flush the command buffer.
This CL adds the EGL_ANGLE_metal_commands_scheduled_sync extension which
introduces a EGL_SYNC_METAL_COMMANDS_SCHEDULED_ANGLE sync object type.
This sync object is signaled when pending Metal commands are scheduled
to run on the GPU (MTLCommandBufferStatusScheduled). These sync objects
are thread-safe - eglClientWaitSync() can be called on any thread even
without a current context which is needed for DrDC + Graphite on Mac.
Bug: chromium:444702048
Change-Id: Ia13b352385a6fefaa026526ef74f6e596a6a6964
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7027996
Auto-Submit: Sunny Sachanandani <sunnyps@chromium.org>
Reviewed-by: Quyen Le <lehoangquyen@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org>
|
|
e5b0553a
|
2025-10-08T15:18:25
|
|
Translator: Validate TCS barrier() rules during parse
... instead of doing an AST walk after parse.
Bug: angleproject:349994211
Change-Id: I175fecb593ac701208c20f77bb8dd3987c63fa11
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7022014
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
bf63a4ef
|
2025-10-08T15:13:58
|
|
Translator: Track control flow during parse
This change adds a stack to track control flow structures.
Currently, this replaces the loop/switch nesting level validation and
may look unnecessary, but a number of other post-parse validation will
be moved to parse-time and build on this stack.
Bug: angleproject:349994211
Change-Id: I841ce780f22410055feedb3194c24d84871a89cd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7022013
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
c1ae67dc
|
2025-08-18T17:26:21
|
|
cl/vk: Introduce Int64 Atomic support
Checks for VK_KHR_shader_atomic_int64 and
enables/reports the following if supported:
cl_khr_int64_base_atomics
cl_khr_int64_extended_atomics
Bug: angleproject:447192709
Change-Id: I47102efd3e269d518558993f6068bfc4f9dd79b6
Signed-off-by: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981099
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
104f0e68
|
2025-10-13T21:20:39
|
|
Tests: Add Umamusume: Pretty Derby trace
Test: angle_trace_tests --gtest_filter=*umamusume_pretty_derby
Bug: b/451770108
Change-Id: I6704c89a0c65f8eb233e54784ef57259b4e0d5da
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7039199
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4d52bedb
|
2025-08-12T00:28:48
|
|
CL/Vulkan: Add 3.0 atomic memory order feature macros
With OpenCL 3.0, generic atomic_{load,store} functions
are defined with memory_order_seq_cst and memory_scope_device
as memory order and scope. For these corresponding feature
macros need to be enabled. Setting them up accordingly.
Bug: angleproject:379669750
Change-Id: I355cf4107fee10d203837ca0aa4a9f473cd81929
Signed-off-by: hoonee.cho <hoonee.cho@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981092
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
|
|
7c7fcb92
|
2025-07-14T07:56:22
|
|
CL/Vulkan: Allocate descriptor sets under lock
Multiple threads in the application are accessing the OpenCL
runtime simultaneously, resulting in multiple SharedPtr of
mDynamicDescriptorPools[] being created for a single context.
This can lead to incorrect reference counting and
potentially cause `DynamicDescriptorPool::destroy` to be
called unexpectedly. This fixes the concurrent access issue
through acquiring the descriptor set mutex
just before initializing mDynamicDescriptorPools to ensure that
only one mDynamicDescriptorPools[] is created per context.
Bug: angleproject:383999367
Tests-Passing: test_integer_ops int_logic
Change-Id: Iba0fad6813a08e1631b73d5efae4f4639892b36f
Signed-off-by: hoonee.cho <hoonee.cho@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981091
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
|
|
e9e17890
|
2025-09-24T15:21:17
|
|
CL/Vulkan: Make CommandsStateMap as self contained
The `CommandsStateMap` object is used to capture all the state that
needs post-processing after a command batch is finished. Making this as
a standalone object.
Bug: angleproject:446112158
Change-Id: I1f33741da15fe32aae06cba79650dc76426490d5
Signed-off-by: Gowtham Tammana <g.tammana@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981090
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
80130da0
|
2025-10-01T14:53:23
|
|
Vulkan: Enable recycleVkEvent on swiftshader
Given that no GPU has reported that vkCreateEvent() + vkDestroyEvent()
has more overhead than vkCmdResetEvent(), we will keep the
recycleVkEvent feature flag off on all major hardware.
Enable the recycleVkEvent feature on swiftshader so we can
test the VkEvent recycle code path.
Bug: b/440066521
Change-Id: I0eb30ea9a01e287664effa33cef5227f9f438a56
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7004937
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
45b0571e
|
2025-09-24T15:20:53
|
|
Vulkan: Add barrier log only when present
Bug: angleproject:446112158
Change-Id: I4eb94c1514df5a2eaec70267e2dbbd5a1c2579bd
Signed-off-by: Gowtham Tammana <g.tammana@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6975005
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ea35293a
|
2025-04-14T15:52:02
|
|
CL/Vulkan: Dump commandstream on request
Dump the command stream to stdout when feature flag
`debug_cl_dump_command_stream` is enabled.
Bug: angleproject:446112158
Change-Id: I58ea7eec4c842aee382568c7f41c99a242d29680
Signed-off-by: Gowtham Tammana <g.tammana@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6975004
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
|
|
02ffcb36
|
2025-08-01T08:13:21
|
|
CL/VK: Fix heap overflow when kernel args exceed size
Prevented memory corruption by validating argument size against
allocated push constant size before copying.
Bug: angleproject:447192711
Tests-Passing: test_basic vector_swizzle
Change-Id: I73b03a31089ad922b9ad7c2295fd1578d60458ec
Signed-off-by: kyongjoo.oh <kyongjoo.oh@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981098
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
|
|
8ed16003
|
2025-10-09T09:43:37
|
|
tests: Fix ShadingRateEXTTest.FragmentShadingRatePrimitive
The test ShadingRateEXTTest.FragmentShadingRatePrimitive has several
errors:
1. The uniform 'u_color' is not set to any value.
2. The test incorrectly assumes GL_SHADING_RATE_1X1_PIXELS_EXT results
in the GLSL built-in 'gl_ShadingRateEXT' having a non-zero value.
3. The test attempts to validate the GL_SHADING_RATE_2X2_PIXELS_EXT
behavior, but never calls glShadingRateEXT() with this value.
4. kSimplePrimitiveShadingRateGS needs to set gl_PrimitiveShadingRateEXT
each iteration of the loop, rather than just once, due to the
EmitVertex() call which resets all output variables to undefined
values.
Once these issues are fixed, the test passes.
Bug: b/450024489
Bug: angleproject:444980424
Test: ShadingRateEXTTest.FragmentShadingRatePrimitive
Change-Id: If3b9379d4aac97bb106cc0b04550068cd0783a94
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7027991
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
62fe67a7
|
2025-10-09T11:12:47
|
|
Update Texture2DBaseMaxTestES3.Fuzz545ImmutableTexRenderFeedback
Make test updates to align more with conformance test
immutable-tex-render-feedback.html:
- Change several data types from unsigned to signed
- Some test iterations are skipped entirely
- Signed types align more closely with the gl operations
in which they are used as arguments.
- Update MIPS constant from 2 to 3
- Avoid modifying loop counter _level_prime_max directly
Add Roberto Rodriguez to CONTRIBUTORS list.
Bug: angleproject:450534531
Change-Id: I3389b64fe16bd8e59f45c228363d7f7ed089a757
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7027992
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
8af6c566
|
2025-10-08T11:25:49
|
|
Translator: Add more action routines to glslang.y
These will be used during IR generation, but are split in this change
because commits with glslang_tab_autogen.cpp take forever to
`git cl format`.
Bug: angleproject:349994211
Change-Id: Ib0a84710fa63fc33193fd5f485a434981baab61e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7022211
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
eec95a6b
|
2025-10-02T17:02:14
|
|
Translator: Remove NV_shader_framebuffer_fetch
This extension is never exposed by ANGLE. AFAICT, it was removed in
https://chromium-review.googlesource.com/c/angle/angle/+/688099 and
never added again.
The current implementation is incorrect even if the extension is
exposed; we assume gl_LastFragColorARM is the name, while this extension
uses gl_LastFragColor. This change removes mentions of this extension
instead of trying to fix it.
Bug: angleproject:349994211
Change-Id: I2391a225db95d73579fd71cf261360973e5935f7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7004390
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
074eec2f
|
2025-10-02T15:31:19
|
|
Translator: remove angle_BaseVertex/Instance from built-ins
These aren't built-ins, they are just used for emulation. Instead of
listing them in the built-in variables, they are now created as uniforms
during emulation.
This change also gives gl_BaseVertex/Instance their own qualifiers so
they aren't considered uniforms. The emulation pass is also optimized
to do fewer passes.
Bug: angleproject:349994211
Change-Id: I44fd345fd4a2dc4a001eb294952a984ae710d606
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7004388
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b0ee4239
|
2025-10-01T16:46:10
|
|
Translator: Validate clip/cull distance size during parse
... instead of in a post-parse pass. In this process, these array sizes
are determined during parse itself, and so can be applied to the IR
earlier.
Bug: angleproject:349994211
Change-Id: I542970f9262e346fd7443e48d780e8abfec95315
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7003832
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
17977bb0
|
2025-10-08T20:12:13
|
|
Tests: Add Lands of Jail trace
Test: angle_trace_tests --gtest_filter=*lands_of_jail
Bug: b/450394708
Change-Id: I8a87eca1a48b0a96e491be294d4c45ce125dcdee
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7021859
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
f9685fdb
|
2025-10-07T07:47:14
|
|
Fix: Correct various license issues in README.chromium files
Bug: chromium:365320788
Change-Id: I1cb11330176d7a63d3aedee78aa5a5c15fcca595
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7015769
Auto-Submit: Jordan Brown <rop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
715e935d
|
2025-10-08T21:16:08
|
|
D3D11: Add UMA metrics for Create*Shader's timing
Bug: chromium:399642827
Change-Id: Iaf22b598305d8c11ec0ea9bafa6cd1361db571f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7022089
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Quyen Le <lehoangquyen@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
37b48896
|
2025-10-08T08:51:44
|
|
Tests: Skip black_beacon on Pixel 6
Non-deterministic rendering results.
Bug: b/450251026
Change-Id: I8bf192d19e2be460816dcdc0a54eac56b8f291da
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7022171
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
c2010eb1
|
2025-10-06T10:13:40
|
|
Roll VK-GL-CTS from 7e7a6001a3f4 to db48c34bebaf (14 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/7e7a6001a3f4..db48c34bebaf
Update GN with CMakeLists.txt changes in:
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+/d1cc04f42d9d6de78bc68abe0ce3d98754c2ac3a
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+/4c03f49146f25e18d6b1f9d983cc531f7683c87a
2025-10-03 javed@igalia.com Add format reinterpretation tests
2025-10-03 rgarcia@igalia.com Update Vulkan CTS Linux build instructions
2025-10-03 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.12
into vk-gl-cts/main
2025-10-03 scerveau@igalia.com Video: Use TCU_CHECK_AND_THROW instead of
DE_ASSERT
2025-10-03 shihwang@amd.com Add mesh shader tests
2025-10-03 apinheiro@igalia.com ARB_texture_filter_minmax depends on
OpenGL 3.3 not 4.5
2025-10-03 niklas.ulvinge@arm.com Improve coverage for textureQueryLod
2025-10-03 david.rosca@amd.com Add R16_SINT format for quantization
delta map
2025-10-03 ziga@lunarg.com Verify supported host image copy layouts with
unified image layouts
2025-10-03 ziga@lunarg.com Test vkCmdBindDescriptors2 with dynamic
offsets
2025-10-03 ziga@lunarg.com Tests for dedicated device memory
overallocation with buffers
2025-10-03 rgarcia@igalia.com Add GPL tests in which some set layouts
are always null
2025-10-03 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.4
into vk-gl-cts/main
2025-09-29 lorenzo@khronosgroup.org Merge remote-tracking branch
'vk-gl-cts/dev/VK_KHR_copy_memory_indirect2' into main
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll
Please CC 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 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: ynovikov@google.com
Change-Id: I8706e17b59da232b4da1d5da75f78955fb3ce526
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7010736
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Solti Ho <solti@google.com>
|
|
867b9b74
|
2025-10-07T16:23:01
|
|
Tests: Add Match Masters trace
Test: angle_trace_tests --gtest_filter=*match_masters
Bug: b/450081414
Change-Id: I90546fc4dea0e7257001fbf9a68087355b8ee39b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7019035
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
fecb8ead
|
2025-09-04T12:27:48
|
|
WGSL: implement inc/dec with generated functions
Implements inc/dec with generated WGSL functions that take pointers
and perform a post/pre inc/decrement. This works with scalars, vectors,
and matrices, both float and int.
WGSL supports inc/dec only on integer types, and only as statements
(not as expressions). https://www.w3.org/TR/WGSL/#increment-decrement.
The regular ++ and -- are used in this specific case.
The WGSL outputter records usage of increment/decrement and produces
a call to the correct function. A new class is introduced to keep the
record of which types need generated inc/dec WGSL functions.
Bug: angleproject:42267100
Change-Id: I0e70760ba5bd00f978e216f958216ae3137a146e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6935269
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f8c0eae1
|
2025-09-30T14:06:55
|
|
Tests: Add Identity V trace
Test: angle_trace_tests --gtest_filter=*identity_v
Bug: b/448431054
Change-Id: Ia39f775dbc22b8c8d7df1a9c49b31f1dd47d6a02
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7018081
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
b53f61e8
|
2025-10-06T15:48:42
|
|
Skia Gold: Limit frame count on SwiftShader
ANGLE traces have the ability to specify key frames for use
in golden image comparison. Since software rendering is
typically slow, we want to limit the impact of key frames
on our CI time.
Test: restricted_trace_gold_tests.py --key-frame-limit=10
Bug: b/449677825
Change-Id: Iddc26d76672b4cac36730eb1a4172f2037ccd3ef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7014647
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
6a997ce2
|
2025-10-03T00:03:25
|
|
Vulkan: SPIR-V Gen: Use unique id instead of pointer
Bug: angleproject:349994211
Change-Id: I66d6c3cf58f1e7d850fb19def7aa863774d918a9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7007612
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
6c4c0055
|
2025-10-01T15:13:14
|
|
WGSL: fix do-while when body has continue
If the body of the do while had a "continue" it would
skip over the evaluation of the loop condition and
potentially loop forever.
Change to use the special WGSL "continuing" statement,
which goes at the end of a loop body and always executes,
even if there is an earlier "continue".
Bug: angleproject:42267100
Change-Id: I4ac73e6abcb12e0ff395b83dc5666ac1870724e9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7003772
Reviewed-by: Liza Burakova <liza@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e1c14f0b
|
2025-10-02T23:42:01
|
|
Translator: Fix gl_LastFragColorARM not being qualified correctly
The qualifier adjustment was accidentally done after declaring the
variable in some cases.
Bug: angleproject:349994211
Change-Id: Iffd7567a119e1cd499c068742edfcb68a6a2336f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7006113
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
fd353919
|
2025-10-03T14:32:05
|
|
Vulkan: Fix VMA assertion
The primitive restart may generate zero size, and VMA does not like it.
Make sure we not pass down zero size here.
Bug: angleproject:448916158
Change-Id: I9a901127e8de11ab008e39330bd2eb93a9f135bc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7008828
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
01280f65
|
2025-07-29T10:14:54
|
|
CL/Vulkan: Remove spurious clear
The external events corresponding to a command stream submit and
processed and cleared before vkSubmit. So remove the spurious clear at
the time finish post processing.
Bug: angleproject:446112158
Change-Id: If2efcc3173e400ad2d386ca374eebe9d9f310692
Signed-off-by: Gowtham Tammana <g.tammana@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981089
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
|
|
d9fa255a
|
2025-10-02T11:58:06
|
|
Translator: Add numerous missing gl_PerVertex validations
Bug: angleproject:349994211
Change-Id: Ie4a602dd026a2dab95c9d77e8841e76967fa7f3d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7002885
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
fc98b3f6
|
2025-09-30T19:40:58
|
|
Add test to verify the direct YUV sampling case
This is a follow-up test to the commit below.
https://chromium-review.googlesource.com/c/angle/angle/+/6797965
The test verifies that the yuv image and image view are properly
initialized in a program using __samplerExternal2DY2YEXT sampler.
Bug: angleproject:386749841
Test: angle_end2end_tests --gtest_filter=ImageTestES3.*
Change-Id: Ia0142dfb9135df6684526bf88f8c8b257416be10
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7001563
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
5c58505b
|
2025-10-02T16:22:19
|
|
Tests: Update expectations for GalaxyS24Exynos
Test: angle_end2end_tests
Bug: b/410630704
Change-Id: I18c1a9d9c5dfbb4b9238ecac5a081bde5c070540
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7007381
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
5e724354
|
2025-10-03T15:53:45
|
|
Fix UniformBufferTest.MultipleSizesSmallBeforeBig on AMD/Linux
Bug: angleproject:42266818
Change-Id: I4ccb02ea1d21b5d8d8861837c3e40a3b0fa75610
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7008549
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b276d1f8
|
2025-10-03T08:56:54
|
|
Vulkan: Add supportShaderPixelLocalStorageAngle feature
Don't expose GL_ANGLE_shader_pixel_local_storage extension for Samsung
Bug: angleproject:386749841
Change-Id: Ia22a6e8d8625db2abc7e7e9816ac34b7a7dec92c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7006000
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
51fcd399
|
2025-10-03T10:39:14
|
|
Revert "Vulkan: Suppress buggy VU"
This reverts commit a83d674ed6b9096a5c5b1f3e3924aaa340bd3867.
Reason for revert: Buggy VU was disabled in VVL
Original change's description:
> Vulkan: Suppress buggy VU
>
> Bug: angleproject:448630613
> Change-Id: Ibccc4fbbe6257a3b96f5ccb112fec866cc2c3efe
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7003828
> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Bug: angleproject:448630613
Change-Id: I19ebc3cb83d9ceefcfbbb92df0a0e1bde4ff7a36
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7007012
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
41bc2afa
|
2025-10-02T16:22:33
|
|
Vulkan: Remove mBindingDirtyBitsRequiresPipelineUpdate
mBindingDirtyBitsRequiresPipelineUpdate and
mAttribDirtyBitsRequiresPipelineUpdate are used to avoid
GraphicsPipelineDesc::updateVertexInput() call. This function is not
being used when supportsVertexInputDynamicState is enabled, which almost
all recent drivers do. We could potentially do similar optimizations
when supportsVertexInputDynamicState is enabled to avoid
RenderPassCommands::setVertexInput() call. But the logic is complex
enough not really worth it (See crrev.com/c/6961186 for draft CL). If
any, simply compare the new value and old value probably is as good as
checking the dirty bits. In this CL, all these dirty bits checking are
removed so that we do not waste CPU cycles to track these dirty bits
while not being used at all when supportsVertexInputDynamicState.enabled
is true.
Bug: b/439073246
Bug: b/442636174
Change-Id: I7d71d4fc9388612e7c6ccc50a2e781325fe953bc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7007241
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
8f8f0439
|
2025-10-02T15:44:46
|
|
Group the class methods together
In previous many CLs, I intentionally not move around the code for ease
of code review. Now everything has settled down, it is the time to
regroup class methods together.
Also renamed some various in VertexArrayVk to be consistent with each
other.
No functional change is expected in this CL.
Bug: b/439073246
Bug: b/433331119
Change-Id: I84f9a2ff9ea20f359e2f546ecb4e3e503b805748
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7007472
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
f1110548
|
2025-10-03T10:00:59
|
|
Suppress failing test on iOS
Bug: angleproject:448658625
Change-Id: I35b5c41055136d2f8bffdf9e48dd6480fd248c90
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7002518
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
62b00f86
|
2025-10-02T12:19:23
|
|
Vulkan: Further minimize VertexArrayVk::syncDirtyEnabledAttrib
This CL splits the streaming handling into its own function:
syncDirtyEnabledAttrib is now splitted into
syncDirtyEnabledNonStreamingAttrib and syncDirtyEnabledStreamingAttrib.
This minimize the condition check inside syncDirtyEnabledAttrib.
VertexArrayVk::syncDirtyEnabledAttrib() function has a check of
bufferGL->getSize() > 0 as well as hasAtLeastOneVertex. And if either of
them are false, they simply point to empty buffer. This CL merges these
this fallout case into hasAtLeastOneVertex and added ASSERT to ensure
that if buffer size is 0, hasAtLeastOneVertex is false.
Bug: b/439073246
Change-Id: I5e3592c31469d15f5321208eb0278b10e447118c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6987341
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2247ebec
|
2025-10-02T09:52:40
|
|
Trace/Replay: Don't reset max shader/program ID
The mMaxShaderProgramID variable was being reset between captures.
This could result in trace crashes when the temp shader/program
start ID conflicted with active programs or shaders.
Test: angle_trace_tests --gtest_filter=*identity_v
Bug: b/448817125
Change-Id: I49c1d94b5824a8eaee444f7e4eb323ddab1a3edc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7006451
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
538129c6
|
2025-10-01T15:08:53
|
|
Remove b/ from end2end expectations
Bug: None
Change-Id: Ibfa3ca48dc5084ffd548cc1ff331bf29592a817e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7004585
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7b4ff0b2
|
2025-10-01T16:30:47
|
|
Vulkan: Updates to onFramebufferBoundary
1. Rename to the more appropriate onFrameBoundary
2. Add method to renderer for better encapsulation
3. When being moved to the background some apps unMakeCurrent
the contexts and exit without calling other frame boundary
APIs. Handle such usecases by treating
ContextVk::onUnMakeCurrent(...) as a frame boundary
Bug: angleproject:386749841
Change-Id: Ic2a8ecb631d132d99f8508f45f3b454c49f6624e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7004936
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
ec4d8946
|
2025-09-29T15:32:40
|
|
A fistful of tricky GLSL tests
Bug: angleproject:349994211
Bug: angleproject:448658624
Bug: angleproject:448658625
Bug: angleproject:448658631
Bug: angleproject:448675904
Change-Id: I8ad8727b7c8f7889a1249dfc7382c7e0318c5496
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6996988
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
1f3b482f
|
2025-10-02T12:05:44
|
|
Translator: Fix UNREACHABLE() on gl_DepthRange compile error
Bug: angleproject:349994211
Change-Id: I1918c8390de3fa4a5c7542b044e91e8d5e944b3a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7002886
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
4daab276
|
2025-10-01T16:20:53
|
|
Fix test supplying 2D texture data to 3D texture
Bug: chromium:446633198
Change-Id: I4ee9cee6788123e5e2d5527e92433c5df61aa063
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7004941
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
b152eb30
|
2025-09-12T21:20:08
|
|
Vulkan: Refine conditions to force submit immutable textures
To minimize unnecessary submissions, make the activation
conditions for forceSubmitImmutableTextureUpdates feature
more precise.
This also enables the feature for Samsung devices.
Bug: b/444728814
Change-Id: Idaf6b36596752f55ec6ba0ca1e4ff516f3a280df
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6945861
Reviewed-by: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
7994bf76
|
2025-09-29T11:55:00
|
|
Vulkan: Avoid double-setting the fragment shading rate
Because there were two handlers for fragment shading rate, one for the
QCOM extension and one for EXT, every time the render pass started, it
would set the fragment shading rate to 1x1 twice.
Bug: angleproject:420310117
Change-Id: I905c504c7a7b80b5e7173e5d6a7cabe6f271e7a1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6995362
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
17307955
|
2025-09-30T18:08:18
|
|
Vulkan: Add a threshold for RefCountedEventRecycler::mEventsToReset
Surface Flinger process is not guaranteed to call
Renderer::flushOutsideRPCommands(), in that case
RefCountedEventRecycler::mEventsToReset is never cleaned up and
send back to RefCountedEventRecycler::mEventsToReuse list, which causes
file descriptors leaking. This change adds a threshold for the number
of items in RefCountedEventRecycler::mEventsToReset. If the threshold
is reached, don't add item to RefCountedEventRecycler::mEventsToReset,
destroy the items instead.
Bug: b/440066521
Change-Id: If4aa0b14ab15e70f192f380e3b9707b405dd6fcb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7001562
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
7093e400
|
2025-09-29T14:31:06
|
|
Vulkan: Fix buffer size for vertex array
* In syncDirtyEnabledAttrib() in VertexArrayVk, the array buffer size
used for binding (BindVertexBuffers2()) has been changed to that of
bufferHelper.
Bug: angleproject:448047351
Change-Id: I852e4839cba698c01f92644cf32fadf366c0b54f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6996428
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a83d674e
|
2025-10-01T12:42:48
|
|
Vulkan: Suppress buggy VU
Bug: angleproject:448630613
Change-Id: Ibccc4fbbe6257a3b96f5ccb112fec866cc2c3efe
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7003828
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
4cff5289
|
2025-08-12T19:31:36
|
|
WGSL: append TSymbolUniqueId to overloaded functions
dEQP-GLES2.functional.shaders.functions.overloading.*
passes after this.
So that overloaded functions have unique names in GLSL,
append their TSymbol's unique id to the name of the
emitted WGSL function.
Bug: angleproject:42267100
Change-Id: I25026e71f9e27cb323014cd4102f914226c27d02
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6843927
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
|
|
b2acbf90
|
2025-09-30T16:49:40
|
|
Tests: Add Raising a Goblin trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*raising_a_goblin
Bug: b/448458599, b/448468885
Change-Id: I36909d44ccf817ae54b80968b75136c2478b38f1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7001560
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
|
|
ae02c329
|
2025-09-30T00:04:58
|
|
Translator: Give gl_DepthRange its own qualifier
gl_DepthRange and gl_NumSamples are considered "uniform" by the GLSL
spec, but gl_NumSamples gets its own qualifier in the translator. This
left gl_DepthRange as the only built-in that had to be detected by its
name instead of qualifier. This change adds a qualifier for
gl_DepthRange to remove this special-ness.
Bug: angleproject:349994211
Change-Id: I2b7b0acf3dcaef22bb4a98e4d35fd2cdfd5c825a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6998990
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
789693f0
|
2025-09-30T14:30:59
|
|
Translator: Fail compilation if built-in redeclared after qualified
If a built-in is qualified then redeclared like so:
invariant gl_FragDepth;
out float gl_FragDepth;
the translator would have to remove the previous qualification statement
and apply its effect to the redeclared variable directly. While this is
possible, it has always been broken (i.e. there are no users), and is
not really useful to support, since the application could have done the
following instead:
invariant out float gl_FragDepth;
The spec does not explicitly call this out as invalid, but this change
generates a compile error for the above scenario anyway, as supporting
it can get unnecessarily intrusive.
Bug: angleproject:349994211
Change-Id: I9ddb181c8808f50aeed5b327a95b3df829206822
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6999640
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7b14dd73
|
2025-08-19T15:57:34
|
|
WGSL: RewriteMixedTypeMathExprs
RewriteMixedTypeMathExprs: Some mixed-type arithmetic is legal in GLSL
but not WGSL. Generate code to perform the arithmetic as specified in
GLSL.
Example:
uvec2 x;
uint y;
x &= y;
Is transformed into:
x &= uvec(y);
Also,
mat2 x;
int y;
x += y;
Is transformed into:
x += mat2(float(y), float(y), float(y), float(y))
Bug: angleproject:42267100
Change-Id: I4a0ec1d9806b3331b4b1feff6fbe7c0f212f8120
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6862843
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
|
|
a38f60ea
|
2025-09-30T13:40:44
|
|
Translator: Fail compilation if main() is only prototype
Bug: chromium:448166385
Change-Id: Ia6b69839e35f3e0dcdf3e6e918397d3e2fd83fa2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7000630
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
85631b1d
|
2025-09-30T14:25:30
|
|
Translator fuzzer: Dump the shader before compiling it
So that fuzzer reports tell you what the shader is without us needing to
debug-print it.
Bug: chromium:448166385
Change-Id: If2454093abd73771cbac787c7516259db6be82d2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6999637
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c4e942d6
|
2025-09-25T02:47:45
|
|
Tidy up some README.chromium files in Angle.
Backfills the Update Mechanism field for dependencies
and cleans up some of the other fields which are out of
date.
Bug: chromium:379934539
Change-Id: I9a952e905ce00c379c4d593dd67b7e0fc6f1794e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6981101
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e12bb29c
|
2025-08-01T15:34:26
|
|
Recompute vertex capacity when resuming transform feedback.
Extract vertex capacity computation into recomputeVertexCapacity()
and call it from both begin() and resume() to handle cases where
the backing buffer size changes while transform feedback is paused.
Add a new WebGL specific test to TransformFeedback to test the expected
behavior when making the backing buffer smaller via glBufferData.
Bug: angleproject:437706201
Change-Id: I3ac8e1e983ab868e34c1bdac249ce17a40e274f0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6830709
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
81cda669
|
2025-09-29T15:16:54
|
|
Tests: Add Knives Out trace
Test: angle_trace_tests --gtest_filter=*knives_out
Bug: b/448170020
Change-Id: I9a24ea1ae36b870a127a670db5000dd8db1668dc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6997769
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
ba5db43c
|
2025-09-27T08:51:25
|
|
Vulkan: support MESA PanVK compatibility
Naming wise:
1. isARMProprietary: ARM Mali DDK
2. isMesaPanVK: MESA PanVK
Compatibility wise:
1. No behavior change for ARM proprietary driver.
2. Gone through each isARM check and update to isARMProprietary for
those not applicable to MESA PanVK.
3. Fixed some isMaliJobManagerBasedGPU check which assumes the ARM
prorietary driver.
4. Enabled doubleDepthBiasConstantFactor for MESA PanVK.
Bug: b/399142853
Bug: b/447647367
Test: no unexpected regressions in dEQP-EGL.* and dEQP-GLES*
Test: dEQP-GLES3.functional.polygon_offset.* pass
Change-Id: I8f830632b4caf2e63a3ae87e15825e21476bf595
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6992252
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Yiwei Zhang <zzyiwei@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
e5b33850
|
2025-09-26T14:59:20
|
|
Translator: Fail earlier if main() is not present.
The IR assumes that main() is available on successful parse.
Additionally, in preparation for IR removing a check that the AST root
is set up, a compile failure to that effect is turned into an assertion.
The AST generated before IR is logically only used for validation
purposes, so the compiler cannot rely on it to generate an error.
Bug: angleproject:349994211
Change-Id: I5d4501b52fed8214213a4ae1dada923decee9a8b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6991529
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
1f723b35
|
2025-09-26T09:40:45
|
|
Tests: Add Puzzle & Dragons trace
Test: angle_trace_tests --gtest_filter=*puzzle_and_dragons
Bug: b/447599643, b/448110252
Change-Id: Ib7c167e776f5b3a64a3932b565f2984a0c6ac915
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6989949
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
f3405af0
|
2025-09-25T13:45:08
|
|
Translator: Fix gl_in redeclaration
This was seemingly untested, and had multiple issues:
* GLSL generation would output `gl_in gl_PerVertex { ... } gl_in;`
* SPIR-V generation would redeclare `gl_in` despite one already
existing.
* If sized after declaration, the redeclared `gl_in` was referencing a
different variable than the resized one.
Bug: angleproject:42264111
Bug: angleproject:349994211
Bug: angleproject:447556589
Change-Id: Id63912b68625bafcc64197807b1c8a86e6f952b5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6985323
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
f95cbef4
|
2025-09-07T17:50:37
|
|
Reland "Add a "noncoherent" layout qualifier to PLS"
This is a reland of commit ef9c5ce43110f4f8ba56124bdee927944ce3ddd1 with
an invalid assert removed.
Original change's description:
> Add a "noncoherent" layout qualifier to PLS
>
> Raster ordering can be expensive. If an app knows the geometry in a draw
> does not overlap, it can mark the PLS planes as noncoherent and opt for
> using barriers instead.
>
> Bug: angleproject:40096838
> Change-Id: I2d686c2e64f51940face186637a9fcadcc251bef
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6923300
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Kenneth Russell <kbr@chromium.org>
> Commit-Queue: Chris Dalton <chris@rive.app>
Bug: angleproject:40096838
Change-Id: I55077a973063427dfb0d510c87e75ec86ce8bb43
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6991929
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
35fade1e
|
2025-09-29T11:45:11
|
|
Suppress failing tests
Bug: angleproject:444980424
Bug: angleproject:40096874
Change-Id: I7f835f40fb685fb7122e921db8e047f3789c37f6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6995361
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
549e9ee0
|
2025-09-26T18:15:26
|
|
Capture/Replay: Re-enable passing tests:
Bug: angleproject:404418769
Change-Id: I4216a6206ec3d96a75ddd5177995ee26d539d73e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6990630
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
7a7681cc
|
2025-09-23T16:36:43
|
|
tests: Require GL_EXT_fragment_shading_rate_primitive
Shaders can only reference the built-in gl_PrimitiveShadingRateEXT if
the extension GL_EXT_fragment_shading_rate_primitive is supported.
However, the test ShadingRateEXTTest.FragmentShadingRateBlend uses a
shader that references the built-in without checking if it's available
first.
Skip the test ShadingRateEXTTest.FragmentShadingRateBlend if the
extension GL_EXT_fragment_shading_rate_primitive is not available.
Bug: b/446958061
Test: angle_end2end_tests --gtest_filter=ShadingRateEXTTest.*
Change-Id: I11d7086a30db704c560c7446b4b7d997bb54b578
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6976660
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
020c8ea3
|
2025-09-26T12:35:25
|
|
Disable convertLowpAndMediumpFloatUniformsTo16Bits on non-ARM devices
It is unknown if other GPUs need this explicitly 32-bit to 16-bit
casts, and the performance impact of this feature needs to be verified
across different GPUs.
Bug: b/405795981
Change-Id: I1b450aea58d6f4a20eddac5c9edceb4ebac4d999
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6990532
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
6218bbd4
|
2025-09-26T12:20:39
|
|
Vulkan: Make min submit command count dynamic
* Turned the constant submit count threshold to a variable that can
be set for different devices independently.
* Added feature flag to enable forcing submission for certain GL
commands, such as Clear and Invalidate.
* If disabled, it would treat all commands the same and submit at
the count threshold without exception.
Bug: b/422507974
Change-Id: Ib13d36adfdcf75aa865dafadc279287f4a4bd1c7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6990531
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
18f28e59
|
2025-09-25T13:41:45
|
|
Translator: Mark redeclared gl_Position/PointSize as built-in
When redeclared according to EXT_separate_shader_objects, these
variables were given a UserDefined symbol type. While this doesn't
affect SPIR-V (with Vulkan being the only backend that supports
EXT_separate_shader_objects), it does affect the rest of the AST,
including GLSL generation which would output _ugl_Position if support
for the extension is enabled.
Bug: angleproject:42265086
Bug: angleproject:349994211
Change-Id: I04d088017dbe6e32bfee675f0124c4cc3ffdefc2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6985322
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
94777428
|
2025-08-08T10:36:22
|
|
Shading rate should be {1,1} when enabled PER_SAMPLE
According to spec, if FETCH_PER_SAMPLE_ARM is enabled, the fragment
shading rate is set to {1,1}.
Bug: angleproject:437957110
Change-Id: I3ea6958f1aaec5f13923f62001906c7c6c71e09e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6839957
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Tingwei Guo <tingwei.guo@arm.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
1ca9e7fb
|
2025-09-25T15:23:48
|
|
Tests: Add Harry Potter Magic Awakened trace
Test: angle_trace_tests --gtest_filter=*harry_potter_magic_awakened
Bug: b/441547450
Change-Id: Ie804ef3dc8c6d6d17f041dadab0f4fb58a27d867
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6986843
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
193e9cda
|
2025-09-25T15:26:39
|
|
Revert "Vulkan: Simplify/Fix DmaBufImageSiblingVkLinux import probing"
This reverts commit d917f77130e5194e82418f3bdaa2cd5b2af55c03.
Reason for revert: Google Meet Regression https://crbug.com/445863166
Original change's description:
> Vulkan: Simplify/Fix DmaBufImageSiblingVkLinux import probing
>
> Remove the multi-format probing logic in DmaBufImageSiblingVkLinux.
> Use the renderer’s base VkFormat and a single check with
> VkImageFormatListCreateInfo, instead of looping over mVkFormats with
> mutable/non-mutable combinations. This cuts down redundant queries
> and streamlines initImpl.
>
> Also, this CL fixes some issues occur when mapping DRM format into
> Vulkan backend formats.
> - Default to SampleOnly but prefer Renderable if the modifier properties
> exposes both sampling and rendering, since usage at import time is
> unknown.
> - Fix emulated-format handling issue by using getIntendedFormatID() and
> getActualImageFormatID() instead of deriving both IDs from VkFormat with
> GetFormatIDFromVkFormat() directly.
>
> Bug: angleproject:442313595
> Bug: angleproject:426475684
> Change-Id: Ia38d8e7901da10948a2c15eb284b055359dd4a2d
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6904888
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: mohan maiya <m.maiya@samsung.com>
Bug: angleproject:442313595
Bug: angleproject:426475684
Bug: chromium:445863166
Change-Id: I530e9b363a2e25ec2325e3933a409d0aae9940c0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6986844
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Yuxin Hu <yuxinhu@google.com>
|