Hash :
239763d9
Author :
Date :
2025-04-04T17:52:10
CL/VK: Fix ArgumentWorkgroup setArg logic Issue was that clSetKernelArg for ArgumentWorkgroup type arguments would blindly push new values into kernel's spec-constant FastVector on every clSetKernelArg (even on same arg updates). This would lead to over-pushing due to same arg updates, which caused all kinds of issues, mainly erroneous misses in compute pipeline cache since the key is based on VkSpecializationInfo. Since kernel object already keeps a vector of kernel args, we don't need a separate spec-constant FastVector in CLKernelVk to track this. Remove it and derive the spec-constant data from the kernel args themselves. Bug: angleproject:366415134 Tests-Passing: Geekbench-6.2.2 - Workloads: [ 401 & 601 ] Change-Id: Iab7f27fdfdfede33881e1dd717ba3b771cffb985 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6773615 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>