|
b3e715de
|
2025-07-15T13:43:31
|
|
cl/vk: Fix user-event handling
- add missing internal retain for user-event setting
- add missing predicate for condition variable wait
- fix double-alloc on user-event backend creation
- mImpl is created during "initBackend", not ctor
Bug: angleproject:444482493
Change-Id: I48fa8bca43a06d5ff8b2bceb884a924840ec5682
Signed-off-by: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6941605
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e542cb6c
|
2025-09-15T16:35:34
|
|
Vulkan: Split handleDirtyGraphicsVertexBuffers into two funcs
ContextVk::handleDirtyGraphicsVertexBuffers() has two code paths that
are quite different, depends on if supportsVertexInputDynamicState is
enabled or not. This CL splits this function into two so that 1) code is
much easier to read that what is done in each case and 2) get rid of if
check at draw time.
Bug: b/439073246
Change-Id: Iaf9f84fb20d82e784f9dfe8ece321cff94b7b58d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6956208
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Charlie Lao <cclao@google.com>
|
|
f128872e
|
2025-09-16T23:37:08
|
|
Translator: Compare variables by unique id instead of pointer
Bug: angleproject:349994211
Change-Id: I32ab2ffe9a04e196330949484e704913d0f4e41d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6955119
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
0cc9b7be
|
2025-09-03T11:33:37
|
|
Support more YUV formats in CopyTextureCHROMIUM
Add support for formats in GL_ANGLE_yuv_internal_format as source
textures to glCopyTextureCHROMIUM. These formats are common
AHardwareBuffer formats and Chrome uses them as copy texture sources
when decoding video.
Bug: chromium:405308165
Change-Id: Ic817cce83b676ee9a517bee4fac6ef94a174961f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6908295
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
938c80d5
|
2025-09-17T11:57:39
|
|
Fix missing include for <ratio> used for std::nano.
Bug: b/412761856
Change-Id: I7535e7176e4372df6948f903504594e448153d48
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6961860
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Loko Kung <lokokung@google.com>
Commit-Queue: Loko Kung <lokokung@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
130bdaa9
|
2025-09-10T12:51:37
|
|
Vulkan: Store VkFormat in VkVertexInputBindingDescription2EXT
In preparation for next CL that uses VkVertexInputBindingDescription2EXT
directly, this CL also stores the VkFormat in
VkVertexInputBindingDescription2EXT directly. mDefaultAttribFormatIDs is
added to store the angle::FormatID for the default attribute (used when
attrib is disabled in VertexArray)
Bug: b/439073246
Change-Id: Ia36758b258be23676b9b12c0c7cec7adefe1036a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6935270
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1252d9aa
|
2025-05-30T14:16:23
|
|
CL: Create frontend event and pass to enqueue APIs
Since frontend cl_event object does not depend on enqueue
API routines, we can construct it early and then pass to
mImpl enqueue API calls (for any backend that needs it).
Also update backend routines to init their backend
event implementations using frontend event object.
Bug: angleproject:444482493
Change-Id: I459dbf34f10cb6b30245479c9966f876d6e905d7
Signed-off-by: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6941604
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5298dccc
|
2025-09-13T21:04:47
|
|
Vulkan: Fix depth/stencil blit src layer
The depth/stencil views used in blit viewed the exact layer, so they are
always 2D and no layer parameter is needed.
Tests upcoming in
https://chromium-review.googlesource.com/c/angle/angle/+/6780168
Bug: angleproject:433816259
Change-Id: I7fa105d2734c47c86d4d0e82e8f68dc1a23e4612
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6944631
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
f8c8264a
|
2025-09-17T10:01:22
|
|
Support RGBX format with GL_RGBA when using glTexSubImage2D
Add an additional combination support with GL_RGBA in glTexSubImage2D
for RGBX format.
Add an end2end test.
Bug: angleproject:444335354
Change-Id: I96fc9d3543fc58c9f666bf149f78cf9049758a32
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6938945
Reviewed-by: Charlie Lao <cclao@google.com>
Auto-Submit: Aurora Zhang <Aurora.Zhang@arm.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c8af6941
|
2025-09-16T14:51:55
|
|
Vulkan: Enable FragmentShadingRateEXT
CTS fix patch was merged, enable per draw and per primitive VRS.
Bug: angleproject:397255625
Change-Id: I681a52d9d28572153ff868cfbfc71657f26e3b21
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6953541
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Panfeng Hou <panfeng.hou@arm.com>
|
|
2f564f1c
|
2025-09-16T16:46:36
|
|
mac: handle Metal toolchain being unbundled from Xcode 26
The Metal toolchain was formerly part of Xcode, but in Xcode 26, it has
been unbundled and is now a separate install. Attempting to use the
Metal toolchain without installing it results in a build error, such as:
error: error: cannot execute tool 'metal' due to missing Metal
Toolchain; use: xcodebuild -downloadComponent MetalToolchain
By running the suggested command, the Metal toolchain can be installed,
but the existing angle build does not know how to find it correctly.
For system Xcode installations, tools from the Metal toolchain (`metal`
and `metallib`) can be run via `xcrun`. This construct should work
equally well for older Xcode versions, for situations where it’s still
in use.
For the hermetic toolchain, we’ll continue splicing the Metal toolchain
into the location it had previously been avialable (see
https://chromium-review.googlesource.com/c/6950738), although this is
subject to change in the future.
Bug: chromium:423933062, chromium:445400016
Change-Id: I139eca51938f7cecfec9b90fd488947160ef4ec9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6955000
Auto-Submit: Mark Mentovai <mark@chromium.org>
Commit-Queue: Mark Mentovai <mark@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
13ab9ed5
|
2025-09-16T08:08:46
|
|
Tests: Fix slotomania trace name
Previous name had a typo in it:
- slotmania -> slotomania
Test: angle_trace_tests --gtest_filter=*slotomania
Bug: b/445241470
Change-Id: Ie1c7f99ddf683dce7c93b394d53a4c5b90f57158
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6954868
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
|
|
ef9c5ce4
|
2025-09-07T17:50:37
|
|
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>
|
|
16771259
|
2025-09-12T11:10:18
|
|
Update main() prototype in shader if main() has been replaced.
If the main() function definition has been wrapped/replaced in a shader
and a main() function prototype is also present, the prototype needs to
be replaced. Otherwise it will continue to reference the replaced
main() which can cause issues with shader translation steps.
Bug: angleproject:444653099
Change-Id: Ie6ce85cac89e026876a1b6e25cd294f1d8a536c4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6944807
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
cf04616b
|
2025-09-11T12:16:54
|
|
Trace/Replay: Make SetupReplayContext(main) last in setup
The SetupReplayContext function for the main context was always
executed first in the main setup replay function -- move it to last
to minimize issues where Frame1 is expecting specific shader state
from the main context.
Test: angle_trace_tests --gtest_filter=*harry_potter_magic_awakened
Bug: b/445208963
Change-Id: Ia48760e704465150617ffd33d419195723a51285
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6950246
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
8e7fa804
|
2025-09-15T14:06:38
|
|
Check shaderFloat16 feature support for enabling Float16 in Spirv
According to VK_KHR_shader_float16_int8 device extension spec:
"It introduces two new optional features shaderFloat16 and shaderInt8
which directly map to the Float16 and the Int8 SPIR-V capabilities."
We should check if the shaderFloat16 is supported before we generate
SPIRV that declares SPIR-V Capability Float16
Bug: angleproject:405795981
Change-Id: Ied7edfbed81ed5b862907c9bb1e772cb43acdb8b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6919673
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Xiang Wang <xwxw@google.com>
|
|
90a12ea4
|
2025-09-15T23:29:55
|
|
Tests: Add Lineage2M trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*lineage_2m
Bug: b/445241477, b/445419190
Change-Id: Ie9971a95ccf373e0dfb2701e0f316ff987a1b967
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6953461
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
|
|
f0370a41
|
2025-09-09T19:44:57
|
|
Vulkan: Use the GENERAL layout if VK_KHR_unified_image_layouts
This lets ANGLE simplify synchronization by generally being able to use
memory barriers instead of listing image barriers separately. Although
the more specific access masks from VK_KHR_synchronization2 is possibly
necessary for some hardware to work optimally
(VK_ACCESS_2_SHADER_SAMPLED_READ_BIT in particular).
It also lets ANGLE optimize a very specific scenario. Take an image
used in the following scenario:
1. Copy to image in a transfer operation
2. Sample from image in the fragment shader of render pass 1
3. Sample from image in the vertex shader of shader pass 2
When GENERAL is not used, there's a layout transition between steps 1
and 2, changing the layout from TRANSFER_DST to
SHADER_READ_ONLY_OPTIMAL (with dst stage == fragment shader). Later, at
step 3, we need to make sure the vertex shader at least waits for this
layout transition to finish... a dependency which is not expressible in
Vulkan:
* There cannot be a dependency to step 1, because the layout transition
is not necessarily done
* There is no stage mask that signifies the end of a layout transition.
Without GENERAL, ANGLE has no choice but to issue a fragment->vertex
dependency before step 3, serializing render pass 2's vertex pass with
render pass 1's fragment pass on tilers.
When using the GENERAL layout instead, step 3 can issue a
transfer->vertex memory barrier, including using a VkEvent,
parallelizing the two render passes.
The above optimization is possible after this change, but not yet
implemented.
Bug: angleproject:422982681
Change-Id: Ieaae6f92b8b7d1e9c80c810a759c64b1e81d2dc1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6936485
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
98915e44
|
2025-09-12T14:15:05
|
|
Vulkan: Fix blit src missing mip
Bug: angleproject:433816259
Bug: angleproject:40644750
Change-Id: I50261279224dea8e37beff388207b927399d099a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6944327
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
e7b9bb3d
|
2025-09-15T19:12:37
|
|
Tests: Add trace batch for 2025-09-15
These traces were contributed by Samsung.
Traces in this batch include:
- slotmania
- spider_fighter_3
Test: angle_trace_tests
Bug: b/445240493, b/445241470
Change-Id: Iea862c88317f0fc793d6a1aa249399b538c0613e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6953240
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
3760c722
|
2025-09-09T10:50:15
|
|
FrameCapture: Add compare_trace_screenshots.py fuzz_ab command
Also add `compare_with_fuzz_factors()` and `get_common_files()` helper
functions to avoid code duplication.
Bug: b/294882956
Change-Id: Ibc12df0ec033db502930e8a7ea3b7be8b17a79b3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6932073
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
7a630c62
|
2025-09-15T16:29:55
|
|
FrameCapture: Disable GL_EXT_texture_norm16 during capture
Test: Lineage2M
Bug: b/445241477
Change-Id: Ib4cfd87f0b79646965ea3e24db5b725062cfa725
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6951980
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
|
|
b8281f5d
|
2025-09-09T17:15:26
|
|
Add condition check in emulate dithering shader code
Prior to this change, the emulate dithering shader code will write to
all elements of gl_FragData, regardless of whether the dither value is
zero or not: gl_FragData[i] = gl_FragData[i] + dither_value.
If dither_value is 0, then this doesn't change gl_FragData[i] and it
incurs unnecessary shader writes.
This change adds a boolean variable that is initialized to
false, and it is only set to true if dither value for that output
element is changed from zero to non-zero value. This way we are only
issuing shader write operations when necessary.
Bug: angleproject:425733272
Change-Id: Iacfd81ff9a1d7d0f71ecf8d119033b2500d2869e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6931777
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b5e73d90
|
2025-09-12T12:43:17
|
|
Vulkan: Enhance EGLPrintEGLinfoTest
Add tests that log features and vulkan extensions
Bug: angleproject:386749841
Change-Id: I212aca3015292ed2bd5cd08216878a4bc56db0a8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6944908
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
b496b7a5
|
2025-09-14T22:56:16
|
|
Vulkan: Bug fix to tracking of last non-shader-read-only access
Observed when an image is sampled in one shader stage and then another,
the tracking of which non-shader stage the image was last accessed in
was accidentally showing the first shader stage the image was sampled
in.
Bug: angleproject:388307202
Change-Id: Ic809994b67c00226cad44d9dbedec923639ca5b5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6947445
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
ab6a82e0
|
2025-09-12T15:57:43
|
|
Tests: Add trace batch for 2025-09-12
These traces were contributed by Samsung.
Traces in this batch include:
- cash_frenzy_casino_slots
- dark_war_survival
- qblock_wood_block_puzzle_game
- yalla_ludo
Test: angle_trace_tests
Bug: b/444735013, b/444735404, b/444737091, b/444736902
Change-Id: I81ecadfa77cf80d090c1d04785d01ff2eb43b03b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6944911
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
dce03998
|
2025-09-09T15:38:25
|
|
FrameCapture: Add discard_zero_diff_png argument
... into the "compare_trace_screenshots.py".
Bug: b/294882956
Change-Id: I639e842d36c5f0b5233ad8f7855e9381743078be
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6932072
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
238eaf1d
|
2025-09-09T15:14:02
|
|
FrameCapture: Fix ignoring compare_trace_screenshots.py --log
Bug: b/294882956
Change-Id: I1e281b058c2f09f0dca3ce76648e385a3b443f0a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6932071
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
1025f0a9
|
2025-09-11T17:11:43
|
|
Tests: Add trace batch for 2025-09-11
These traces were contributed by Samsung.
Traces in this batch include:
- archero_2
- bubble_shooter_relaxing
- hole_io
- my_talking_angela
- race_master_3d
Bug: b/444545431, b/444546028, b/444546358, b/444546046, b/444547452
Bug: b/444522928
Change-Id: I67987e4991b16207f4b45306ddee5e60ec2fbbf0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6941586
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
4ee596cc
|
2025-09-09T10:43:41
|
|
FrameCapture: Fix compare_trace_screenshots.py versus_native
... when not using `--trace-list-path` argument.
Also fix missing `--screenshot-dir ` argument in "README.md".
Bug: b/294882956
Change-Id: Ie69707e4ad97f69182f7635fdd52e1576136f483
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6932070
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
46444b3d
|
2025-09-09T16:13:58
|
|
Vulkan: Use VkVertexInputBindingDescription2EXT to store stride
This is preparation for next CL. Since most driver supports
VK_EXT_vertex_input_dynamic_state, which uses
VkVertexInputBindingDescription2EXT and
VkVertexInputAttributeDescription2EXT to send stride/divisor/offset to
the vulkan driver, why not store these directly in these structs instead
of store gl::AttribArray<> and copy then into
VkVertexInputBindingDescription2EXT/VkVertexInputBindingDescription2EXT
later. This CL only replaced mCurrentArrayBufferRelativeOffsets,
mCurrentArrayBufferStrides, mCurrentArrayBufferDivisors with
mVertexInputBindingDesc and mVertexInputAttribDesc. It still does the
data copy, which means this CL is mostly a mechanical change. But it
makes the next CL diff smaller.
Bug: b/439073246
Change-Id: Ie3c2034df07ea5e973b07a15f715fdb7c73ec04d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6933260
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
60f694c6
|
2025-09-10T11:55:58
|
|
Vulkan: Bugfixes in preferGlobalPipelineCache
1. per-program pipeline cache was being unconditionally initialized
during warmup
2. mergeProgramPipelineCachesToGlobalCache should be disabled when
preferGlobalPipelineCache feature is enabled
Also, prefer use of global pipeline cache for Samsung.
Bug: angleproject:386749841
Change-Id: Ifd66ef8c6d10b8a5ffd3c002239e8747f469ba47
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6936119
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
d917f771
|
2025-09-01T18:44:34
|
|
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>
|
|
b5b46623
|
2024-11-07T16:14:12
|
|
CL/VK: ArgumentPointerUniform support
NonSemanticClspvReflectionArgumentPointerUniform is generated replacing
NonSemanticClspvReflectionArgumentPointerPushConstant if push constants
size exceeds the limit (test_api min_max_parameter_size)
Bug: angleproject:442950569
Change-Id: Ief1f6bb96db6d711dcaa147e1992020c9a33ae23
Signed-off-by: hoonee.cho <hoonee.cho@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916344
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
66ca0f48
|
2025-09-11T11:41:39
|
|
Vulkan: Extend BGR565 preference to Mesa
* Updated the availability of preferBGR565ToRGB565.
Bug: b/409867243
Change-Id: Iecda303bb13c2d99a78d326a192759640008eeb9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6937661
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
46d75031
|
2024-11-06T17:12:05
|
|
CL/VK: ConstantDataPointerPushConstant support
add compiler option "-module-constants-in-storage-buffer" to enable
Module-scope __constants to be collected into a single storage buffer
Bug: angleproject:442950569
Change-Id: I45b3776301a5cee8896cade71bce517dfad2eda2
Signed-off-by: hoonee.cho <hoonee.cho@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916343
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c292f292
|
2025-09-10T14:34:14
|
|
Vulkan: Remove compressVertexData feature
This feature was added for performance reason. It was used years ago to
improve performance of lego legacy. That entire game dashboard feature
was disabled a few years ago. So this code path is no longer been used
now, and not been tested on bots as well. This CL deletes this feature
and related code path so that we don't just leave it bit rotten.
Bug: b/167404532
Bug: b/439073246
Change-Id: I384fc97021592da57d38e8c1771892071ae68a89
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6935271
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
059734f9
|
2025-05-02T13:20:28
|
|
CL: Roll OpenCL headers, docs, CTS, loader
Updated OpenCL headers
and updated third_party sources accordingly.
- Updated OpenCL Headers from change 265df85
- Updated third_party/OpenCL-Docs
- Updated third_party/OpenCL-CTS and modified ninja build corresponding
to update
- Updated third_party/OpenCL-ICD-Loader and modified ninja build
corresponding to update
- When after updating OpenCL-Docs, entry-points for
clIcdGetFunctionAddressForPlatformKHR and
clIcdSetPlatformDispatchDataKHR (cl_khr_icd 2.0.0) are generated by
run_code_generation.py. Filled code returning INVALID_OPERATION error
in the entry-points.
- When after updating cl_ext.h, cl_khr_external_memory_dx is removed.
Deleted codes referencing cl_khr_external_memory_dx (e.q.,
CL_EXTERNAL_MEMORY_HANDLE_D3D11_TEXTURE_KHR)
Bug: angleproject:441956395
Tests-Passing: test_basic, test_api
Change-Id: I08e0b78abb5c0ff5f1ea693ea355893b1a6f765e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6915959
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
|
|
9530a896
|
2025-09-05T18:02:42
|
|
Don't use DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT
A swap chain for Windows.UI.Composition is created with
DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT flag,
but is resized without it. This leads to an error,
because according to MSDN, this flag cannot be changed
by a call to ResizeBuffers.
In fact, this flag is never used by any code in ANGLE,
so we should remove it.
Bug: angleproject:442600654
Change-Id: I3eecd96abd243433b402780c30634abf2528c323
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6919163
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
dcbe926e
|
2025-09-10T17:17:58
|
|
Vulkan: Avoid redundant updateVertexInput on disabled attribs
When supportsVertexInputDynamicState feature is disabled, we are calling
updateVertexInput right from VertexArray::syncState for both enabled and
disabled attributes. But disabled attributes we are also calling
contextVk->invalidateDefaultAttribute(attribIndex), which end up with
VertexArrayVk::updateDefaultAttrib(), which calls updateVertexInput().
This means updateVertexInput() are called twice for disabled attributes.
This CL skips onVertexArrayChange for disabled attributes.
Bug: b/439073246
Change-Id: Icf9c08d1a920d9112ef4080b95d0451f6230c6dd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6937213
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
36ff2883
|
2025-09-10T11:32:12
|
|
Vulkan: Remove redundant setDefaultPackedInput call
VertexArrayVk::syncDirtyDisabledAttrib() is calling
contextVk->invalidateDefaultAttribute(attribIndex), which will set
DIRTY_BIT_DEFAULT_ATTRIBS, which triggers
ContextVk::handleDirtyGraphicsDefaultAttribs() call, which calls
updateDefaultAttrib(), which calls setDefaultPackedInput(). So the
setDefaultPackedInput() call in VertexArrayVk::syncDirtyDisabledAttrib()
is not needed. Further, when program changes we also
invalidateDefaultAttributes(), which dirty all active default attribs,
so we can rely on DIRTY_BIT_DEFAULT_ATTRIBS.
Bug: b/439073246
Change-Id: Iae985697ace757462d1dbe24e5fdd967863e8674
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6935268
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
52884e7d
|
2025-09-09T09:41:49
|
|
Tests: Add Odin: Valhalla Rising trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*odin_valhalla_rising
Bug: b/443970433, b/444333530
Change-Id: Ieed76508d9bfa7738236a21a9b3e4b5c97ebf207
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6930754
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
|
|
b71c7fd7
|
2025-09-10T16:17:10
|
|
Vulkan: Avoid recompute vertexArray attribute's ComponentType
ContextVk::handleDirtyGraphicsVertexBuffers() is calculating vertex
array attribute's component type. We actually already calculated and
stored in VertexArrayState. This CL get the component type from
VertexArrayState instead. The other benefit is that it removes the usage
of formatId, which helps the next CL.
Bug: b/439073246
Change-Id: I4ed32b5714fe48437af6f3a2f5da130ea71019a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6935272
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e0f5f3e2
|
2025-09-10T18:55:09
|
|
Tests: Add trace batch for 2025-09-10
These traces were contributed by Samsung.
Traces in this batch include:
- apex_girl
- fashion_show
- i9_inferno_nine
- mob_control
Test: angle_trace_tests
Bug: b/444312058, b/444038530, b/444077873, b/444096901
Change-Id: I59f1e6eacb27f5968a138701e7f537c759904838
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6937765
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
a0cc64cd
|
2025-09-10T15:18:17
|
|
HLSL: Mark shadow sampler textureLod calls as using gradients
TextureLod calls bottom out in the HLSL SampleCmp function which does
not take a LOD parameter so we end up dropping it. This causes them to
need gradients. Mark them as using gradient so that any loop they are
used in is flagged and not unrolled by FXC.
Reverted original fix from
https://chromium-review.googlesource.com/c/angle/angle/+/6421496
because the wrong number of parameters are passed to the generated
comparison sampling function when it is changed to LOD0.
Thanks to Mikkel Simonsen at Unity and Calder Young for the tests.
Fixed: angleproject:406190894
Change-Id: Ia9255e4336099045366c02f945a3c4de8075427a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6936488
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
f27d1719
|
2025-07-29T16:41:27
|
|
Vulkan: Prefer BGR565 for RGB565 if enabled
Some platforms exhibit better performance when using BGR565 instead
of RGB565, including when loading buffer data to the image. This change
allows such platforms to use a BGR565 image in the backend instead of
an RGB565 image when using Vulkan, when the corresponding flag is
enabled: preferBGR565ToRGB565
* Updated the formats to include B5G6R5 as a fallback to R5G6B5, which
would be triggered when the corresponding feature flag is enabled.
* The only exception would be when the surface is being initialized
as R5G6B5.
* In addition, this format will not be subject to forced format
fallback.
* Added VVL skip that specifically does not allow undefined format for
border color for certain formats, including B5G6R5 if flag enabled.
* Some suites with RGB565 tests will be run with preferBGR565ToRGB565
enabled on SwS to provide better test coverage.
Bug: b/409867243
Change-Id: Ibb8c71b024ba318862f62ded8abd2d07835e8a40
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6799253
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
428afbc2
|
2025-09-09T12:38:30
|
|
Vulkan: Remove hardcoded image layouts
In some places, ANGLE assumed and hardcoded the image layout. This was
often unnecessary, as the layout (or ImageAccess) was readily available
already.
In preparation for setting the image layout to GENERAL due to
VK_KHR_unified_image_layouts, this change makes sure the image layout is
not assumed to be anything specifically not GENERAL.
Bug: angleproject:422982681
Change-Id: I831bed0ca20197bd7424295ab0858d6bce83fe81
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6932268
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
5c1ba222
|
2025-08-22T14:59:58
|
|
Vulkan: Add feature flag preferBGR565ToRGB565
* This flag will let certain platforms to prefer using BGR565 instead
of using RGB565 for better performance in a follow-up change.
Bug: b/409867243
Change-Id: If89eea1e801ca9d1c10021213862e967231a7343
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6876528
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
ad7ee7fa
|
2025-09-08T11:53:57
|
|
Fix RGB565/BGR565 loading functions
The BGR565-related loading functions seem to have been defined based
on D3D11, especially since D3D11 only has format support for B5G6R5.
However, if other backends, such as Vulkan, try to use BGR565, the
loading functions do not work as intended.
This change aims to correct the loading functions in order to have a
single loading methodology for all backends, and to prepare for the
future changes that allow the proper usage of B5G6R5 for Vulkan.
* Updated the component order in the loading functions related to
RGB565 and BGR565.
* Updated D3D function map and data related to BGR565 for consistency.
* Reverted the PackPixels() exception for RGB565 in Renderer11.
* Fixed typo in D3D format data.
Bug: b/441803462
Bug: b/409867243
Change-Id: I4d3e497a9435bd65bdf64b527b094267a0353cb8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916353
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
28f18f4c
|
2025-09-05T12:27:46
|
|
FrameCapture: Add GL_TEXTURE_CUBE_MAP_ARRAY support
Updated the CopyImageSubDataCubeMapArray e2e test with full rendering
pipeline to draw on screen using default frame buffer. Tested that
the frame capture will crash during game capture or the e2e test without
the fix.
Bug: b/419863436
Test: (enable capture sysprop) TextureCubeTestES32.CopyImageSubDataCubeMapArray/ES3_2_Vulkan
Change-Id: I7c30ed0fc7304b528020e5ab4f9b23be952c5a51
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916781
Commit-Queue: Xiang Wang <xwxw@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
e04b7198
|
2025-08-28T14:58:08
|
|
Fix BGR565 pixel functions
It seems that the B5G6R5 read/write pixels switch the red and blue
components due to them being based on D3D11, which does not seem to
have native support for R5G6B5, instead using B5G6R5 and using the
related loading functions to switch the two components.
However, Vulkan supports both native R5G6B5 and B5G6R5, and using the
latter format (e.g., using BGR565 in the backend instead of RGB565)
causes errors in the tests.
* e.g., the test BlendPackedTest.RGB565/ES2_D3D11 would fail if the
readColor() for B5G6R5 is changed to switch red and blue, although
the test is regarding RGB565. This does not affect Vulkan, but if
BGR565 is used in Vulkan, the test would fail without this switch.
* Fixed the order of the component values in B5G6R5 read/write
functions.
* Updated packPixels() in D3D11 renderer to use R5G6B5's functions when
the internal format is GL_RGB565 and the texture's format is BGR565.
Bug: b/441803462
Bug: b/409867243
Change-Id: Ia4883f6dfb5d96e77bbdc087f48e7ffca42a5657
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6847283
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
718cdb91
|
2025-09-08T15:32:34
|
|
[WebGPU] Set ReadPixels to use context's command encoder.
This change modifies ContextWgpu::getCurrentCommandEncoder() such
that it now ends a render pass if there's an active one, ensures
a command encoder is created, then sets an outHandle command
encoder.
This streamlines a lot of repetitive calls when getting the
command encoder.
This change also modifies ImageHelper::readPixels such that it
now gets the command encoder from the context instead of making
its own. This ensure that when the queue is submitted for a
read call, that any draw/clear/etc calls in the queue are also
submitted for a texture so that a read call can properly read
from the texture.
Bug: angleproject:438268609
Change-Id: Iec6d7f7ca27c7640cc8bdb42da53f64e4836dc5a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6923328
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Liza Burakova <liza@chromium.org>
Reviewed-by: Matthew Denton <mpdenton@chromium.org>
|
|
a471c005
|
2025-08-19T17:24:38
|
|
WGSL: derivative_uniformity diagnostic should be a warning
WGSL requires derivatives to be calculated only if it can
statically prove control flow is uniform. GLSL allows
dynamically uniform control flow in this case. This CL uses
WGSL's diagnostic filter to make derivative_uniformity
diagnostics into warnings, to match GLSL semantics.
Bug: angleproject:392542001
Change-Id: I98dd55205ad6d3c9d13ca3f94c0e7858ba92d536
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6862844
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Matthew Denton <mpdenton@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
e77725a4
|
2025-09-02T12:14:55
|
|
Add VkFormat id to descriptor cache key's imageSubresourceRange
This is to fix the bug when two shaders are modifying the same
texture buffer but with different formats, the old buffer view
with "incompatible" format can be reused.
Bug: b/443105853
Change-Id: Ic3b2202a7d1d408fbbf826414bfcf2b1df4c3a15
Test: GLSLTest.TextureBufferWritesUsingDifferentFormats
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916350
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
f32fa362
|
2025-09-02T16:14:44
|
|
[WebGPU] Add helper methods for streaming indices in syncClientArrays
Bug: angleproject:401499251
Change-Id: I2cab62524ce92a01117282726a3d4de1c266f818
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6438259
Reviewed-by: Matthew Denton <mpdenton@chromium.org>
Commit-Queue: Liza Burakova <liza@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
7619f8a0
|
2025-06-11T00:44:36
|
|
Fast copy R8G8B8A8_UNORM / R8G8B8A8_UNORM_SRGB for readPixels
Support FastCopyFunction on R8G8B8A8_UNORM and R8G8B8A8_UNORM_SRGB.
Copying src pixels to dest directly is more performant than converting
UNORM to GLfloat.
Bug: b/429541195
Tests: dEQP-GLES31.functional.srgb_texture_decode.skip_decode*
Change-Id: If9a3d75dbf7b9fd286a61b144ed607144c833740
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6704713
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
52665e89
|
2025-09-09T14:52:38
|
|
Tests: Add Domino Dreams trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*domino_dreams
Bug: b/444034769
Change-Id: I9930b05b8cc16ca281fcb748b8889ff3a9426b64
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6931774
Reviewed-by: Charlie Lao <cclao@google.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
335a1fda
|
2025-09-09T14:06:27
|
|
Tests: Add Brain Test: Tricky Puzzles trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*brain_test_tricky_puzzles
Bug: b/444026267
Change-Id: If2fdbe6c21ef55ad41cac38e18aaa829c87ae9eb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6931773
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
|
|
fba2e7e9
|
2025-09-09T13:45:55
|
|
Tests: Add Snake Lite - Snake Game trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*snake_lite
Bug: b/444021690
Change-Id: I3fda5f4d28466607a274934325f179e693396c44
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6931772
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3570e579
|
2025-09-09T11:04:20
|
|
Tests: Add Two Player Games trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*two_player_games
Bug: b/443989221
Change-Id: Ie5dd28d6871adbc2bf42de10a934f72844b350c4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6931372
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
7e869843
|
2025-09-09T11:43:22
|
|
Tests: Add Cat Runner: Decorate Home trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*cat_runner
Bug: b/443995610
Change-Id: I5388f04dfa17324666fb0ac2ca52d78613b3ba48
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6931373
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Xiang Wang <xwxw@google.com>
|
|
1df3b59f
|
2024-10-30T16:40:51
|
|
CL/VK: PrintfBufferPointerPushConstant support
Bug: angleproject:442950569
Change-Id: I64edba5a04c2f1f2d3eb7bb34e6629f12269a69c
Signed-off-by: hoonee.cho <hoonee.cho@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916342
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
55063f5e
|
2024-11-06T09:26:38
|
|
CL/VK: ArgumentPointerPushConstant support
- use physical storage buffers instead of storage buffers
- add CLSPV compile options "-arch=spir64 -physical-storage-buffers "
- fix NonSemanticClspvReflectionArgumentPointerPushConstant logics
Bug: angleproject:442950569
Change-Id: I76a8c3fa6ea87c153022a5976f2914bd62cdfcf1
Signed-off-by: hoonee.cho <hoonee.cho@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916341
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
|
|
166c9e23
|
2025-09-05T12:52:38
|
|
Vulkan: Separate barrier data into its file
vk::Renderer includes a modified copy of kImageMemoryBarrierData. When
using VK_KHR_unified_image_layouts, even more of this data is modified
based on device features. Leaving kImageMemoryBarrierData in
vk_helpers.cpp runs the risk that it's accessed directly instead of
using the copy in vk::Renderer.
Bug: angleproject:422982681
Change-Id: I7e288ef0ac519c53842214fe934ba7b2474e1f9c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6927350
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
823c60bc
|
2025-09-08T15:05:21
|
|
Tests: Add Hero Wars: Alliance trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*hero_wars
Bug: b/443793326
Change-Id: I70db881b22f64d9c9bce2a061363d3ba300bb5bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6926590
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
1a290707
|
2025-09-08T14:44:50
|
|
Tests: Add Block Craft 3D trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*block_craft_3d
Bug: b/42264359
Bug: b/443788675
Change-Id: I541ecc84ec5d9e77624c5c7afd225ac89a5f7ce4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6926021
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
|
|
352900dd
|
2025-09-08T11:54:22
|
|
Fix BitSetArray::bits for 32 bit
Which was causing compilation issue on some platforms.
Bug: b/439073246
Change-Id: I6863f28af3fa5364b7739f2ff61520c9e775752d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6925089
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7d1e4e16
|
2025-09-08T12:14:57
|
|
Manual Roll vulkan-deps from 5107e9eef1bc to af8c2ea541d3
https://chromium.googlesource.com/vulkan-deps.git/+log/5107e9eef1bc..af8c2ea541d3
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/f6940d2b8a9dc6de805c48eb3e8bafd65118b25c..337fdb6a284fe7f7e374a14271f8e20e579f3263
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/dc22b23433ab3a390b4c75710836691fdb6f11f4..af5376ef7061716a95ab2bc321aeae4f77958a28
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC angle-team@google.com,yuxinhu@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: angleproject:443133082
Tbr: yuxinhu@google.com
Change-Id: I577cc5555b99aa1f903313a83d96ed755634dd79
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6923245
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
ebf29178
|
2025-09-05T12:15:23
|
|
Vulkan: Rename ImageLayout to ImageAccess
This enum really describes how the image is accessed, including what
VkImageLayout it should be in for that access.
With VK_KHR_unified_image_layouts, it makes little sense to call this
enum ImageLayout anymore, given how almost all of them will have
VK_IMAGE_LAYOUT_GENERAL.
Bug: angleproject:422982681
Change-Id: Id0ea107d339457e90b7a167292b75211eb42f803
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6918518
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
020e41d2
|
2025-09-08T12:21:51
|
|
Tests: Add Mini Games: Calm & Relax trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*mini_games_calm_and_relax
Bug: b/443739993
Change-Id: Ide3ba54ec926f1ea99b50dc134c7b8094bfebb6d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6925086
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
|
|
e9a30817
|
2024-10-28T14:54:38
|
|
Vulkan: Support vulkan physical addr in vk_helpers
- Add extraAllocationInfo for physical addressing
in AllocateBufferMemory/AllocateImageMemory
- Add getDeviceAddress which calls vkGetBufferDeviceAddressKHR
API to get device address
In CL, All the physical addressing supports are enabled when the
runtime flag "supportsPhysicalAddressing" is set.
Bug: angleproject:442950569
Change-Id: I1658062b3f031b3d55923937947cece0c1b67d67
Signed-off-by: hoonee.cho <hoonee.cho@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916340
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
|
|
26926a8b
|
2025-09-08T13:07:49
|
|
Vulkan: Rename CommandBufferAccess to CommandResources
CommandBufferAccess was named as such to indicate "what the command
buffer is going to access". The new name indicates "what resources are
the following command going to use".
The rename is happening to reduce usages of "access", in preparation for
introducing another "access" which can be confused with this.
Bug: angleproject:422982681
Change-Id: Ib072cde8533515ba76734b6426b4d673cb07cc45
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6923331
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0042de5f
|
2025-09-08T12:04:33
|
|
Vulkan: Rename ImageAccess to ImageFormatSupport
`ImageAccess` to be used for other purposes. Variable name `access` was
also identical to variables of `CommandBufferAccess`.
Bug: angleproject:422982681
Change-Id: I69b4d2bd773f1c5ff0fb15c7b611efd1f736061d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6923330
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
46671aea
|
2025-09-08T10:18:51
|
|
Tests: Add Disney Solitaire trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*disney_solitaire
Bug: b/443737949
Change-Id: I0fee2e6a24682d2803e470832e910e2aca912616
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6923296
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
|
|
2207a0a2
|
2025-09-04T17:32:12
|
|
Remove multisampledRenderToTextureEXT from D3D
Partial implemented was never completed, nor utilized for XR
scenarios.
CL removes the implementation
Bug: chromium:443111620
Bug: angleproject:433462527
Bug: angleproject:42261786
Bug: angleproject:42263509
Bug: angleproject:42263677
Change-Id: If95581d5f9b0e43be96ef6913fe73f547e0b5501
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6915970
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
|
|
acb59de1
|
2024-10-26T13:13:34
|
|
Vulkan: Add VK_KHR_buffer_device_address feature
Add to check VK_KHR_buffer_device_address is supported to query a
64-bit buffer device address value for a buffer, which can be used to
access the buffer memory via the PhysicalStorageBuffer
Bug: angleproject:442950569
Change-Id: Ic86f448c1cb5cef40757406d0ce6259838f77fdb
Signed-off-by: hoonee.cho <hoonee.cho@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916339
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e2f7d0e1
|
2025-09-05T00:26:50
|
|
Fix a type error on 32-bit platforms.
FileStreamSeek was incorrectly typed to always take a 64-bit integer,
but fseeko takes off_t, which is 32 bits on 32 bit platforms.
This results in the following error:
error: implicit conversion loses integer precision:
'long long' to 'off_t' (aka 'long') [-Werror,-Wshorten-64-to-32]
580 | return fseeko(stream, offset, whence);
| ~~~~~~ ^~~~~~
Bug: chromium:425527533
Change-Id: I2fe2596accd33bf41db2dbed2df9a23c3fcd3871
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6918314
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Matt Stark <msta@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
dbbae298
|
2025-09-05T12:39:01
|
|
Vulkan: Remove debug name from ImageMemoryBarrierData
It was always there, but never became useful.
Bug: angleproject:422982681
Change-Id: I409c061b07840a1cc9b85220fcbe792944358dba
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6919463
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
fee5826f
|
2025-09-05T11:23:23
|
|
Vulkan: Enable VK_KHR_unified_image_layouts
Functionality of the extension is not used by this change.
Bug: angleproject:422982681
Change-Id: I68c8b93e69eb47b1d4287edad105514edd36dfcd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6918517
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
cb6b73d2
|
2025-09-05T10:37:28
|
|
Temporarily disable FP16 float uniform transform feature
Some webgl_conformance_vulkan_passthrough_tests are failing with the
shaders generating 16-bit for lower precision uniforms. Temporarily
disable the feature while investigating the root cause.
Bug: chromium:443182226
Bug: chromium:443182234
Bug: angleproject:405795981
Change-Id: I62850f5dc979912a0605edb1aea5b74774b4421d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6918101
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
fecb02db
|
2025-08-28T12:08:34
|
|
Vulkan: Reduce onVertexBufferChange/onVertexAttributeChange
When we loop each attribute we end up calling onVertexBufferChange or
onVertexAttributeChange. For most drivers
supportsVertexInputDynamicState is enabled. This means we are repeatedly
check feature bit and set DIRTY_BIT_VERTEX_BUFFERS repeatedly for each
dirty attributes. This CL moves these calls out of attribIndex for loop.
ContextVk::onVertexArrayChange() now get called directly from
VertexArrayVk::syncState() so that we only go through most logic only
once if supportsVertexInputDynamicState is enabled.
Bug: b/439073246
Change-Id: Ib1316560ef686222e72b4d7ad32c63b043dfbaa5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6896934
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
62b5ab9f
|
2025-09-05T10:46:20
|
|
Tests: Add Talking Tom Gold Run trace
Test: angle_trace_tests --gtest_filter=*talking_tom_gold_run
Bug: b/443278466
Change-Id: I3109c3d03f8315fd30f5dbd259b08b160396c5d5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6918099
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
e893313c
|
2025-09-04T17:52:21
|
|
Tests: Add Snake.io trace
Test: angle_trace_tests --gtest_filter=*snake_io
Bug: b/442438127
Change-Id: I86f40347d0111dfc35d813f41611691a4f71cb56
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6918149
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
8bae2565
|
2025-08-22T14:38:23
|
|
Vulkan: Improve VertexArrayVk::syncState
VertexArrayVk::syncState often time shows up the biggest single API in
simpleperf. For example, in tower_of_fantasy it is 7.9% of all CPU time
in libANGLE. This function also uses macros which made it hard to debug.
This CL removes the usage of macros which makes code much easier to
handle. The other real problem is that we are repeatedly calling
syncDirtyAttrib() function for disabled attributes. This CL breaks the
dirty bits into bindingDirtyBits and bufferDataDiryBits and
attribDirtyBits. Only attribDirtyBits will end up doing the actual state
sync. All other dirty bits will just turn them into attribDirtyBits.
Also disabled attributes will be looped separately. This simplification
makes it impossible to have duplicate state syncs since we only call
sync*Attrib at the end of function. By splitting syncDirtyAttrib into
syncDirtyEnabledAttrib/syncDirtyDIsabledAttrib/syncNeedsConversionAttrib,
we also moved the if check from syncDirtyAttrib (which is called within
for loop) to syncState.
With this CL, simpleperf shows this function has reduced from 7.9% to
5.9%.
Bug: b/439073246
Change-Id: I99b5ff0b34a5992e31541d2e9cd81ff5c9dda716
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6876527
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
49366cae
|
2025-09-04T16:41:51
|
|
Tests: Add My Talking Tom trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*my_talking_tom
Bug: b/443137624
Change-Id: I29c0b5ab0c895df7412155731d06ede897aafe0b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6915966
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
cfe2c8fe
|
2025-06-25T13:25:01
|
|
WGSL: RewriteMultielementSwizzle
WGSL doesn't support assignments to multi-element swizzles.
This is used in a lot of shader tests, so temporarily work around
this with an AST traverser that splits these assignments into
multiple assignments that only assign to single element
swizzles.
One special case is multiplication-by-a-matrix assignment:
vec.xy *= mat;
is converted to
vec.x = (vec.xy * mat).x;
vec.y = (vec.xy * mat).y;
Bug: angleproject:392542001
Change-Id: I3f393039aae13eb3f2c5dc5e553f68eb03b6316d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6847280
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Liza Burakova <liza@chromium.org>
|
|
56868bd5
|
2025-09-04T12:21:40
|
|
Skip uniform bool in array test for Mac
* Skipped the following test on AMD Macs using Metal:
SimpleUniformUsageTestES3.BoolInArray
Bug: angleproject:443101808
Change-Id: Ic58b1678a99632a42e351225525f8669f70a9d8a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916348
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Amirali Abdolrashidi <abdolrashidi@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
5b6084ce
|
2025-09-04T07:45:09
|
|
Tests: Add Matching Story trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*matching_story
Bug: b/443039333
Change-Id: I4e09c05f2e21d6dcbdfb67b4631adc9b1ef69691
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916335
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
1c275402
|
2025-09-04T12:38:29
|
|
Roll vulkan-deps from 8415cc875465 to 5107e9eef1bc (8 revisions)
* Skipped some WRITE-AFTER-READ hazards related to the following:
* vkCmdDraw() -> vkCmdCopyImageToBuffer()
* vkCmdDrawIndexed() -> vkCmdCopyImageToBuffer()
https://chromium.googlesource.com/vulkan-deps.git/+log/8415cc875465..5107e9eef1bc
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/3289b1d61b69a6c66c4b7cd2c6d3ab2a6df031e5..9d764997360b202d2ba7aaad9a401e57d8df56b3
https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/345804025b4cd32ff6e1959cc6c0280927c2e9dd..055b25c02fa80cdcca77fcf94ab64a02f02d9199
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/44cf554790020ee44355dde75f0aff79141cab3c..f6940d2b8a9dc6de805c48eb3e8bafd65118b25c
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/a528f95dc2f92bdd83c0c32efe2d13c806428c9d..34edde1191548c51cf4958f2dc6772bf7f76c8cd
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/54e4c34d401b5b4c5abc5dd04804f7b02a8bc0c0..dc22b23433ab3a390b4c75710836691fdb6f11f4
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC abdolrashidi@google.com,angle-team@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://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: angleproject:443095908
Tbr: abdolrashidi@google.com
Change-Id: I305b9dc0089ac58be610b99cbf61112c33a03d7d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6916334
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
c1cdc2b5
|
2025-08-22T15:23:58
|
|
Transform SPIRV to use 16-bit float for lower precision uniforms
This change adds a ShCompileOption flag transformFloatUniformTo16Bits.
The flag is turned on in vulkan backends where VK_KHR_16bit_storage
extension is supported, and uniformAndStorageBuffer16BitAccess feature
is supported. When the compiler flag is turned on, in the generated
SPIRV, float data types in mediump and lowp uniforms are transformed
from 32-bit to 16-bit. The 16-bit float uniform data is converted to
32-bit with OpFConvert instruction upon loading in SPIRV, this is to
minimize the changes in OutputSPIRV.cpp. The converted variable is
decorated with RelaxedPrecision, so that SPIRV compiler should be able
to treat the converted variable as 16 bits, and the hardware can
still benefit from reduced precision floats.
The frontend is also notified such SPIRV shader changes by setting
the isFloat16 bit in CollectVariables() step, and the frontend will
transform float uniform data from 32-bit to 16-bit before storing the
data into memory. That way, the uniform data that SPIRV shader reads
matches with the uniform data type transformed in the SPIRV shader.
This change also updates some test code to allow relative 2^-10
precision wiggle room for mediump uniform floats. This is valid
according to spec:
https://developer.arm.com/documentation/102502/0101/Shader-precision
Bug: angleproject:405795981
Bug: angleproject:440941211
Change-Id: I05db7f5ef744df513fbad87cfed8aa173890ec26
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6851560
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
397b39fe
|
2025-09-03T14:08:59
|
|
Tests: Add ColorBlock: Combo Blast trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*color_block_combo_blast
Bug: b/442878479
Change-Id: I7a8f0ea63040f84c31d7cb96028bf2749c8644be
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6913669
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
6888dfb1
|
2025-09-03T13:40:33
|
|
Vulkan: Fix missing vkGetImageSubresourceLayout2EXT
... with angle_shared_libvulkan=false
Bug: angleproject:352364583
Change-Id: I6c81aefc6b074d45103a514ddd6d55192c2f660b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6912583
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
8280ca37
|
2025-09-02T13:27:38
|
|
Add a test for uniform reorder bug on Mac
This change adds a test to cover the bug fixed in
https://chromium-review.googlesource.com/c/angle/angle/+/6847281.
Bug: chromium:442521269
Change-Id: I78c1b9691f7bf04b6e046d04328a42cc9eae0fcd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6907558
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
875b7400
|
2025-09-02T13:42:57
|
|
Tests: Add Merge Mansion trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*merge_mansion
Bug: b/442622825
Change-Id: I19bec8238c3e4fd4d7f8dc9a83256a2551247998
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6907469
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
|
|
f8ce4a01
|
2025-08-26T18:18:54
|
|
Add src/common/unsafe_buffers.h
Allow for line-by-line control of unsafe buffers warnings.
Bug: b/436880895
Change-Id: I609d60c83611037f39d541d5b8c9aba98a6656a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6886308
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Tom Sepez <tsepez@chromium.org>
|
|
778969f2
|
2025-08-28T15:54:35
|
|
[WebGPU] Fix ImageHelper::flushSingleLevelUpdates
This change modifies ImageHelper:flushSingleLevelUpdates to
only send a flush command to the context once, instead of in each
iteration of the loop if there are multiple texture uploads.
This also means that the last texture upload is guaranteed to be
flushed, as otherwise that texture could be staged in the queue,
but a different command could redefine texture levels which
would delete the underlying texture handle but not the command
queued for that texture.
Bug: angleproject:438268609
Change-Id: I2d49b15fc921829175e99bdb550dddbd81179061
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6885223
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Matthew Denton <mpdenton@chromium.org>
|
|
84e4054f
|
2025-09-02T10:43:24
|
|
Tests: Add Super Bear Adventure trace
This trace was contributed by Samsung.
Test: angle_trace_tests --gtest_filter=*super_bear_adventure
Bug: b/442585566
Change-Id: Id04ababe0f5e28363fc615ed36db5da78c67c619
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6907164
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
|
|
b449a24a
|
2025-08-28T14:23:00
|
|
GL: Disable BaseVertex and BaseInstance extensions on Linux
This is a speculative fix for some rendering issues seen on Linux.
Client data also appears to be broken when using BaseVertex functions,
this will disable the functions until those issues are fixed.
Re-add the check for GL_ARB_base_instance, this was likely not the
culprit.
Bug: chromium:427956856, angleproject:431097618
Change-Id: If48121d3c4819a46091de4360a2159b9bf14313e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6897307
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a3505ae6
|
2025-08-28T13:47:05
|
|
Prefer non-WARP device for angle_end2end_tests
When we have both WARP and a real GPU, but WARP comes first,
angle_end2end_tests always shows the active GPU is 0, and always uses
WARP for tests. This CL prefer the non-WARP device instead.
Bug: angleproject:441816895
Change-Id: I787b25f9ff6ad0a98e5fbc445b580b897bd52033
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6896220
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
2d28e33f
|
2025-08-28T23:50:51
|
|
Avoid some large copies in range-based for-loops
Avoid copies as detected some time ago by a clang compiler plugin,
typically this indicates a missing & in the range-based for-loop.
-- For the vector initialize code, see https://godbolt.org/z/4PWseve5P
as to why I think a copy-assign is more efficient than a copy-
construct followed by a move-assign.
Bug: b/415953694
Change-Id: I2cf9f713277d811127834235507ee075c4a72956
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6898417
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Tom Sepez <tsepez@chromium.org>
|