|
fc4fc174
|
2024-12-10T22:01:28
|
|
Vulkan: Prevent crash with D/S FF without D/S attachment
The spec says that the values for gl_LastFragDepth/StencilARM are
undefined if there is no depth/stencil attachment. This "just" works on
tiling GPUs, because reading input attachments simply translates to
reading _something_ from the tile memory.
For ANGLE, the situation is a little more complicated. ANGLE has to
bind descriptors for input attachments (because non-tilers read from the
input attachment descriptor instead of using the knowledge that input
and color/depth/stencil attachments are one and the same thing in tile
memory). When a depth/stencil attachment is missing, there is no image
to bind to the descriptor set.
ANGLE cannot skip binding an image to the descriptor set, because
OpImageRead (translated from subpassLoad()) attempts to access the
input descriptor; skipping this causes an internal crash in SwiftShader
for example.
ANGLE cannot bind a bogus image as input attachment, as Vulkan requires
that input attachments are also color/depth/stencil attachments.
ANGLE _could_ bind a bogus image as input attachment and also as
depth/stencil attachment. This is rather risky, as it then also has to
be careful to make sure that depth/stencil attachment is never actually
used (i.e. it affects the depth/stencil state, load/store ops etc).
In this change, the shader itself is modified to remove references to
the depth/stencil input attachments if the attachment is missing. This
is rather inefficient, as it means the pipeline warmup will not produce
a usable pipeline, but it's accepted as a workaround for something apps
shouldn't really be doing.
Bug: angleproject:376572258
Change-Id: I0de68252b61615cb82cba7d1730699aadf41e92f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6085368
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e9ba1681
|
2024-12-10T21:29:26
|
|
Vulkan: Fix DR vs FF vs non-draw RP start
DR is Dynamic Rendering
FF is Framebuffer Fetch
RP is Render Pass
With DR, whether framebuffer fetch is used or not is no longer tracked
in the framebuffer's RenderPassDesc, because that property has no
bearing on the framebuffer anymore. It still exits in RenderPassDesc to
support legacy VkRenderPass objects.
After a draw call starts a render pass, the state of the command
buffer's copy of RenderPassDesc (copied from the framebuffer's) is
updated to include the correct framebuffer fetch mode. However, this
was not done when the render pass starts through other means, such as
when a scissored or masked clear would call `Context::startRenderPass`.
This change moves the aforementioned update of the framebuffer fetch
mode to `Context::startRenderPass` so it affects everywhere the render
pass may start from.
Bug: angleproject:383356851
Change-Id: I82eff43863fc5b9fe67e57453269ee73859a6cd7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6085367
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
bde4d143
|
2024-09-27T14:08:43
|
|
CL/Vulkan: Setup a dispatch loop per commandqueue
Commands submitted to renderer need clean up ops post completion. Setup
a background thread per commandqueue that waits on the command
completion and performs the post completion operations.
Updated test suite and `angle.json` was autogenerated with
`scripts/run_code_generation.py`.
Bug: angleproject:375231041
Change-Id: I82b4211ee6e229c679ef31897fc63d61fa904bb5
Signed-off-by: Gowtham Tammana <g.tammana@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5960590
Reviewed-by: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
9481eb62
|
2024-10-23T15:21:33
|
|
Add check for some EGL API attrbute values
EGL validation in ANGLE lacks of some error handlings mentioned
in EGL spec. Those error handlings are added, and we need to
make sure angle end2end tests are not influenced.
Bug: angleproject:375528200
Change-Id: Ic0686d9ccc70e18b0cf3449184452771c77c06b7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6034532
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
09f3bc3a
|
2024-12-10T15:57:49
|
|
Tests: Add Loop Hero trace
Test: angle_trace_tests --gtest_filter=*loop_hero
Bug: b/383282700
Change-Id: Iff3b5a37b3dfea898344007f544ec25c8b6fa0be
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6085489
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
f9d08964
|
2024-10-29T14:14:43
|
|
Fix primitive restart issue with line loop
Refine function CopyLineLoopIndicesWithRestart and function
CopyLineLoopIndicesWithRestart so that they can deal with the
case when there is only one index before/after restartIndex.
Bug: angleproject:376097643
Change-Id: I06ee0208522d6dc5b6cd6ec0ba4f8682de7b12f3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5975353
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e45a0420
|
2024-12-05T17:41:38
|
|
Fix glCopyImageSubData() not work with multisample render buffer
When target is "GL_RENDERBUFFER", and which is multisample, the function
will not work.
Bug: angleproject:382101118
Change-Id: I3d9c4a2550f9d66eeb73447328a03d4507cf2fa5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6073359
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
6bb1bc9b
|
2024-12-10T16:56:33
|
|
Add an extension to report total memory usage of all GL objects
Currently the extension will only count GL buffers, textures and
render buffers' memory.
Fixed: angleproject:383256300
Change-Id: I33ce6fafae8aa5b60071e66366d35dc098e1313b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6084013
Auto-Submit: Quyen Le <lehoangquyen@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
|
|
a137d702
|
2024-10-24T18:24:14
|
|
Reland "Delay EGLQueryContext render buffer change"
This is a reland of commit 233d9ee5c3525cc8290b3af52385ed59973438b4
Original change's description:
> Delay EGLQueryContext render buffer change
>
> According to the EGL spec, EGL_RENDER_BUFFER of a context
> should change after eglSwapBuffers is called if
> eglSurfaceAttrib changes. Refine ANGLE implemnetation
> to delay the render buffer change.
>
> Bug: angleproject:375528202
> Change-Id: Ida7736a09e3a83223a529dbfad48e0f952f91a38
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5982241
> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: angleproject:375528202
Change-Id: I38330d99a9e6987ad3f97b4a36c34029acb211b9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6055500
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2d71fe0d
|
2024-11-04T14:15:34
|
|
Check formats compatibility first in CopyImageSubData validation
During validation for CopyImageSubData, first check if the src and
dst formats are compatible. Before this patch, the check was put
after region checking. If the formats are not compatible, then the
block size used during region check is not reasonable.
Bug: angleproject:377144455
Change-Id: I3245ae1351e127cb70d0d75d75ca34f0106d12b6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5982240
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
d8f6df3e
|
2024-12-09T09:20:40
|
|
Vulkan: Fix assertion in RefCountedEvent::releaseImpl
RefCountedEvent uses non-atomic uint32_t for reference counting, so it
is not thread safe. To ensure we do not use it in a thread unsafe way,
there is an assertion I added in RefCountedEvent::releaseImpl that the
release call is not come from async command queue thread (all release
calls are expected come from context thread which should be protected by
context share group lock). A while ago dynamic rendering is implemented.
With dynamic rendering you can't do final layout change in render pass.
So the final layout change to Present is added to primary command buffer
at the end of RenderPassCommandBufferHelper::flushToPrimary(). And if
async command queue is enabled, that flushToPrimary is called from async
command queue thread, which triggers the assertion I added in
RefCountedEvent::releaseImpl(). This CL releases mCurrentRefCountedEvent
for this specific situation (present image + dynamic rendering +
asyncCommandQueue) so that we do not hit the assertion. The only
downside is that it will force to use pipelineBarrier for this specific
situation. But no one ships with asyncCommandQueue enabled, so there is
no real concern here as well.
Bug: angleproject:382580875
Change-Id: I042e3906db7f5bb7acb299997f8fc7e21b8350b6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6072350
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
eee895e1
|
2024-12-09T08:32:34
|
|
Tests: Add Return to Monkey Island trace
Test: angle_trace_tests --gtest_filter="*return_to_monkey_island*"
Bug: b/383027719
Change-Id: Idc31426199888e7645c2c644bea611f3cc98f202
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6080212
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
70c62566
|
2024-12-06T15:20:49
|
|
Vulkan: SharedFence is now AtomicSharedPtr<RecyclableFence>
This is the preparation before the next CL:
Vulkan: Improve CommandQueue concurrency
crrev.com/c/angle/angle/+/6067346
The `SharedFence` was replaced with `AtomicSharedPtr<RecyclableFence>`
because previous implementation reference counting is not thread safe
which will be required in the next CL, where fence may be released
during unlocked wait or release commands using different mutexes.
Additionally cleanup unnecessary use of `vk::` namespace.
Bug: b/362604439
Change-Id: Icc61dc093ba0a1e350f1a02eb1ba209a2c58c603
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6074131
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
244c0514
|
2024-12-07T23:06:03
|
|
Tests: Add Balatro trace
Test: angle_trace_tests --gtest_filter="*balatro*"
Bug: b/382914040
Bug: b/382960265
Change-Id: Iebebae9dc2da1b1f20f6e9c184130ebfd544ae52
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6077333
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
973c37d1
|
2024-12-08T22:43:32
|
|
Traces: Fix screenshot pixel pack state
Without this fix, if the trace had non-default
pixel pack state, our screenshots were broken.
This just backs up the current state, sets defaults,
then restores them.
Test: return_to_monkey_island screenshots
Bug: b/383027719
Change-Id: I8eaa1d58cdf34fbbaefdf4bbb054bff3fd8a5e9b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6079310
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
22c457a6
|
2024-12-06T16:07:54
|
|
Tests: VulkanMemoryTest OOM fallbacks check >= instead of ==
OOM tests check deviceMemoryImageAllocationFallbacks in a loop, assuming
that +1 will be reached. Maybe we are skipping over +1 somehow.
Check for >= instead.
The loops are followed by EXPECT_EQ, so if this happens the test would
still fail.
Bug: angleproject:382094011
Change-Id: Icfc93954b4a7ba30e24ae087d7a0c03d640e85b3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6077964
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
e82a2eab
|
2024-11-28T00:00:00
|
|
Support multisample 2D array textures on ES 3.0 contexts
Supported via OES_texture_storage_multisample_2d_array
enabled together with ANGLE_texture_multisample.
Drive-by:
Fixed exposure conditions in the OpenGL
backend to match the implementation.
Fixed: angleproject:382298321
Change-Id: I21b037aac7bebc35df267e9dd468088ebce35e71
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6075241
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
a45099fd
|
2024-11-04T18:12:54
|
|
Tests: offscreen trace replay uses a single EGL context
diablo_immortal changes the context by calling eglMakeCurrent which
causes a failure during offscreen -> onscreen blit. Restore the context
to the original one during offscreen handling.
Bug: b/370089935
Change-Id: Ie501a66b14beef5b27b8f16ff63b6fd3f3c0a338
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5990995
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Auto-Submit: Roman Lavrov <romanl@google.com>
|
|
c174aa70
|
2024-12-05T15:36:18
|
|
Trace perf: add a basic fps limiter
Adds sleeps based on each 4 frames timing (4 instead of just last frame
makes fps a bit closer to requested)
Example:
--fps-limit=30
*RESULT TracePerf_vulkan.wall_time: offscreen_bubble_shooter_and_friends= 33.3556469900 ms
*RESULT TracePerf_vulkan.wall_time: bubble_shooter_and_friends= 33.4376432467 ms
--fps-limit=50
*RESULT TracePerf_vulkan.wall_time: offscreen_bubble_shooter_and_friends= 20.0218095000 ms
*RESULT TracePerf_vulkan.wall_time: bubble_shooter_and_friends= 20.0624947200 ms
--fps-limit=100
*RESULT TracePerf_vulkan.wall_time: offscreen_bubble_shooter_and_friends= 10.1298787483 ms
*RESULT TracePerf_vulkan.wall_time: bubble_shooter_and_friends= 10.1781205983 ms
--fps-limit=200
*RESULT TracePerf_vulkan.wall_time: offscreen_bubble_shooter_and_friends= 5.1289075067 ms
*RESULT TracePerf_vulkan.wall_time: bubble_shooter_and_friends= 5.1571364367 ms
--fps-limit=400
*RESULT TracePerf_vulkan.wall_time: offscreen_bubble_shooter_and_friends= 2.6172564224 ms
*RESULT TracePerf_vulkan.wall_time: bubble_shooter_and_friends= 2.7648291614 ms
Bug: b/376300037
Change-Id: I63ef75fe342b149336c0e274bd9cbf6c3aa34c23
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6072435
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
26414249
|
2024-11-28T00:00:00
|
|
Remove GetTexLevelParameter* from ANGLE_texture_multisample
These functions are always provided by
the GL_ANGLE_get_tex_level_parameter
frontend extension.
Fixed: angleproject:382291448
Change-Id: I59b4ccc56478f2e0931d1f5bd665cfdd5a34391e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6072222
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
e42047f0
|
2024-10-25T13:50:28
|
|
Vulkan: Disable DescriptorSet cache for SwiftShader
Performance with swiftShader is not critical and cache code path not
making much difference for SwiftShader renderer anyway. This CL disables
descriptor set cache for SwiftShader mainly to ensure the code path gets
test coverage on CI bots. This code path also ensures that we are
tagging ResourceUse on DescriptorSetHelper properly after every use.
Otherwise, it is very hard to test with cache enabled code path since
object usually won't get destroyed due to cache and any bug associated
with this is going to be very hard to debug. This CL has catch such bugs
during the descriptor set cache work.
Bug: angleproject:372268711
Change-Id: Iee1028f9378cf4f537d897e08746d5cf958f225a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6047805
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
045f2818
|
2024-12-03T09:55:39
|
|
End2end test for GL_MAX_SHADER_STORAGE_BLOCK_SIZE validation
Bug: angleproject:381742474
Change-Id: Icae7b2705f5749bc070e096fa045e68bb061b530
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6065459
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
473798bf
|
2024-11-28T00:38:36
|
|
WGSL: @align appropriate struct members in uniforms.
Structs used in the uniform address space need to have certain
members aligned according to the uniform address space layout
constraints (substantially similar to std140).
This CL adds @align annotations where necessary, in structs used
in the uniform address space. Strictly speaking, it's okay to apply
@align annotations to all structs used in the WGSL program, but this
CL uses a pre-pass AST traverser to records all the structs used
in the uniform address space. This is to avoid more unreadable
generated code, and when more transformations are applied to
these structs in future CLs, less generated code overall.
After this, the only types that can't yet be used in a uniform
are matCx2, arrays with stride not divisble by 16 (except when the
array element type is a struct), and bools.
This is #1 in struct translation in
https://docs.google.com/document/d/17Qku1QEbLDhvJS-JJ9lPQAbnuZtLxWhG-ha5eCUhtEY/edit?tab=t.0#bookmark=id.rudfrn2o6jv1
Bug: angleproject:376553328
Change-Id: Ibff3414043a6ecb4a01ef8e3e71dad9c1066ddfd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6056951
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Liza Burakova <liza@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4b84ee4c
|
2024-12-03T16:21:38
|
|
Vulkan: Implement GL_EXT_EGL_image_storage_compression
Bug: angleproject:352345943
Change-Id: I82a54fa2515254a1045f512818ca23a540cd7a6e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6065464
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
100c0b8c
|
2024-11-04T13:58:00
|
|
Preserve mMinSampleShading value when SAMPLE_SHADING enable is toggled
Preserve mMinSampleShading value when SAMPLE_SHADING enable is toggled.
Initial value of MIN_SAMPLE_SHADING_VALUE is zero and that value
should not be changed during glEnable(SAMPLE_SHADING_OES).
Bug: angleproject:376174077
Change-Id: Iea06d7480167eff5722c2d5eef23287e8bb956f8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5981462
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
cc841237
|
2024-11-29T13:45:50
|
|
Accept framebuffer modifications while PLS is active
The only way for a WebGL implementation to know if PLS is actually
active is to call glGetIntegerv(PIXEL_LOCAL_STORAGE_ACTIVE_PLANES_ANGLE)
(because glBeginPixelLocalStorageANGLE() can fail). So the original
behavior of not allowing glBindFramebuffer() et. al. while PLS was
active created a state scenario that was expensive for the browser to
track.
Instead, just allow glBindFramebuffer() et. al., and implicitly disable
PLS if they are called while it's active.
Bug: angleproject:40096838
Change-Id: Ibd303f9f9950fb5b7f1add2d41882e4379c51e62
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6060301
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
57ccab32
|
2024-12-04T16:26:15
|
|
Skip dota_underlords on Windows NVIDIA
Produces flaky images on on GTX 1660 driver 31.0.15.4601
Bug: angleproject:369533074
Change-Id: I7cfde430deeec2e67549803af425087716ee675e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6070070
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
a504b6a2
|
2024-11-25T15:59:05
|
|
Support GL_OES_required_internalformat
Enable GL_OES_required_internalformat GLES extension.
Bug: angleproject:364069034
Change-Id: Ia57548469abff189472aa20b13ca99179c45f2c0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6038448
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Panfeng Hou <panfeng.hou@arm.com>
|
|
0bb109aa
|
2024-11-28T00:00:00
|
|
Fix validation for 2D multisample array textures
* Fixes:
* TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY query must
be rejected if the functionality is not enabled.
* GetInternalFormativ must accept TEXTURE_2D_MULTISAMPLE_ARRAY
on unextended OpenGL ES 3.2 contexts.
* Added validation to the OpenGL ES 3.2 TexStorage3DMultisample
entry point.
* Cleanups:
* Removed OES suffix from the enum conversion.
* Incorrect extension name in the error message.
* Do not create a 2D multisample array zero texture object
if the backend does not support the functionality.
* Replaced redundant FramebufferTexture validation with an assertion.
* Do not allocate texture binding vectors for 2D multisample array
textures if the backend does not support the functionality.
* Aligned the 2D multisample array texture target assert in
RecordBindTextureTypeError with the actual error condition.
Fixed: angleproject:381270278
Change-Id: Idbbc86e2efe1bbc25d9570d515b67c1a32255d99
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6063068
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
75a64561
|
2024-12-02T20:06:29
|
|
restricted_trace_perf: Windows fixes
* Drops some unavailable (and unused) imports
* Allows specifying --angle-version to avoid git failures
Flag created by solti@google.com in http://crrev/c/6037489
Bug: b/376300037
Change-Id: I0c63e966c60998848cdbc8f7a9c414adc0e00d14
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6067184
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
4262c8e4
|
2024-11-22T15:03:29
|
|
Tests: Add CompressBlob()/DecompressBlob() tests
Test: angle_unittests --gtest_filter=DecompressTest*
Bug: angleproject:42263322
Change-Id: I46880601e1fabde5bc56412b3f6619bd9fe4e907
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6039242
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
11495e55
|
2024-11-15T18:46:17
|
|
Perf tests: restricted_trace_perf.py uses android_helper helpers
Bug: b/376300037
Change-Id: Ie4fba3d9300fa3b96f269303f06dee3630f068c9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6022181
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
2f595f56
|
2024-12-03T10:27:04
|
|
Update third_party metadata
This is to address the incomplete chromium dependency
metadata issue.
Bug: b/365321061
Bug: b/365320354
Change-Id: I8c62aef170170cd7f0e07f18e01a0787479f1a30
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6064948
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
c31a926b
|
2024-12-02T15:12:20
|
|
Refine test - TextureFixedRateCompressionTest.Invalidate
The test failed on AP1A.240405.002 Vulkan Pixel6, query compression
rate instead use passed in value.
Bug: angleproject:352364583
Change-Id: I6f112ceb85d8e3699f050a1dba8be9a595c83e99
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6059344
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
fa70c4cb
|
2024-02-02T13:59:06
|
|
CL/Vulkan: Implement the buffer rect enqueues
This change implements the buffer rect copy using a series of memcopies.
The CL buffer rect doesn't map cleanly to the Vulkan copy buffer
command due to the presence of pitches, and implementing as such will
introduce more barriers in the command stream. For now we do process
this command at call entry point.
Bug: angleproject:379764609
Change-Id: I89a9032a4bbfa48899c448eb131a5ce048e8fd60
Signed-off-by: Gowtham Tammana <g.tammana@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6034035
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
cc5218af
|
2024-12-02T16:06:10
|
|
ANGLE will crash when the buffer is NULL in eglCreateImageKHR
When creating egl image with android native buffer, and the buffer
pointer is NULL, ANGLE will crash. Because the type of pointer in EGL
and vulkan is different. In EGL, the type of this pointer is
ANativeWindowBuffer, But In vulkan it is AHardwareBuffer, which has an
offset compared with AHardwareBuffer, so it will access invalid address.
Bug: angleproject:379764621
Change-Id: Ifb5d4a81dea85eb23d4e3f82c37f13c7e4809ee5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6061898
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b7e0a250
|
2024-11-25T13:36:02
|
|
Add tests for RGB8 and RGBA8 renderbuffer usage
* Added simple tests for RGB8 and RGBA8 renderbuffer usage for
GLES1 and GLES2+.
Bug: angleproject:352352894
Change-Id: Ie410c57ab204c2afad3f53c37578865bd9e9307f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6050343
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
65d674b0
|
2024-12-02T18:36:11
|
|
Vulkan: Must run UnlockedTailCall from flush and finish
`glFlush` and `glFinish` may call `WindowSurfaceVk::swapImpl()`
implicitly when the current Window Surface is in the single buffer mode.
The `WindowSurfaceVk::swapImpl()` in turn may add unlocked tail call in
order to perform CPU throttling. It seems, that CPU throttling is only
possible if also enable the `EGL_FRONT_BUFFER_AUTO_REFRESH_ANDROID`
attribute (using `VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR`).
Without this attribute (`VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR`)
`vkQueuePresentKHR()` performs implicit waiting for GPU, making ANGLE's
throttling uncessary (the serial is already finished).
This fix allows running the tail call from `glFlush` and `glFinish`
(because these APIs are not performance critical). Alternative solution
may instead perform the CPU throttling immediately if the
`WindowSurfaceVk::swapImpl()` is called from the
`WindowSurfaceVk::onSharedPresentContextFlush()`.
Additionally, added "ASSERT(!any())" at the beginning of each entry
point. This is to catch scenarios, if some API adds the unlocked tail
call and for some reason exit without checking the assert of running
the call.
Test: angle_end2end_tests --gtest_filter=EGLAndroidAutoRefreshTest.SwapCPUThrottling/ES3_Vulkan_NoFixture
Bug: angleproject:42266581
Change-Id: I418c552f6e95b4cfc01db738c9989533377f1050
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6063719
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
d81834b6
|
2024-11-26T15:25:35
|
|
Vulkan: Store VkDevice in vk::SharedPtr
So that we don't need to have two versions of destroy() APIs. In
previous CLs I had to add another version of destroy() that does not
take device argument due to SharedPtr may calls destroy when last
reference count goes away. Because we do not have device information at
that time, destroy() API was added but mostly just doing assertion that
Vulkan object has been explicitly destroyed. With this CL, we now stores
device in the SharedPtr so that we no longer need two destroy() APIs.
The explicit destroy(device) call will be removed in the next CL.
Bug: angleproject:372268711
Change-Id: Idcacbc3a922e17ac3d0f6056466b8f3aa084b02e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6052096
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7070a9e9
|
2024-11-20T00:21:16
|
|
Remove draw buffer validation clauses from PLS
It was cumbersome to implement all this validation browser side for
WebGL.
Rather than making it an error to update blend and color mask on
reserved PLS draw buffers, glBeginPixelLocalStorageANGLE() can just
implicitly disable blend, and enable the color mask on overridden draw
buffers. Later calls to enable blend or change the color mask on
overridden planes are silently ignored until
glEndPixelLocalStorageANGLE().
Bug: angleproject:40096838
Change-Id: Ic7e1c5113e7d3fad3b80d0178075df646540d743
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6045421
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
f7cac0bb
|
2024-03-07T18:05:27
|
|
Start Win NVIDIA experiment
On Windows 10 22H2 with 31.0.15.4601 driver.
Suppress test failures on the new platform.
Use-Permissive-Angle-Pixel-Comparison: True
Bug: chromium:40805707, angleproject:42267037, angleproject:381211730
Bug: angleproject:377923479
Change-Id: I1b457e11de10daa081bb0dac9f564b6cce97164a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5352750
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
f51170b3
|
2024-11-21T16:30:40
|
|
Enable GL_KHR_texture_compression_astc_hdr
Vulkan supports GL_KHR_texture_compression_astc_hdr,
so this extension can be enabled in Angle.
Bug: angleproject:379186304
Change-Id: I438a120c3f884a7eefcd883ad71abf68f81cb473
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6038457
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e7eb8e27
|
2024-11-29T13:10:18
|
|
Skip TextureFixedRateCompressionTest.Invalidate on Pixel 6
Fails on AP1A.240405.002 Vulkan
Bug: angleproject:352364583
Change-Id: Ie9d1e5998cb8692c68fe015dc76ee629b2e2f70f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6055168
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
a2d76f03
|
2024-11-28T00:00:00
|
|
Add GetTexLevelParameterTest.Levels end2end test
Bug: angleproject:376497150
Change-Id: Id14663f6fb1fd64edc439e695953d4a4a3b9f853
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6056029
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5d3d299d
|
2024-11-25T16:35:51
|
|
Expose the required GLES1.0/1.1 extensions in ANGLE
Exposed below extensions:
GL_OES_texture_mirrored_repeat
GL_OES_blend_subtract
Bug: angleproject:380704155
Change-Id: Ib095f9bfaabda92bb2c588d633f1512e118f066e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6038450
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
01dee1cb
|
2024-10-14T15:04:28
|
|
Add implementation for GL_EXT_texture_storage_compression
Bug: angleproject:352364583
Change-Id: I3dab4c68d5d0206d681e165e991217bd3de8eeb6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6011055
Auto-Submit: Neil Zhang <Neil.Zhang@arm.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0f9c146b
|
2024-11-28T09:47:35
|
|
Roll Chromium from c957bc3555b2 to b640856c0ed4 (1228 revisions)
Update VK-GL-CTS's _XOPEN_SOURCE version on Apple from 600 to 700 due to
https://github.com/llvm/llvm-project/issues/117630
https://chromium.googlesource.com/chromium/src.git/+log/c957bc3555b2..b640856c0ed4
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-angle-autoroll
Please CC angle-team@google.com,syoussefi@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in Chromium:
https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Changed dependencies
* build: https://chromium.googlesource.com/chromium/src/build.git/+log/77bbb5dc9c..7ed11c6746
* buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/38a60f7635..9a87238031
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/f1ccfe587d..b05f90caa7
* third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/be9e355580..a79aaef505
* third_party/android_build_tools: https://chromium.googlesource.com/chromium/src/third_party/android_build_tools/+log/e4eee387b5..52438668cc
* third_party/android_build_tools/error_prone/cipd: nAUL9xKY6JWQyjoK2O_mKTqLakmTU69EX-FROc-rzNEC..n2Qwqs0Jr17AMpoYGTDACFHIM0aPsdm8g3X0jBjfDQoC
* third_party/android_build_tools/lint/cipd: qft_MiuWKisqUw9hZCFTuJKi5jBZaexi7LbGkgRmrpkC..Hd1-tpL2M67CYclO3F_3WjBf70hE_XYr7tEXt0wQyvgC
* third_party/android_build_tools/manifest_merger/cipd: CIvskXU9WjZMXUINb-D8kgUKUDSf6G1G1QmCja7qOa4C..zC9JbLx2HVKIMFxavlF00isXwHx72vIkFlRCLvH0rIkC
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/497f6b7429..6a0960fe97
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/584e8366be..bd7f36598e
* third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/291ce60cce..76cb1e3b4a
* third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/9aff6762a3..e6303c7ffe
* third_party/r8/cipd: lrcfrwv2WpEoHAk051sZiwXxKxnNIUTYYEwM3oBDlhMC..GaYs9HP0ijqgwtd-Zv0Ee7R8HCzWR4LUzNNxBoTxdQUC
* third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/92e2247154..cecd4aabb2
* tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/5510558641..1ff4269915
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/6834b3fdbb..768236a7b2
* tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/c84318b6c0..d6a5c65a46
No update to Clang.
Bug: angleproject:364069034
Change-Id: I1cff11e0ebb80eae2a1f62be842796cb29e45a8a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6056956
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
6c1021ec
|
2024-11-22T16:48:45
|
|
Vulkan: Switch DescriptorSetLayout to use AtomicSharedPtr
SharedPtr has better semantics and safer to use. This CL removes direct
exposure of RefCounted object and also allows me to delete
BindingPointer class in later CL.
Bug: angleproject:372268711
Change-Id: I08a0dff3efcf794be843a4a548b9f2609bb9a5e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6044328
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
87d61997
|
2024-11-21T14:20:55
|
|
Vulkan: Switch ShaderModule to use SharedPtr
This CL gets rid of many vk::RefCounted<vk::ShaderModule> usage which is
risky due to it allows you to direct manipulate reference count. Switch
to vk::SharedPtr manages the reference counting automatically.
Bug: angleproject:372268711
Change-Id: I14f5c509bcbd9ea7d17101637e033652a68710a0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6039117
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
8597a5fd
|
2024-11-27T13:54:25
|
|
Skip TextureMultisampleTest.MaskedDrawWithSampleID on S22
Bug: angleproject:380475003
Change-Id: Id55f6a38d3cb8ec44ecbcd2f8eeabe80a7aeb220
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6055418
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
9c7ad319
|
2024-11-27T13:43:10
|
|
Revert "Delay EGLQueryContext render buffer change"
This reverts commit 233d9ee5c3525cc8290b3af52385ed59973438b4.
Reason for revert: ASSERT triggered on Linux NVIDIA 535.183.01
https://ci.chromium.org/ui/p/angle/builders/ci/linux-exp-test/1469/overview
Original change's description:
> Delay EGLQueryContext render buffer change
>
> According to the EGL spec, EGL_RENDER_BUFFER of a context
> should change after eglSwapBuffers is called if
> eglSurfaceAttrib changes. Refine ANGLE implemnetation
> to delay the render buffer change.
>
> Bug: angleproject:375528202
> Change-Id: Ida7736a09e3a83223a529dbfad48e0f952f91a38
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5982241
> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: angleproject:375528202
Change-Id: I08fc76b1b764e57639e2c0708cb155d392f82f22
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6055417
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
c796c571
|
2024-11-26T15:05:10
|
|
Disable BasicUniformUsageTest.* on Linux Intel WGPU for now
Bug: angleproject:376553328, angleproject:360083331
Change-Id: I03d2722d4e7754e38ec6d616b983bb6e5a71f845
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6043406
Reviewed-by: Roman Lavrov <romanl@google.com>
Auto-Submit: Matthew Denton <mpdenton@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
|
|
239ef680
|
2024-11-21T00:00:00
|
|
Metal: Support ANGLE_texture_multisample
* Added explicit multisample texture creation support
* Added support for SAMPLE_MASK frontend state
* Adjusted Metal backend caps
Fixed: angleproject:380475003
Change-Id: I90250e14da52869cb954b5a61d9c670e958a526c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6048958
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
c56867ec
|
2024-10-28T17:18:19
|
|
Refine sRGB support
GetNonLinearFormat should return the format itself
if format is non-linear. Also, for linear colorspace,
sRGB render target should be supported.
Bug: angleproject:377144464
Change-Id: I1179a3dbf67b619bae276e607bc61a85c1639c17
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5982242
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: mohan maiya <m.maiya@samsung.com>
|
|
233d9ee5
|
2024-10-24T18:24:14
|
|
Delay EGLQueryContext render buffer change
According to the EGL spec, EGL_RENDER_BUFFER of a context
should change after eglSwapBuffers is called if
eglSurfaceAttrib changes. Refine ANGLE implemnetation
to delay the render buffer change.
Bug: angleproject:375528202
Change-Id: Ida7736a09e3a83223a529dbfad48e0f952f91a38
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5982241
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7a1da65f
|
2024-11-25T00:00:00
|
|
Fix GetTexLevelParameter validation
* Adjusted ValidTextureTarget and ValidTexLevelDestinationTarget
helpers to allow multisample 2D array target on unextended
OpenGL ES 3.2 contexts.
* Adjusted ValidTexLevelDestinationTarget helper to disallow
2D array, 2D multisample, and 3D texture targets when the
corresponding functionality is not available.
* Removed redundant texture object validation from
ValidateGetTexLevelParameterBase.
* Adjusted ValidateGetTexLevelParameterBase to disallow
parameters not available in the current context.
Fixed: angleproject:380291920
Change-Id: Id2fcd1e2c81be25f1d545d213bd2508185592f20
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6049081
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
b94d7853
|
2024-11-14T00:00:00
|
|
Fix TextureMultisampleTest.CheckSamplePositions end2end test
The test should query positions only
for the supported sample counts.
Added capture support for GetMultisamplefv
and GetMultisamplefvANGLE functions.
Fixed: angleproject:380216733
Change-Id: I97456055ac60ada94dd75e10d7427e4448aee5e8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6042141
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
bfa03a84
|
2024-11-19T13:32:31
|
|
Metal: Fix vec swizzles to bvecs on AMD
Constructing bvecs explicitly from swizzles would produce double
swizzles, and this would fail validation at validateNoSwizzleOfSwizzle.
Fix by folding the expression passed to coersion bvec constructor.
Cannot test more in isolation for now, since AddExplicitTypeCasts uses
Metal specific SymbolEnv.
Bug: angleproject:379758210
Change-Id: I175941747ef1c7acb8c88683c1188843a154aa8a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6034935
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
89f7fd8b
|
2024-11-24T21:46:12
|
|
CL/Vulkan: Skip crashing tests
Bug: angleproject:380712807
Change-Id: I34d550a1a6e216f34840910e952f64a487f81e73
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6042525
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
9eab301c
|
2024-11-12T17:24:57
|
|
Enable GL_KHR_texture_compression_astc_sliced_3d
ARM supports GL_KHR_texture_compression_astc_sliced_3d,
so this extension can be enabled in Angle.
Bug: angleproject:378507964
Change-Id: I545ac57b4d6065a9ef99a7884555da47a1d50261
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6014004
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a5dec6fe
|
2024-11-22T15:58:02
|
|
Tests: ANGLETestBase subclasses non-zero initialize primitives
For example, a class member
GLuint mPipeline;
would get initialized to 0x7f7f7f7f, ~2e9, to avoid potential reliance
on the value being 0 which happens often, but not always, resulting in
hard-to-debug scenarios.
Large number to trigger checks such as https://crrev.com/c/6042185
ANGLE tests are generally subclasses of ANGLETest <- ANGLETestBase and
often use GL primitive class members, so this should apply broadly and
catch newly introduced cases.
This only sets the initial bytes of the allocated memory.
Non-primitives or explicitly initialized members overwrite these bytes
during their construction.
Bug: angleproject:380296979
Change-Id: I4df47a85580548f409a7c890853050cc127cbab1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6044560
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
9c202275
|
2024-11-14T00:00:00
|
|
Fix SAMPLE_MASK_VALUE indexed query validation
The SAMPLE_MASK_VALUE enum must be accepted
when ANGLE_texture_multisample is enabled.
Fixed: angleproject:380291919
Change-Id: Ieb834ca4c78982fbf1a121c0a70db7413574679a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6038524
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
b856059e
|
2024-11-22T09:58:13
|
|
Tests: linux-trace logs return code with OOM note
In case on the bug the replay was terminated with an empty stdout
and signal handler wouldn't trigger, making it difficult to
diagnose. This happened due to OOM killer (system low on memory) sending
SIGKILL to the process, which can't be handled and results in
termination with exit code -9. Add a note to the logs when this happens.
Bug: angleproject:380296979
Change-Id: Id4db4b12c680701511430d90eee847baded03bcb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6042183
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0757254b
|
2024-11-22T10:21:29
|
|
Tests: Add crash callback to test Replay (e.g. linux-trace)
Prints a backtrace on trapped signals. Didn't help with the issue on the
bug as it was an OOM -> SIGKILL which can't be trapped but generally
nice to have.
Also adds stdout flushes to the signal handler as stdout redirection is
by default _not_ line-buffered, so without a flush the printfs just go
into the buffer and don't actually show up in the redirected output
(including on bots). This might be the reason we were missing backtraces
in some other cases.
Bug: angleproject:380296979
Change-Id: I9fbba35e3bf4e6d863139ceb533f51973fe2f98d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6044040
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a3452c24
|
2024-11-14T00:00:00
|
|
Fix SAMPLE_MASK toggle validation
The SAMPLE_MASK enum must be accepted when
ANGLE_texture_multisample is enabled.
Bug: angleproject:380291919
Change-Id: I6aeb11dfbb65e6c05e493d1053679c7547c009c9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6039158
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2f7feccd
|
2024-11-21T17:21:45
|
|
Tests: Fix EGLSurfaceTest.SwapWithoutAnyDraw test
Bug: b/275624771
Change-Id: I17516dcc44b58b8dfa659ab099327b25ac88a167
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6038163
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
bc09b178
|
2024-11-15T13:11:04
|
|
CL: Run a subset of CTS tests on linux
Bug: angleproject:372722560
Change-Id: I33980df1850384762f0a5715cc3a04314f77d60a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6026508
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0c7c14eb
|
2024-11-22T10:31:45
|
|
Capture: add a sanity check to InitializeReplay4 args
In the case on the bug we were getting
maxProgramPipeline = 1684105299
due to an unitialized memory read, which then led to Replay OOM crash
as it allocates an array of this size. This is difficult to diagnose in
Replay as OOM leads to SIGKILL which cannot be trapped so we can't have
a backtrace. Adding a sanity check during capture.
Fix the other tests where we hit this
(https://anglebug.com/380296979#comment6)
One of them visible on red tests on a previous patchset in this CL:
https://ci.chromium.org/ui/p/angle/builders/try/linux-trace/9871/overview
https://ci.chromium.org/ui/p/angle/builders/try/win-trace/10795/overview
Bug: angleproject:380296979
Change-Id: I2879c1947742a9751a122545c8ba8da23ab243cb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6042185
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
b18b0b02
|
2024-11-22T13:40:47
|
|
Skip couple non-deterministic angle_restricted_trace_gold_tests
on Win Intel Vulkan.
aztec_ruins
aztec_ruins_high
produce slightly different images once in a while.
Bug: angleproject:353690308
Change-Id: Ib8043d8662b07a48ae86d731d7538153da517122
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6038527
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
8e9dc1a6
|
2024-11-19T11:08:31
|
|
Validate anonymous struct names with namespace
Consider GLSL:
struct { vec4 e; } g;
struct sbbf { vec4 f; };
The struct name validation would fail if user chosen struct name would
clash with a symbol name that ANGLE internally gave to an anonymous
struct.
Fix by importing Name abstraction from MSL backend. A symbol name is
a pair (namespace, string).
Move operator<<(std::ostream &os, const ImmutableString &str)
to sh namespace because that is more natural for operator overloading
name resolution. MSVC works with this.
Bug: angleproject:379758201
Change-Id: Icc9b02aa8cb532e1d925e2fba4c45468f01b9144
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6035029
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
8409b41e
|
2024-11-20T14:38:30
|
|
Report error on unsized interface block array
GLSL of forms:
uniform S{...} a[];
in R{...} b[];
out Q{...} c[];
Should produce error unless the shader is tesselation or geometry
shader.
Fix the errors for VS and FS. GS and TS likely need more work.
Bug: angleproject:379996129
Change-Id: Ib31c9a81717a8cd1c984eb4ce2e993d563bb3c4f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6038333
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
94eebab5
|
2024-11-21T17:04:54
|
|
Tests: fix ProgramPipelineTest31 unitialized memory read
Specifically mPipeline was being set to 1684105299 on linux-trace CI,
which then got captured as maxProgramPipeline=1684105299 leading to OOM
crash of the replay attempting to initialize an array of this size*4
(~6Gb). Some tests, like BindProgramPipelineTest do not use mPipeline so
it remains unitialized, and since GLuint is a C++ primitive there is no
default zero-initialization.
Bug: angleproject:380296979
Change-Id: I2398666f15a36d3e5ccd8aa163cc83682039b7d0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6042556
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
8f07cdde
|
2024-11-14T00:00:00
|
|
Fix NegativeTextureMultisampleTest
The test checks that unextended ES 3.0 contexts
reject commands related to multisample textures
but it did not create an unextended context and
therefore was skipped on most backends because
they expose the extension.
Fixed: angleproject:380088822
Change-Id: I2aab2876539fb48954e5c0055f510ca4db429245
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6038826
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ec773865
|
2024-11-19T14:46:29
|
|
Qualifier in const for sampler2D fails validation
The commit 039660a0757e8e5b661c1850747b688b6642f56d failed to special
cased "const in".
Fix by special casing also on EvqParamConst.
Bug: angleproject:379762012
Change-Id: Ife6966ea536972874645ae22b504712249817638
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6035505
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
99d5d4d5
|
2024-11-21T09:02:32
|
|
Tests: fix replay failure handling in linux/win-trace
Bug: angleproject:42264614
Change-Id: I752fb914b82222392bf88b51351217cd4d063cd6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6039443
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
594a11ac
|
2024-11-20T16:55:06
|
|
Tests: Add Need For Speed: No Limits trace
Test: angle_trace_tests --gtest_filter="*need_for_speed_no_limits"
Bug: b/380107298
Change-Id: I216574367e8e495a69c63de2ec04a6c9e3c73ff4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6037637
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
|
|
770242db
|
2024-11-20T17:03:07
|
|
Translator: Remove the `gimage1D` base type
This is a desktop GL type, whose removal was left out of b16d105fc6.
Bug: angleproject:370937467
Change-Id: I0bda5453b95ddf924ba0583de346902b333603a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6037776
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1f0ac74a
|
2024-11-20T16:43:50
|
|
Translator: Remove SubpassInputMS
ANGLE never generates multisampled input attachments, because it cannot
know if the shader will be used with a single-sampled or multisampled
framebuffer.
The SPIR-V transformer takes care of changing the type and ops to be
multisampled if needed.
Bug: angleproject:37093746
Change-Id: Ic9c3057536c0a5d543512dbd3c347033453a29f4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6039437
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
c4533e0a
|
2024-11-20T16:21:40
|
|
Translator: Remove the `double` base type
This is a desktop GL type, whose removal was left out of b16d105fc6.
Bug: angleproject:37093746
Change-Id: I185beef71099aafc3e350efc3dad019e2a72c0e6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6039436
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
ecfa4874
|
2024-11-20T00:41:03
|
|
Assert no GL errors at the end of image tests
Bug: angleproject:42265697
Change-Id: Iac9241d0fbe384b10fc0b0f6b2f764efca674ac3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6032805
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
99aac4b9
|
2024-11-20T09:24:07
|
|
Capture/Replay: Remove implied exts from RequiredExtensions
Support for the EXT_compressed_ETC1_RGB8_sub_texture extension can
be implied from the presence of OES_cmpressed_ETC1_RGB8_texture,
so remove it from the trace's RequiredExtensions entry in its json file.
Test: angle_trace_tests --gtest_filter=*need_for_speed_no_limits*
Bug: b/380026310
Change-Id: Ia80ae4d78c1f7f7f246ce7a5cfd00bfc0e9734a4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6037487
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
|
|
c4ec8dbb
|
2024-11-19T17:01:42
|
|
Vulkan: Expose EGL_ANDROID_front_buffer_auto_refresh
Original CL implemented the functionality without exposing the
corresponding extension.
This CL exposes the extension on Android and adds necessary validation.
Bug: angleproject:42265697
Change-Id: Ia01c68f04c41a850e531aa7b889de9e561f3a9db
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6035186
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d8e183ab
|
2024-11-19T13:23:35
|
|
Skip the antutu_refinery perf test on Windows/Intel
This test times out on this bot due to the excessive complexity and
memory requirements of the trace.
Bug: angleproject:379886383
Change-Id: I1ecf12429cd70f436fc83cf89a84c225d315aac6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6033296
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
e961f7ab
|
2024-11-19T16:28:07
|
|
Skip KHR-GLES31.core.texture_stencil8.multisample on S22
Bug: angleproject:379700129
Change-Id: Idc6a1fef8c66b375cae12409b54c2ead1159ea29
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6035510
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
42f9c200
|
2024-11-19T08:50:35
|
|
Comments: www.anglebug.com -> anglebug.com
The former doesn't work.
Bug: None
Change-Id: Ib16b005adb5b61a3a1277588e240c3d68705205c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6034293
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
518e162e
|
2024-11-15T00:07:14
|
|
Fix validation for 3D depth/stencil textures
They should fail with GL_INVALID_OPERATION:
> Textures with a base internal format of DEPTH_COMPONENT, DEPTH_STENCIL
> or STENCIL_INDEX are supported by texture image specification
> commands only if target is TEXTURE_2D, TEXTURE_2D_MULTISAMPLE,
> TEXTURE_2D_ARRAY, TEXTURE_2D_MULTISAMPLE_ARRAY, TEXTURE_CUBE_MAP or
> TEXTURE_CUBE_MAP_ARRAY. Using these formats in conjunction with any
> other target will result in an INVALID_OPERATION error.
Bug: angleproject:379674017
Change-Id: Icdd4cea24601f6744a3a85bdf8ef07946569a16f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6019830
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
174694c1
|
2024-11-16T02:15:55
|
|
Manual roll VK-GL-CTS from f674555ab03e to b27686793f88 (29 revisions)
Manual roll requested by yuxinhu@google.com
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/f674555ab03e..b27686793f88
2024-11-14 syoussefi@google.com Use std functions instead of de*
wrappers (deString.h)
2024-11-14 mateusz.bahyrycz@mobica.com Add coverage for instanced draws
with tessellation
2024-11-14 rgarcia@igalia.com Test alpha-to-coverage with sample shading
2024-11-14 mateusz.gawrysiak@intel.com Fixed ycbcr_sampler.graphics
array tests by adding combinedImageSamplerDescriptorCount multiplication
2024-11-14 scerveau@igalia.com EncodeTests: rework the result queries
2024-11-14 scerveau@igalia.com EncodeTests: set the decoder to use
layeredDpb
2024-11-14 mateusz.gawrysiak@intel.com Fix imageFormatProperties check
before VK_FORMAT_G8_B8R8_2PLANE_420_UNORM array creation
2024-11-13 yuxinhu@google.com Add #include <cmath> in
glcTextureStorageTests.cpp
2024-11-08 marcin.hajder@mobica.com Port KC-CTS tests to VK-GL-CTS
(draw_buffers_test1), PART 14
2024-11-08 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.11
into vk-gl-cts/main
2024-11-08 piotr.byszewski@mobica.com Test operations which must always
preserve denorms
2024-11-08 ziga@lunarg.com Add image concurrent copy tests
2024-11-08 piotr.byszewski@mobica.com Test DRLR with DS attachments that
use one aspect
2024-11-08 ziga@lunarg.com Add host image copy tests with array and
depth offsets
2024-11-08 benjamin.cheng@amd.com Create encode DPB image without
TRANSFER_SRC usage
2024-11-08 benjamin.cheng@amd.com Fix video-profile-independent DPB
creation
2024-11-08 lionel.g.landwerlin@intel.com Enable device-only events in
sync2 tests
2024-11-08 kamil.goras@mobica.com
KHR-Single-GL46.enhanced_layouts.varying_locations breaks spec and
requires more than GL_MAX_GEOMETRY_INPUT_COMPONENTS components in
geometry stage for some test cases. Such cases are skipped.
2024-11-08 marcin.hajder@mobica.com Port KC-CTS tests to VK-GL-CTS
(texture_stencil8_gl44), PART 16
2024-11-08 gleese@broadcom.com Revert "Fix support check for dynamic
state tests"
2024-11-08 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.10
into vk-gl-cts/main
2024-11-04 gleese@broadcom.com Fix frag_coord_conventions test when not
supported
2024-11-01 michal.jakubek@mobica.com Make
vktComputeBasicComputeShaderTests.cpp buildable
2024-10-31 mateusz.bahyrycz@mobica.com Remove commented code
2024-10-31 piotr.byszewski@mobica.com GPL with unusual multisample
states
2024-10-31 mateusz.bahyrycz@mobica.com Add coverage for indirect draws
with tessellation
2024-10-31 javed@igalia.com Add coverage for mesh shader with GPL/ESO
2024-10-31 marcin.hajder@mobica.com Port KC-CTS tests to VK-GL-CTS
(texture_storage_compressed_texture_data), PART 15
2024-10-31 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.10
into vk-gl-cts/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,solti@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: None
Tbr: solti@google.com,yuxinhu@google.com
Change-Id: I617a3b8a149bd157e3d922b0dc726bf395a4b27e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6027274
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
828e2d19
|
2024-11-16T14:41:10
|
|
Tests: Add Block Blast trace
Test: angle_trace_tests --gtest_filter="*block_blast*"
Bug: b/379456572
Change-Id: I751b69320f68dc4afaa6fdd29e054fb543c43d22
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6026306
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
f21cfcd6
|
2024-11-07T14:54:12
|
|
Add a corner case for framebuffer fetch
Add a defect test to test that when a shader reads from
gl_LastFragDepthARM or gl_LastFragStencilARM and no image is attached to
the depth or stencil attachment, respectively, results should be
undefined, instead of generating an error.
Bug: angleproject:376572258
Change-Id: I7ea0e5021ec370374c4da532b0fa58277f3e959e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5999877
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
51ff063c
|
2024-11-16T12:03:28
|
|
Skip real_racing3 trace on Linux NVIDIA
SYNC-HAZARD-WRITE-AFTER-WRITE with 535.183.01 driver
Bug: angleproject:377923479
Change-Id: I5791445bc36dacd6b71cd001d4c454d8b495f7bf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6022951
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
33dc1606
|
2024-11-16T11:39:22
|
|
Skip end2end failures on S22
FramebufferFetchES31.DrawNonFetchDrawFetchInStorageBufferThenClear_ARM
FramebufferFetchES31.DrawNonFetchDrawFetchInStorageBufferThenClear_Coherent
FramebufferFetchES31.MultiSampled
Bug: angleproject:377923479
Change-Id: I85d781cff5f87dc2d6bdacce5759bcc93c8cd702
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6025225
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
f3404c4d
|
2024-11-14T18:47:18
|
|
Tests: improve Windows support in android_helper
* Avoid using the Linux binary from platform-tools when running from a
trace bundle, use adb.exe from PATH instead
* Remove dependency on aapt with reading apk as zipfile
* handle CRLF from adb shell output
Bug: b/376300037
Change-Id: I4428e66aaa782d3e582c2562ebb3f6c206c4de5a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6021260
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
e3b3dd68
|
2024-11-14T23:00:52
|
|
Vulkan: Optimize color clears vs read-only depth/stencil switch
When switching to read-only depth/stencil mode, if the aspect that
intends to be in read-only mode has a deferred clear, the clear is
flushed separately beforehands (as that would be a write operation).
Prior to this change, _all_ deferred clears were flushed for simplicity.
In this change, only the aspect that is switching modes is cleared,
leaving the other aspects free to be optimized as loadOp of the
following render pass.
Bug: angleproject:378058737
Change-Id: Iba4371590bee99f5022575c09b0d32231562488c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6019829
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
adb80cbb
|
2024-11-12T22:38:38
|
|
Vulkan: Optimize read-only depth/stencil switch after clear
Prior to this change, if color is cleared then read-only depth/stencil
mode is enabled, ContextVk::switchToReadOnlyDepthStencilMode eagerly
flushed the deferred clears (starting a render pass).
However, if the render pass is marked dirty for any reason afterwards,
for example because we want to flush the render pass after a query
ends, the render pass that is just started above is unnecessarily
closed.
In this change, `switchToReadOnlyDepthStencilMode` only detects if a new
render pass is needed and marks the appropriate dirt bits. This way,
the render pass can only be restarted once.
Bug: angleproject:378058737
Change-Id: I83a5ebae6c223882eafea338eeec19895d87e5c1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6023414
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ba81145f
|
2024-11-08T15:45:44
|
|
Vulkan: Emulate coherent framebuffer fetch everywhere
Many apps expect coherent framebuffer fetch to be available, and
multiple downstream emulators end up forcing coherent framebuffer fetch
enabled despite the hardware not being coherent.
This change attempts to do a best-effort emulation of coherent
framebuffer fetch by automatically inserting barriers before framebuffer
fetch draws. While this doesn't correctly handle self-overlapping
geometry, it works well enough in practice for the applications.
As a result, framebuffer fetch is practically enabled everywhere after
this change.
Bug: angleproject:377923479
Change-Id: I3900a1de0f4db755b7e70871f57df3ea112073f9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6004336
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
33c86fde
|
2024-11-14T14:33:21
|
|
Tests: Add SimCity BuildIt trace
Test: angle_trace_tests --gtest_filter="*simcity_buildit*"
Bug: b/379097986
Change-Id: I8753014ebcf6ab1ea55868141a527429e8fb4f8c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6021680
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
7ba69645
|
2024-11-14T10:07:31
|
|
Fix unnamed outs w/ initializeUninitializedLocals
Fix translator initializeUninitializedLocals pass for anonymous
out parameters. The parameters should be initialized to zero,
similar to named but unassigned parameters.
Initialization would be skipped on GLSL output, assert on Metal.
Functions need to be replaced if their parameter names change.
In case the function had a prototype declaration, that has to be
replaced too.
All calls to old functions must be replaced with calls to new function.
Bug: angleproject:378584780
Change-Id: I9a990fa3840f6e26cd30f35bf6c99d9a8816f272
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6020245
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
df61fc7f
|
2024-11-14T13:31:24
|
|
Avoid reordering structs when separating from func
Avoid reordering structs when separating struct declarations
and function declarations.
Consider:
struct S1 { ... };
struct S2 { S1 a; } f();
SeparateStructFromFunctionDeclarations would insert the S2 to
the beginning of the containg block, so before S1 definition.
Fix by not inserting the structs to the parent block. Instead,
return the nodes from multi-replacement, so that the struct
definition is inserted at the site of the replaced function.
Bug: angleproject:378966971
Change-Id: I47582660610c1fcb28a9b5bd592ac020b5c48e34
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6022856
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
54e8e665
|
2024-11-12T12:53:54
|
|
Trace tests: generate and use trace list according to gn args
Generates out/<config>/gen/trace_list.json which contains
the list of traces included in the build according to the
angle_restricted_traces gn arg (or all traces if not set).
Test runner uses that file instead of the full restricted_traces.json.
Android runner pushes that file to the device to the usual location
(e.g. /sdcard/chroimum_tests_root/gen/trace_list.json)
This also fixes the issue where
`angle_trace_tests --list-tests`
lists all traces, not just those that were selected with the gn arg.
Similarly, running all traces without a filter would be limited to
the same list.
This transitively applies to trace bundles.
Bug: b/376923930
Change-Id: I63506a074d766a51b860472f7211842f8a080ecd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6011956
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
a402f9cb
|
2024-11-11T15:08:41
|
|
Metal: Do not use number digit separator in .mm
The review system turns ' to strings for Obj-C
syntax highlighting.
Bug: angleproject:378421872
Change-Id: I201f6561def7c4b945f37e3e02ec0b8915954e8e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6011209
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|