|
05c491e1
|
2025-03-15T11:56:07
|
|
Vulkan: Optimize GraphicsDriverUniforms update
Unless RP is closed there is no need to dirty GraphicsDriverUniforms
when the program executable changes.
Bug: angleproject:386749841
Test: VulkanPerformanceCounterTest.NoUpdatesToGraphicsDriverUniformsOnProgramChange*
Change-Id: Id02e8a17de93e2b73103666fc6cc62ce3cdd8f43
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6358315
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0b98cf97
|
2025-03-14T16:42:32
|
|
Translator: Fix a bug with struct-with-sampler rewrite
Bug: chromium:388884060
Change-Id: I8843e0ab9698224020628bedc7a528865d91d2bf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6354207
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2657dba2
|
2025-03-17T10:07:52
|
|
restricted_trace_perf: Use run-as when needed
On non-rooted devices, commands that access storage need
to use run-as.
Test: restricted_trace_perf.py
Bug: b/404239853
Change-Id: I38bc54c4f4eb9c986106e1773cb1e0796577eaeb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6361299
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
d668a13c
|
2025-03-14T17:18:18
|
|
Fix sync issue between XFB output and texture buffer input
For the following scenario, where the first draw writes to the
transform feedback buffer and the second draw reads from the
same buffer as a texture buffer, it is necessary to end the
render pass between the two draws and add a pipeline barrier.
// xfb write to tex_buffer
glBindBufferBase(GL_TRANSFORM_FEEDBACK_BUFFER, 0, tex_buffer);
glBeginTransformFeedback();
glDrawArrays();
glEndTransformFeedback();
// Draw with texture buffer tex_buffer
glBindBuffer(GL_TEXTURE_BUFFER_EXT, tex_buffer);
glTexBufferEXT(GL_TEXTURE_BUFFER_EXT, ..., tex_buffer);
glDraw();
Bug: angleproject:403319685
Change-Id: I9381a336ce61dea696c93158bb617a41afcfc583
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6356070
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Mavis Deng <mavis.deng@arm.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
f20fd2fe
|
2025-03-14T12:41:11
|
|
Tests: Make unpacked tarball files from tests world-readable
If the origin system did not have these world-readable, tests can fail
to open these files during runtime.
Also makes SELinux warning in multiuser mode more noticeable since
permissive mode is necessary for the test to run successfully.
Bug: b/403616641
Change-Id: Id23ce572d46054fea60c03cfa9c30871ab5e50dd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6357935
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Renato Pereyra <renatopereyra@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
292bb458
|
2025-03-14T12:17:49
|
|
Cut MAX_COLOR_ATTACHMENTS_WITH_ACTIVE_PIXEL_LOCAL_STORAGE_ANGLE
Since the number of real devices that support framebuffer fetch, but do
not support draw_buffers_indexed, is effectively zero,
MAX_COLOR_ATTACHMENTS_WITH_ACTIVE_PIXEL_LOCAL_STORAGE_ANGLE is an
unnecessary complication. These hypothetical devices can fall back on
shader images or just not support pixel local storage at all.
This closes the door for WEBGL_shader_pixel_local_storage to ever be
implemented on top of the ES2 extension that inspired it all,
EXT_shader_pixel_local_storage, but WebGL can just use framebuffer fetch
instead, or maybe even EXT_shader_pixel_local_storage2 some day.
This dramatically simplifies the WEBGL_shader_pixel_local_storage
extension.
Bug: angleproject:40096838
Change-Id: I9c51f2ce000620f883cb7917d4e8618c8e9ee803
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6354657
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
19e45680
|
2025-03-18T12:50:52
|
|
Disable timestamp call from AddTraceEvent for Android platform
Android platform's addTraceEvent ignores the timestamp arg, so there is
no reason to make this call (and it shows as the hotspot).
Behind a new define to avoid breaking this in Chromium Android builds
where the timestamp is actually used.
Bug: angleproject:404542398
Change-Id: I0f5eea31feb6838c3e62949fcd2947145be4ebf5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6368277
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
fca3fed3
|
2025-03-18T11:06:10
|
|
Manual roll vulkan-deps from 552ac332629b to bf9998679aee (25 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/552ac332629b..bf9998679aee
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/0051b92b6fff2fd3dbc99b7dae316fa51a7f4767..8842cf92e3de290f275c46d55cbfe42b7d0775a6
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/9e470ef0f95d6923fa19dc5c5dc48c1442eb5a8b..ba1359d203e544bd458373ba249a47c44e97b071
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/8491f31d36a8c642e588220b89729129721fec31..54cbefd25dbcaeb2bb03da207afce6cad7fb5dd1
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/74a6b7dc828078cf2f1524d3947f65a29a1562e9..b2c8bd421aa5c1502fd56c3c07fb2831a8ceb882
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,syoussefi@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:404418769
Change-Id: I359e903e2d061b7bbde6b18d234d8927d2cca56c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6368274
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
dae3c851
|
2025-03-14T11:44:53
|
|
Vulkan: Bake non-shader state into linked pipeline
When using VK_EXT_graphics_pipeline_library, previously ANGLE would
create three pipelines libraries:
* The Shaders library was created based on the GL program's shaders + a
few static states. This typically hit the program's own pipeline's
cache that was warmed up during link.
* The VertexInput and FragmentOutput libraries were created at draw
time, which used the global pipeline cache
At draw time, immediately after creating the non-Shaders libraries, the
three libraries were linked into the final pipeline to be used by the
draw call.
This caused an inefficiency; because the non-Shaders libraries were
created independently from the Shaders library, they had to be compiled
pessimistically, for example because they could not be optimized to take
into account the precision of the fragment shader's outputs or whether
any value is const (typically alpha being set to one).
Given the creation of VertexInput and FragmentOutput libraries is
typically quite fast (the former being no-op and dynamic state anyway),
this change removes the need for creating those libraries, and directly
specifies the vertex input and fragment output state when creating the
final pipeline out of the Shaders library.
In this way, the same fragment output state can be tailored to the exact
shaders it is being used with and incur a smaller overhead. In this
change, the linked pipeline is cached in the GL program's pipeline
cache, which is never synced to the blob cache as producing it is
assumed to be fast already.
Bug: angleproject:42265839
Change-Id: I8496ea37771555522bdc9de94043a1b56fa5967e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6354205
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
531e8791
|
2025-03-12T17:29:04
|
|
Change error set in ValidateCreateContext
According to EGL spec, if specified version number is not
a defined version of GLES, EGL_BAD_MATCH error should be generated,
but ANGLE generate EGL_BAD_ATTRIBUTE. Fix this and modify
the assert in the end2end test.
Bug: angleproject:403414983
Change-Id: I09ee779fc3008a420aeeb5c1416a44c9c82d2ec4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6355745
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
fac33bb3
|
2025-03-13T09:40:56
|
|
Refine InterfaceVariablesMatch
During glDraw, in function GetMergedVaryingsFromLinkingVariables,
function InterfaceVariablesMatch does permissive check, so that
two backshader outputs may match one front shader input. Refine
that function to do more strict checking.
Bug: angleproject:402562396
Change-Id: I04f89dea97809e9621a125ca9385fb7416f7dcc2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6347539
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Shufen Ma <Shufen.Ma@arm.com>
|
|
ae71cc1c
|
2025-03-11T16:36:52
|
|
Don't destroy blend or color mask state in PLS
The browser caches this state, so conditionally destroying it would
invalidate the browser's cache. Instead, cache modifications to
overridden PLS blend & color mask state in ContextPrivateState, and
restore it upon ending PLS.
Also update the spec to specify that FRAMEBUFFER_DEFAULT_WIDTH and
FRAMEBUFFER_DEFAULT_HEIGHT may be overridden during PLS in ES 3.1.
Bug: angleproject:40096838
Change-Id: Ic2c0aa6dc33ada7350e15e27bef22c79ca5f6c7f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6350727
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
b600a42c
|
2025-03-13T15:18:40
|
|
Remove the PLS allow list
All the interactions with render passes have been properly solved now,
and there is no longer a need for the allow list.
Bug: angleproject:40096838
Change-Id: I0219fb8824820e076c128f10f49c85f0f76270ef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6355312
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
f86d0711
|
2025-03-07T13:30:58
|
|
Tests: Add My Talking Angela 2 Trace
Test: angle_trace_tests --gtest_filter=*my_talking_angela_2
Bug: b/401473491
Change-Id: Ic0416ba7c6ab3db82865e9da01a69802590f33c1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6352326
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
fbb1829d
|
2024-12-08T01:46:39
|
|
Allow glClear while PLS is active
It just makes sure to not clear any draw buffers that may be in use for
pixel local storage.
Bug: angleproject:402810076
Bug: angleproject:40096838
Bug: angleproject:42266150
Change-Id: I60a573d5e9e5dbadce12d79e3f4b6fc57747e655
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312336
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
44853559
|
2025-02-25T17:29:54
|
|
Correct GLES renderbuffer default values
For GLES renderbuffer, the initial value queried for
RGBA bits should be 0, and the component type should be
GL_NONE according to spec. Correct the default values on
ANGLE now. An end2end test is also added.
Bug: angleproject:399693196
Change-Id: If8366b3d2350add917054813d3cb9a6a23727da7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312514
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
db48967f
|
2025-03-05T09:07:10
|
|
Reland "Add GL_BGRA_EXT as a sized renderable format"
This reverts commit 4bfb9da6f98b3e28905cc759a77bff750dfe3ff7.
Reason for revert: More mapping fixes for GL backend
Original change's description:
> Revert "Reland "Add GL_BGRA_EXT as a sized renderable format""
>
> This reverts commit 8f2fbbd1a0d16471596afad57c88f950a1ee3032.
>
> Reason for revert: http://anglebug.com/399913714
>
> Original change's description:
> > Reland "Add GL_BGRA_EXT as a sized renderable format"
> >
> > This reverts commit 22dfe435daa7c680c07bb8d4f1d98ab765e60ad0.
> >
> > Reason for revert: Fixed mapping back to BGRA_EXT for GL backend
> >
> > Original change's description:
> > > Revert "Add GL_BGRA_EXT as a sized renderable format"
> > >
> > > This reverts commit 80093a7d8f850c3ab551ddb4972c2f1f27511433.
> > >
> > > Reason for revert: suspect for blocking rolling ANGLE into Chroimum
> > > https://chromium-review.googlesource.com/c/chromium/src/+/6283973
> > > https://ci.chromium.org/ui/p/chromium/builders/try/chromeos-amd64-generic-rel-gtest/372754/overview
> > >
> > > Original change's description:
> > > > Add GL_BGRA_EXT as a sized renderable format
> > > >
> > > > dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable
> > > > format. It was apparently always supposed to be, based on the
> > > > wording of the spec.
> > > >
> > > > This CL adds that support and updates expectations, along with a few
> > > > extra tests.
> > > >
> > > > Includes contributions from Robic.Sun@arm.com.
> > > >
> > > > Test: angle_end2end_tests, angle_deqp_*_tests
> > > > Bug: b/42267264
> > > > Bug: angleproject:394384906
> > > > Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7
> > > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444
> > > > Reviewed-by: Geoff Lang <geofflang@chromium.org>
> > > > Commit-Queue: Cody Northrop <cnorthrop@google.com>
> > > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> > >
> > > Bug: b/42267264
> > > Bug: angleproject:394384906
> > > Change-Id: I64572361cfed33b4ea17eabf278f580471d045c2
> > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285628
> > > Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
> > > Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
> > > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> >
> > Bug: b/42267264
> > Bug: angleproject:394384906
> > Change-Id: I1bd9df904d93fd54286cbfce53fe89db89e842b9
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310699
> > Commit-Queue: Cody Northrop <cnorthrop@google.com>
> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> > Reviewed-by: Geoff Lang <geofflang@chromium.org>
>
> Bug: b/42267264
> Bug: angleproject:394384906
> Bug: angleproject:399913714
> Change-Id: I9f79f39a6d9cba3b23c261005bc3e012d70cd1cf
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312977
> Auto-Submit: Cody Northrop <cnorthrop@google.com>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bug: b/42267264
Bug: angleproject:394384906
Bug: angleproject:399913714
Change-Id: Ifc98fcbb0883dc4a55ad358825e9c1935fa26eaa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6330036
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
62bf97d9
|
2025-03-10T14:23:31
|
|
Metal: Fix line loop indexes for primitive restart
Use the existing code to generate line strips from line loops.
Bug: angleproject:401284933
Change-Id: Ie131199c23b93364fabb8f0dc6766f7e8d5f2b8d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6333539
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
9f9a0dfd
|
2025-03-06T21:20:40
|
|
Fix framebuffer attachment format sizes query for Surface
Surface as framebuffer attachment is always specified and should return
valid format sizes even if extents is empty.
At the same time, accessing Window surface sizes without previously
acquiring next swapchain image (Vulkan backend) may result in outdated
values. In other words, without framebuffer synchronization.
This change not only fixes the bugs, but also removes dependency on
surface size.
Test: angle_end2end_tests --gtest_filter=PbufferTest.ZeroSizedSurfaceFormatQuery/*
Bug: angleproject:402532204
Bug: angleproject:397848903
Bug: angleproject:42261031
Change-Id: I736a484caf99e0ff306c244ca13e1eb181222e64
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6329487
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
97083463
|
2025-03-10T09:07:16
|
|
Polish PLS interactions with xform feedback & QCOM_tiled_rendering
For the simplest integration with WebGL, it was decided that
glBeginTransformFeedback() and glStartTilingQCOM() should implicitly
disable PLS, whereas glBeginPixelLocalStorageANGLE() should fail if
either of these modes are active.
Bug: angleproject:40096838
Change-Id: I859a496c99c60c5b040c5eac542f43d85872eb30
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6339788
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
4b39a6a9
|
2025-03-08T14:16:29
|
|
Generate errors for framebuffer invals during PLS
Generate GL_INVALID_OPERATION for InvalidateFramebuffer,
InvalidateSubFramebuffer, and DiscardFramebufferEXT (and add them to the
PLS allow list so we can test the new validation).
This is part of a final preparation before deleting the allow list.
Bug: angleproject:40096838
Change-Id: If8ffb9c1998ca739798171ae4643a3c9ad3ee049
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6335750
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1ead4cbd
|
2025-03-07T09:49:21
|
|
Allow texture modification commands while PLS is active
Just do a little extra validation and bounce modifications if they would
modify an active PLS plane.
Bug: angleproject:40096838
Change-Id: I6f27951f5d0ef5dfaf23b5a005a2d94a749e2c4f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6337703
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
235c0be1
|
2025-03-07T13:48:48
|
|
Fix program cache on relink with glTransformFeedbackVaryings
glTransformFeedbackVaryings updates
mState.mTransformFeedbackVaryingNames, which was then saved to cache
during a post-link that might happen after this was executed.
Change ::serialize() to save
mState.mExecutable->mTransformFeedbackVaryingNames
instead, as according to Shabi this is the intended behavior.
Also do the same for isSeparable and transformFeedbackBufferMode.
Adds a repro where this led to tfvaryings getting loaded from cache into
a new program that didn't specify tfvaryings.
This resolves the interaction between these tests executed sequentially
(such as with --bot-mode):
GLSLTest_ES3.UnsuccessfulRelinkWithBindAttribLocation/ES3_Vulkan
MultithreadingTest.ProgramLinkAndBind/ES3_Vulkan
Bug: angleproject:401554049
Bug: angleproject:383164783
Change-Id: I66c599bc68c537e0cd47fbb99dd61d1d7a8a2824
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6329734
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
35ffe55c
|
2025-03-09T15:00:27
|
|
Block framebuffer queries on overridden PLS state
Generate an error from glGetFramebufferAttachmentParameteriv() when
querying a color attachment that has been overridden by PLS.
Bug: angleproject:40096838
Change-Id: I83e68c3527f034f9a24822cf4f57789f81b9b6af
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6338390
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
668a7a2e
|
2025-02-19T14:55:49
|
|
Revert "Vulkan: Return cached width and height for eglQuerySurface"
This reverts commit db833869131eddb36e695717a823a540e3cdc8ba.
Reason for revert:
Native GLES driver behavior on Android is different from what was tested
by "EGLPreRotationSurfaceTest.CheckSurfaceCapabilities" test. More
precisely, behavior is different depending if native Window is resided
using `ANativeWindow_setBuffersGeometry()` or resized by the user
(screen rotation or resizing of a floating window).
In case of `ANativeWindow_setBuffersGeometry()` resize (used by tests),
surface will have size of the Window up until image is acquired
(dequeued). In other words, size will be fixed after draw and will match
current Window size until draw.
In case of resizing by the user, surface size will be fixed until the
next swap. This is the behavior that was tested by the reverted test.
Bug: angleproject:397848903
Bug: angleproject:153329980
Change-Id: I8fc8d194c1591aff714dd255acd25392b4963e0d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6298731
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
1bfeb8a5
|
2025-03-03T00:00:00
|
|
D3D11: Set SV_Position interpolation for conservative depth
HLSL requires centroid interpolation for PS input
position if conservative depth output is used and
the shader is executing at pixel-frequency.
Bug: angleproject:397720825
Change-Id: I2b314e39e40a63cb58e2bdef99ffa842ddaaff0d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6336827
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
6c2737be
|
2025-03-06T13:09:44
|
|
Allow RASTERIZER_DISCARD while PLS is active
Writes to pixel local storage can just be discarded as normal.
The only special interaction we need is that BeginPixelLocalStorageANGLE
always clears the PLS attachments, even if RASTERIZER_DISCARD is
enabled.
Bug: angleproject:40096838
Change-Id: I43d00af96b287134d73f08802cea58694fe7d717
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6332026
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e41cbdb5
|
2025-02-26T17:51:06
|
|
Complete the implementation of GL_EXT_buffer_storage
Currently, glBufferStorageEXT doesn't set buffer usage to
DYNAMIC_DRAW. Also, validation of glGetBufferParameter* misses
check for GL_BUFFER_IMMUTABLE_STORAGE_EXT and
GL_BUFFER_STORAGE_FLAGS_EXT. This patch fixes these issues.
Also, an end2end test is added.
Bug: angleproject:399689628
Change-Id: Iecf6bd921f4fff849a5f059adf40043d08edfb7a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312515
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
a63c2826
|
2025-03-08T16:12:40
|
|
Skip MultithreadingTest.ProgramLinkAndBind on Intel/windows
Due to flakiness
Bug: angleproject:401554049
Change-Id: I7210ff90c6de3d9b225d1e3a65df3cc4452fc9d6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6334634
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0cdbc781
|
2025-03-06T11:22:18
|
|
WGSL: Output samplers, including samplers from structs
This output two WGSL variables for each GLSL sampler, including samplers
in structs. This does not output the correct types for the WGSL
variables, yet, nor does it generate texture access function calls.
It also can't deal with arrays of samplers, which are not allowed in
WGSL.
Note that WGSL does not allow structs containing samplers to be
arguments to a function, like Vulkan, nor does it allowed arrays of
samplers at all, unlike Vulkan. This deals with the former problem the
same way as Vulkan and Metal, by monomorphizing functions that take
unsupported arguments.
Bug: angleproject:389145696
Change-Id: I346688783dd2771c8fe6848b6783d948ed111783
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6253672
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
|
|
85fe2671
|
2025-02-25T16:54:20
|
|
Set length or infoLog when they are not NULL
For glGetProgramPipelineInfoLog, spec says that if length is NULL,
then no length is returned. Also do this to infoLog to avoid crash.
Bug: angleproject:398904340
Change-Id: I1f87a8932f72a0d5c44c2344936ee18c674a802b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6300356
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
4f6a799a
|
2025-03-05T18:28:44
|
|
Fix iOS build
Broken by
https://chromium-review.googlesource.com/c/angle/angle/+/6302912
Bug: b/398048048
Change-Id: I41d7c8b45b42b9fc36fcd761a254f346c7fb2299
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6330716
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
9bdc6763
|
2025-03-03T15:54:46
|
|
GetProgramPipelineiv may create a new state vector
For glGetProgramPipelineiv, spec says that If pipeline is a name
that has been generated (without subsequent deletion) by
GenProgramPipelines, but refers to a program pipeline object that
has not been previously bound, the GL first creates a new state
vector in the same manner as when BindProgramPipeline creates a new
program pipeline object.
Also creates a new state vector in glValidateProgramPipeline if the
pipeline has not been previously bound.
Modify the ProgramPipeline's validate function so that when the
program pipeline is generated, but has never been bound, the
validation status would be false.
Bug: angleproject:400254603
Change-Id: I906669a4e80aa12283156bae8a72a2dbf0b63b90
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6316349
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
3d806ba6
|
2025-03-02T00:15:36
|
|
Translator: Split textureGather* ops
... based on whether the comp or refz arguments are present.
Bug: angleproject:349994211
Change-Id: I19e638f6cb27cdb890c5e30c0662aad30888d2da
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6313582
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ad6c3d74
|
2025-02-19T22:45:29
|
|
Vulkan: Fix RP resolve layouts w.r.t shared present mode
This is partially a regression after the previous change:
Vulkan: Fix present optimization w.r.t shared present mode
Before the above change, swapchain image was still optimized for present
even when using shared present mode. However, because
SetBitField(mAttachmentOps[packedAttachmentIndex].finalResolveLayout
line was using `getCurrentImageLayout()` (lucky coincidence) it was
setting correct SharedPresent layout into `finalResolveLayout`.
The `initialLayout` and reference `layout` was still
`VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL`, but for some reason VVL was
not producing any errors.
This change adds setting `finalResolveLayout` for the resolve
attachment, which in turn propagates
`VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR` to all renderpass layouts as well
as to the dynamic rendering info.
Test: angle_end2end_tests --gtest_filter=EGLSingleBufferTest.SharedPresentLayoutWithMSAA/*
Bug: angleproject:42262606
Change-Id: I49a121f1d43a078890b0dc32e0574a79e3565270
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6281569
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
318d4038
|
2025-02-18T13:19:28
|
|
Vulkan: Fix present optimization w.r.t shared present mode
Since the implementation of "EGL_KHR_mutable_render_buffer" mode
(angleproject:42262606), the renderpass optimization for present
(b/153885625) was not working correctly. It sill tries to transition
into `ImageLayout::Present`, but instead of entirely skipping the
transition, it inserts the barrier even when renderpass is still opened.
When both "supportsSharedPresentableImageExtension" and
"preferDynamicRendering" are enabled, code will hit ASSERT in
`flushToPrimary()` when attempting to record `ImageLayout::Present`
barrier into the primary command buffer.
Above issue is fixed by skipping the transitioning into
`ImageLayout::Present` when in shared present mode.
Other changes and fixes:
- removed renderpass flush when resolving with renderpass, since it is
not necessary (angleproject:42265256).
- above change reveled a bug in `finalizeImageLayout(&mColorImageMS)`
call. This call reverts the layout in the previous finalize call
from Present to ColorWrite. So it must have been inserted before
finalizing the swapchain image. Issue fixed by removing both finalize
calls.
- updated condition to skip invalidate w.r.t shared present mode
(b/229689340), that was missed during implementation of
"EGL_ANDROID_front_buffer_auto_refresh" (angleproject:42265697).
Test: angle_end2end_tests --gtest_filter=EGLSurfaceTest.PresentLayoutTransitionWithMSAA/*
Bug: b/153885625
Bug: angleproject:42262606
Bug: angleproject:42265256
Bug: b/229689340
Bug: angleproject:42265697
Change-Id: Ifad8aea8548fa7bfac27941812c435b2af655309
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6277445
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
|
|
1a0c9db3
|
2025-02-27T10:43:00
|
|
Vulkan: Disable monolithic pipeline creation with GPL
As it violates OpenGL ES rules. This change also removes Vulkan perf
counter tests that attempt to verify that warmed up programs hit the
cache... this fails in non-trivial ways especially with graphics
pipeline library due to:
- Warm up tasks being async, they may finish after the test reads the
perf counters to set expectations
- Some drivers report a cache miss when fast-linking libraries... but
likely they don't even look at the cache (so both hit and miss would
have been inaccurate)
- There is no 100% guarantee that the warmup really leads to a draw-time
cache hit.
Things are made worse by
https://chromium-review.googlesource.com/c/angle/angle/+/5421594 because
we don't necessarily even wait for the warm up tasks if ANGLE's view of
the pipeline description doesn't match what was used for warm up (even
if internally to the driver some of the state does not affect the binary
blobs).
Bug: angleproject:42265839
Change-Id: Iaf96e4f64e2187abc666ff07fe1304d7474a0e86
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6309696
Reviewed-by: Charlie Lao <cclao@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
d50cd35e
|
2025-02-20T08:29:07
|
|
Tests: Add expectations file for angle_trace_tests
Skipping trace tests was handled in the TracePerfTest source and
is now specified in angle_trace_tests_expectations.txt.
Bug: b/398048048
Change-Id: Idbf5e95e74699374eb46330dc3880a0c2dfc9bc1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6302912
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
4fae3323
|
2025-03-03T14:21:07
|
|
ValidateEGLImageObject should not skip 3D EGLImage
* Vulkan and GL backends already support 3D EGLImage, so remove related
part in ValidatioinEGLImageObject.
* Add a new end2end test for 3D EGLImage.
Bug: angleproject:399774384
Change-Id: I6c39298a2f2d4c2dded2d6ddd8b98cdb8a22616a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6311581
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Aurora Zhang <Aurora.Zhang@arm.com>
|
|
2e65d3d4
|
2025-02-03T16:26:46
|
|
Vulkan: Fine-tune submission for multiple RPs
This CL aims to fine-tune submission based on a certain command
buffer size. This allows us to perform one submission for multiple
smaller render passes.
* Added mCommandsPendingSubmissionCount to ContextVk.
* In ContextVk::syncState(), preferSubmitAtFBOBoundary is only used
if the render pass pending command count exceeds the threshold:
kMinCommandCountToSubmit
* Currently set to 32.
* For now, we still submit if the command is a clear (for example
glClearBufferfv()).
* For now, we also still submit if the command is an invalidate
(for example, glInvalidateFramebuffer()).
* In ContextVk::flushImpl(), if the pending command count exceeds the
threshold (kMinCommandCountToSubmit) and the device is found to be
idle, the work is submitted to keep the device busy.
* Modified the following unit test from VulkanPerformanceCounterTest:
VerifySubmitCounterForSwitchUserFBOToDirtyUserFBO
* Since there is now a minimum command count for submission, the
number of draw calls has been changed so that the submission is
still issued at the new FBO boundary.
* After this CL, life_is_strange shows the following improvements:
(From the latest measurements)
* +19% wall_time
* +38% cpu_time
Bug: angleproject:42265052
Change-Id: I18452cc1d39ca7e0ac376f6012974b498153cce8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6182927
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
729b55ba
|
2025-03-04T10:45:34
|
|
Tests: Fix --gtest_repeat reporting Pass on intermediate Fail
When running with --gtest_repeat=N, the same test is executed multiple
times and the harness was overwriting a previous Fail status with a
subsequent Pass. Also made Android logging more clear.
Bug: None
Change-Id: Ib1d71ca89e9e9b2af8f6a0df2c9e280b86143265
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6320657
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
bd8bc105
|
2025-02-19T18:08:32
|
|
vulkan: disable pipeline cache data serialization for nvidia device.
we still see the big cache data issue after driver version 520.
rename hasEffectivePipelineCacheSerialization to
skipPipelineCacheSerialization.
Bug: b/358380399
Change-Id: Idd8354f95c3eb4c2e58678a4cf50c8b6af20f371
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6284126
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Hailin Zhang <hailinzhang@google.com>
|
|
1f4708b2
|
2025-02-28T16:38:36
|
|
Fix nullptr argument to std::string constructor
Passing nullptr to std::string's constructor is not allowed and the
latest libc++ version warns about it.
Bug: chromium:399683086
Change-Id: Id43d2d58b8e9df99a811345e46cfe0d8b60c0cca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6311612
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Hans Wennborg <hans@chromium.org>
|
|
aa697ed0
|
2025-02-28T11:05:55
|
|
Manual Roll vulkan-deps from c1c31f to 040c47 (9 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/c1c31f4d17a9..040c4735c51c
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/8b822ee8ac2c3e52926820f46ad858532a895951..0b7c079b32f676b57e92a8ded374976842985116
https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/e1fcaef1e8f2e4f4ccbfb58ad8f20e807368de76..f82d29981c0b0136adfaa7863df485a705c80c84
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/f289d047f49fb60488301ec62bafab85573668cc..d3bfa4b9b639c47ffaee7c1c1b76044c92fa66cc
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/4e7b0c905b1a0401e24333800937cc8792efa037..7d5cab3ff7ea5a8b62dc94df72141606539344fc
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: b/399191283
Bug: b/399969262
Tbr: yuxinhu@google.com
Change-Id: I150f1cb9c56f014628c1a2aa06c1981b71d2d605
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312337
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Solti Ho <solti@google.com>
|
|
8dd4a6e8
|
2025-02-28T16:50:51
|
|
Translator: Remove rect and 2DMS* images from atomic ops
They are a relic of desktop GLSL support.
Bug: angleproject:349994211
Change-Id: I111467fea111d22e2d12003d639bec268e418b44
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6313639
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4bfb9da6
|
2025-02-28T12:49:28
|
|
Revert "Reland "Add GL_BGRA_EXT as a sized renderable format""
This reverts commit 8f2fbbd1a0d16471596afad57c88f950a1ee3032.
Reason for revert: http://anglebug.com/399913714
Original change's description:
> Reland "Add GL_BGRA_EXT as a sized renderable format"
>
> This reverts commit 22dfe435daa7c680c07bb8d4f1d98ab765e60ad0.
>
> Reason for revert: Fixed mapping back to BGRA_EXT for GL backend
>
> Original change's description:
> > Revert "Add GL_BGRA_EXT as a sized renderable format"
> >
> > This reverts commit 80093a7d8f850c3ab551ddb4972c2f1f27511433.
> >
> > Reason for revert: suspect for blocking rolling ANGLE into Chroimum
> > https://chromium-review.googlesource.com/c/chromium/src/+/6283973
> > https://ci.chromium.org/ui/p/chromium/builders/try/chromeos-amd64-generic-rel-gtest/372754/overview
> >
> > Original change's description:
> > > Add GL_BGRA_EXT as a sized renderable format
> > >
> > > dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable
> > > format. It was apparently always supposed to be, based on the
> > > wording of the spec.
> > >
> > > This CL adds that support and updates expectations, along with a few
> > > extra tests.
> > >
> > > Includes contributions from Robic.Sun@arm.com.
> > >
> > > Test: angle_end2end_tests, angle_deqp_*_tests
> > > Bug: b/42267264
> > > Bug: angleproject:394384906
> > > Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7
> > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444
> > > Reviewed-by: Geoff Lang <geofflang@chromium.org>
> > > Commit-Queue: Cody Northrop <cnorthrop@google.com>
> > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> >
> > Bug: b/42267264
> > Bug: angleproject:394384906
> > Change-Id: I64572361cfed33b4ea17eabf278f580471d045c2
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285628
> > Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
> > Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
>
> Bug: b/42267264
> Bug: angleproject:394384906
> Change-Id: I1bd9df904d93fd54286cbfce53fe89db89e842b9
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310699
> Commit-Queue: Cody Northrop <cnorthrop@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Bug: b/42267264
Bug: angleproject:394384906
Bug: angleproject:399913714
Change-Id: I9f79f39a6d9cba3b23c261005bc3e012d70cd1cf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312977
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
055123f8
|
2025-02-27T10:45:56
|
|
Vulkan: Don't maintain SharedCacheKeyManager for BufferBlock
Dynamic descriptor type uses the underlying BufferBlock in the
descriptorSet. There could be many BufferHelper objects sub-allocated
from the same BufferBlock. And each BufferHelper could combine with
other buffers to form a descriptorSet. This means the combination for
BufferBlock could potentially be very large, in thousands with some app
traces like seeing in honkai_star_rail. The overhead of maintaining
mDescriptorSetCacheManager for BufferBlock could be too big. In this CL
I have chosen to not maintain mDescriptorSetCacheManager in the
BufferBlock. The only downside is that when BufferBlock gets destroyed,
we will not able to immediately destroy all cached descriptorSets that
it is part of. They will still gets evicted later on if needed (see
evictStaleDescriptorSets for detail). After this CL, running with all
app traces we have, the max vector size of
SharedCacheKeyManager::mEmptySlotBits is no more than 2, versus ~70s
before the CL.
Bug: b/384839847
Bug: b/293297177
Bug: b/237686097
Change-Id: I7c7c91cd0aeacba4145575ac4270b713bf38b742
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310837
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
8f2fbbd1
|
2025-02-27T13:33:06
|
|
Reland "Add GL_BGRA_EXT as a sized renderable format"
This reverts commit 22dfe435daa7c680c07bb8d4f1d98ab765e60ad0.
Reason for revert: Fixed mapping back to BGRA_EXT for GL backend
Original change's description:
> Revert "Add GL_BGRA_EXT as a sized renderable format"
>
> This reverts commit 80093a7d8f850c3ab551ddb4972c2f1f27511433.
>
> Reason for revert: suspect for blocking rolling ANGLE into Chroimum
> https://chromium-review.googlesource.com/c/chromium/src/+/6283973
> https://ci.chromium.org/ui/p/chromium/builders/try/chromeos-amd64-generic-rel-gtest/372754/overview
>
> Original change's description:
> > Add GL_BGRA_EXT as a sized renderable format
> >
> > dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable
> > format. It was apparently always supposed to be, based on the
> > wording of the spec.
> >
> > This CL adds that support and updates expectations, along with a few
> > extra tests.
> >
> > Includes contributions from Robic.Sun@arm.com.
> >
> > Test: angle_end2end_tests, angle_deqp_*_tests
> > Bug: b/42267264
> > Bug: angleproject:394384906
> > Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444
> > Reviewed-by: Geoff Lang <geofflang@chromium.org>
> > Commit-Queue: Cody Northrop <cnorthrop@google.com>
> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
>
> Bug: b/42267264
> Bug: angleproject:394384906
> Change-Id: I64572361cfed33b4ea17eabf278f580471d045c2
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285628
> Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: b/42267264
Bug: angleproject:394384906
Change-Id: I1bd9df904d93fd54286cbfce53fe89db89e842b9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310699
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d39cabbd
|
2025-02-27T15:15:46
|
|
Translator: textureGather* always takes refZ with shadow sampler
Bug: angleproject:349994211
Change-Id: I8337b80bf1d9ecae6943c6f1432b710040081273
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6309579
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ca7e8882
|
2025-02-26T14:39:47
|
|
Account for relaxed precision conversion data loss
1. Add highp precision qualifier for "expect" uniforms
2. Change EXPECT_EQ -> EXPECT_*NEAR when using mediump
Bug: angleproject:391002353
Change-Id: I5a75ec81e622718f989f357fc263ae287c2c7dbc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6306684
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ca8f072e
|
2025-02-13T16:46:30
|
|
Implement EGL_LARGEST_PBUFFER
When EGL_LARGEST_BUFFER is set to true during creating a
EGL pbuffer surface, it requires the largest available pixel buffer
surface when the allocation would otherwise fail. This means if
width/height is bigger than config's maxPbufferWidth/maxPbufferHeight,
it should be clamp to maxPbufferWidth/maxPbufferHeight. An end2end
test is also added.
Bug: angleproject:397315935
Change-Id: Ic160d9693478c87b59ece0a421d3acd5d6699ddc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6277912
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
4d66ff7a
|
2025-02-21T19:21:08
|
|
[gtest] Consume `AssertionResult`s in `Parse_test.cpp`
Wrap each `testing::AssertionResult` in an `EXPECT_TRUE(...)` [0] to
actually check if the assertion passed. The dropped assertion was
revealed [1] by Googletest recently marking `AssertionResult` as
`[[nodiscard]]` [2].
[0]:https://google.github.io/googletest/advanced.html#predicate-assertions-for-better-error-messages
[1]:https://ci.chromium.org/ui/p/chromium/builders/try/linux-chromeos-rel/2296143/overview
[2]:https://chromium.googlesource.com/external/github.com/google/googletest.git/+/3fbe4db9a39291ae8d7a9c5f1d75896bb4c5a18f%5E%21/
Bug: chromium:398298306
Change-Id: I438f817dc6636068664d2bd5bc41b041b867b4c8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6293847
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Jonathan Lee <jonathanjlee@google.com>
|
|
e2dace71
|
2025-02-24T19:21:19
|
|
Revert "Suppress dEQP ASAN failures"
This reverts commit cab0acdf6208e483ac26448de926e3ca0df9dbd1.
Reason for revert: The following roll has landed: https://crrev.com/c/6298534
Original change's description:
> Suppress dEQP ASAN failures
>
> These block upgrading Clang to a new version that detects more problems.
>
> Bug: b/395920316
> Change-Id: Ie07d1fce240741f2572546c86e838f8b16c4950c
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6281031
> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bug: b/395920316
Change-Id: Ibbb5519a91b9ec95fb4dc74328d6fa28b6e79738
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6299712
Auto-Submit: Amirali Abdolrashidi <abdolrashidi@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
25a22dec
|
2025-02-24T14:32:42
|
|
Manual roll VK-GL-CTS from 69ec1790cb7c to ba86fb950043 (18 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/69ec1790cb7c..ba86fb950043
2025-02-21 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-cts-4.6.6
into vk-gl-cts/main
2025-02-21 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.12
into vk-gl-cts/main
2025-02-21 rgarcia@igalia.com Test "remaining array layers" and cube
images with HIC
2025-02-21 javed@igalia.com Add coverage for tess shader IO
2025-02-21 marcin.zajac@cognizant.com Complex acceleration structure
updates
2025-02-21 jbolz@nvidia.com Add tests for VK_NV_cooperative_vector
2025-02-21 syoussefi@google.com Remove last references to DE_NULL
2025-02-21 abdolrashidi@google.com Fix non-zero offset added to nullptr
2025-02-21 zzoon@igalia.com Vulkan Video Decode: Increase
MAX_BOUND_MEMORY
2025-02-21 lionel.g.landwerlin@intel.com Fix incorrect structure type
check
2025-02-21 gleese@broadcom.com Fix test data generation for copy tests
2025-02-21 javed@igalia.com Add tests for differing mutable format
2025-02-21 gleese@broadcom.com Stop querying device address from unbound
buffers
2025-02-21 scerveau@igalia.com video: rename clip description names
2025-02-21 kamil.goras@mobica.com Add test that redeclaring gl_FragDepth
is not permitted in ES
2025-02-21 kamil.goras@mobica.com Fix KHR-GLES31.core.nearest_edge.*
tests that fail with EXT_read_format_bgra formats. If BGRA format and
type 1_5_5_5 are preffered by device use BGRA_EXT and
UNSIGNED_SHORT_1_5_5_5_REV_EXT in ReadPixels and swizzle colors.
2025-02-21 mateusz.bahyrycz@mobica.com Add support for sparse mode for
ray tracing utils
2025-02-21 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.1
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,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: b/398956813
Tbr: yuxinhu@google.com
Change-Id: I8d2de8b6f8671b5cf66d6b4210877ca8f187528b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6298534
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
e3178f0e
|
2025-02-24T14:38:36
|
|
Add AHB clear tests using glClearTexImage
* Add tests to clear AHB images before readback, but using
glClearTexImage() instead of using a framebuffer and glClear()
* AHBClearAppliedViaClearTexImageBeforeReadBack
* AHBTwiceClearViaClearTexImageAppliedBeforeReadBack
Bug: b/223456677
Change-Id: Ic5ad2b5202aa24f38dc1783205900a0dab5125f9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6299797
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
5775a974
|
2025-02-21T11:00:05
|
|
Vulkan: Fix transition to FORIEGN and back in same submission
Image layout transitions are typically automatically handled. In some
cases however, the image layout is specifically "finalized". For
foreign images, the relevant cases are all about the point in time when
the image is being released.
When a foreign image's layout is finalized, a barrier is generated to
transition it to the FOREIGN queue on submission. Previously, an
incorrect assumption was made that after such a point, the VkImage will
no longer be used by any commands.
This was incorrect because of EGL Images, which let the same VkImage
(and ImageHelper) be shared between multiple textures. The following
scenario broke that assumption:
- Texture is bound to the (foreign) EGL image
- Texture is used and deleted
* VkImage's transition back to foreign is cached, but not executed
- Another texture is bound to the same EGL image
- Texture is used
* At this point, the texture is re-acquired from foreign, but it
wasn't released in the first place!
In this change, a vkQueueSubmit is issued after the foreign image's
layout is finalized to make sure the transition back to FOREIGN is
applied.
Bug: angleproject:42263241
Bug: angleproject:42262454
Bug: angleproject:390443243
Bug: chromium:382527242
Change-Id: Ibe3e6d60f282f9fb0eed1deba3325456017c3617
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6292804
Reviewed-by: mohan maiya <m.maiya@samsung.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5e056364
|
2025-02-20T11:38:23
|
|
Ignore other attributes when use EGL_CONFIG_ID to choose config
Per spec, when use EGL_CONFIG_ID in eglChooseConfig, other attributes
should be ignored, so additional attributes should not be inserted in
this case.
Bug: angleproject:396190956
Change-Id: I1170dc5312a9590c972d81f91e3d2140f2145805
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6262970
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
34faa3db
|
2025-02-08T15:17:10
|
|
Fix issue that stride setting is incorrect when rotation is true
When rotateXY is true, stride should increase or decrease
on the Y axis.
Bug: angleproject:395131251
Change-Id: I0f5363c9952ccdf0a036499a9f918853eff7cd10
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6242496
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Auto-Submit: Robic Sun <Robic.Sun@arm.com>
|
|
c21e31a1
|
2025-02-20T17:32:17
|
|
Add handling null input to eglGetProcAddress
* Modified eglGetProcAddress() so it can handle a null input by
returning nullptr.
* Added a test for this case:
* EGLReadinessCheckTest.GetProcAddressNullInput
* Fixed some typos.
Bug: angleproject:397720948
Change-Id: If55223b12831649252e2e06e47abaf8d3546c86f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6289249
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
323c49a3
|
2025-02-20T15:44:08
|
|
Vulkan: Fix swap optimization after staged clear for MSAA
If the MSAA image only had a clear update and the update wasn't going
to be applied to the swapchain image, the clear update was accidentally
dropped because `flushStagedUpdates` wouldn't see the clear update which
is already extracted in `deferredClearValues`.
Test: angle_end2end_tests --gtest_filter=EGLSingleBufferTest.StagedClearResolveOnSwap/*
Bug: angleproject:382006939
Change-Id: I53ae26eeb8a7f38b7758f86bf97982a90b1990dd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285627
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
eb22e1f8
|
2025-02-21T11:44:31
|
|
Roll vulkan-deps from 126c9b378eb7 to f489bd52916f (18 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/126c9b378eb7..f489bd52916f
Also rolling transitive DEPS:
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/e66176c3f685b14dfa83882329e5d02f4e027c9b..104bd85d990155f04f050972374a3502b4631830
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers/+log/09913f088a1197aba4aefd300a876b2ebbaa3391..54a521dd130ae1b2f38fef79b09515702d135bdd
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/9fa14b91414994e2bf4d9509b8efc8071f154991..a80d3b5c505e6541d98003b880ae583bc706bbc9
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/234c4b7370a8ea3239a214c9e871e4b17c89f4ab..952f776f6573aafbb62ea717d871cd1d6816c387
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/087c22a441e5fb8563516b6b515483898c843242..a10e2725f99c333bbc468373159442fe41158039
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,cnorthrop@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: cnorthrop@google.com
Change-Id: Ifb414ab9bbbd524973d4944854649deb0f1714c5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6288472
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3972cfa1
|
2025-02-18T19:52:06
|
|
YUV should support on all the shader stages
* The spec requires all shader stages should support YUV. Therefore,
move YUV related functions out of the switch.
* Add a new end2end test that sampling YUV in the vertex shader.
Bug: angleproject:391919465
Change-Id: I7811d419d5f1461c2499c522a902c3b2149289a1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6263325
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ba174a76
|
2025-02-19T16:35:15
|
|
Vulkan: Bugfix for nullColorAttachmentWithExternalFormatResolve
When nullColorAttachmentWithExternalFormatResolve is VK_TRUE,
* The imageView in VkRenderingAttachmentInfo for dynamic rendering
should be VK_NULL_HANDLE.
* Push YUV resolveImageView as if it is the color attachment to ensure
the coherency between ops, clearValues and attachmentViews for both
dynamic rendering and render pass objects. Then pack the YUV resolve
information first as well.
* Add end2end tests that render and clear YUV with a depth attachment.
Bug: angleproject:395212980
Change-Id: I8b6173b41723ed7dc12359e181791fb1ac22fc41
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6262510
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
f9566385
|
2025-02-06T00:00:00
|
|
Fix GetBooleani_v validation
That entrypoint must require OpenGL ES 3.1.
Fixed: angleproject:394610814
Change-Id: I9ee80d1497afadfdc0d714e49bb97b741ad57b63
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6243878
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
be98f841
|
2024-11-30T02:11:05
|
|
Implicitly end PLS for framebuffer reads and writes
In preparation for removing the PLS allow list, convert more problematic
methods to the new paradigm of implicitly ending PLS instead of
generating errors.
Also simplify the disable logic for framebuffer modifications, and just
blindly disable PLS for framebuffer updates, regardless of whether it's
GL_READ_FRAMEBUFFER or GL_DRAW_FRAMEBUFFER.
Bug: angleproject:40096838
Change-Id: Ie4390a219f5f05ef0a3d00f405d4914592726283
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6077335
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
22dfe435
|
2025-02-20T06:46:07
|
|
Revert "Add GL_BGRA_EXT as a sized renderable format"
This reverts commit 80093a7d8f850c3ab551ddb4972c2f1f27511433.
Reason for revert: suspect for blocking rolling ANGLE into Chroimum
https://chromium-review.googlesource.com/c/chromium/src/+/6283973
https://ci.chromium.org/ui/p/chromium/builders/try/chromeos-amd64-generic-rel-gtest/372754/overview
Original change's description:
> Add GL_BGRA_EXT as a sized renderable format
>
> dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable
> format. It was apparently always supposed to be, based on the
> wording of the spec.
>
> This CL adds that support and updates expectations, along with a few
> extra tests.
>
> Includes contributions from Robic.Sun@arm.com.
>
> Test: angle_end2end_tests, angle_deqp_*_tests
> Bug: b/42267264
> Bug: angleproject:394384906
> Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
> Commit-Queue: Cody Northrop <cnorthrop@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: b/42267264
Bug: angleproject:394384906
Change-Id: I64572361cfed33b4ea17eabf278f580471d045c2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285628
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
80093a7d
|
2025-02-03T08:50:21
|
|
Add GL_BGRA_EXT as a sized renderable format
dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable
format. It was apparently always supposed to be, based on the
wording of the spec.
This CL adds that support and updates expectations, along with a few
extra tests.
Includes contributions from Robic.Sun@arm.com.
Test: angle_end2end_tests, angle_deqp_*_tests
Bug: b/42267264
Bug: angleproject:394384906
Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
cab0acdf
|
2025-02-19T16:22:07
|
|
Suppress dEQP ASAN failures
These block upgrading Clang to a new version that detects more problems.
Bug: b/395920316
Change-Id: Ie07d1fce240741f2572546c86e838f8b16c4950c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6281031
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
d5a0d83a
|
2025-02-14T15:47:06
|
|
CL/VK: Fix addMemoryDependencies RAW barrier
Additionally, remove unused barrier insertion code
in processKernelResources().
Bug: angleproject:380188569
Change-Id: Id9f330410eecf45f94fe77bf072cf6601bd2a9e2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6271135
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
bc40362b
|
2025-02-18T13:24:31
|
|
Add line loop emulation for draw arrays
Bug: angleproject:383356846
Change-Id: I43f4835e17ecb2401418f77555fd70332612e1bf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6090912
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Liza Burakova <liza@chromium.org>
Reviewed-by: Matthew Denton <mpdenton@chromium.org>
|
|
bace6371
|
2025-02-17T15:14:37
|
|
Tests: Add Brotato ANGLE trace
Test: angle_trace_tests --gtest_filter=*brotato
Bug: b/397185288
Change-Id: I3d89d4b073b56efeede42abf5b0f44f8e9bd221a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6277708
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
367541f5
|
2025-02-05T16:45:13
|
|
Capture/Replay: Add multi-capture support to tracer
Multiple captures can now be grabbed by setting the trigger
value to the desired framecount and then resetting it to
zero to trigger a new capture. Captures will be saved in the
current capture.out_dir directory and this should be changed
between captures to keep traces separate.
Note that this feature will not work with apps using
persistent coherent memory, and in these cases the tracer
will exit, preserving the initial, valid trace.
Bug: b/394107532, angleproject:42263521
Change-Id: I9d31d19ec6c3736dbda356405eb91fba2dd5a8d7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6258503
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
c8dc7c08
|
2025-02-13T16:35:05
|
|
CL: Fix typo in cl::BitField's exclude() routine
Ignored passed "other" param.
Bug: angleproject:42266936
Change-Id: Ia616bc7e2d1bfbdd39ed22221157b6aca5529ed2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6265705
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c8049a47
|
2025-02-12T13:21:56
|
|
Tests: Add Tower of Fantasy trace
Test: angle_trace_tests --gtest_filter="*tower_of_fantasy"
Bug: b/389808881
Change-Id: I16a4ab0c12c18d2feb9df41cb0ba5667adb1f161
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6258901
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Mark Łobodziński <mark@lunarg.com>
|
|
7014e9ec
|
2025-02-12T16:42:40
|
|
Further suppress dEQP-GLES2.functional.fragment_ops.blend on WGPU
Only blend.*constant_alpha* were previously suppressed,
but many other tests are flaky on Mac Intel.
Bug: angleproject:370690274
Change-Id: I8618c6251956308fa06fe2739eff5050c9578f2c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6258051
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
688f328f
|
2025-02-12T06:55:55
|
|
Revert "Suppress ImageTestES3 on Pixel 6 Vulkan"
This reverts commit ef2ef107242781000ebe2f4f11839ea233aae01b.
Reason for revert: should be fixed by
https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/9418
Original change's description:
> Suppress ImageTestES3 on Pixel 6 Vulkan
>
> ImageTestES3.ClearYUVAHB
> ImageTestES3.RenderToYUVAHB
>
> Report on Pixel 6 Android 14:
> VUID-VkSubpassDescription2-nullColorAttachmentWithExternalFormatResolve-09336
>
> Suppress temporarily while VUID is being fixed.
>
> Bug: angleproject:395223719
> Change-Id: I52c7fea1058b522badbbd3be5050a01b099d15a7
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6243416
> Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bug: angleproject:395223719
Change-Id: I22b6ccde6444990d31b95771f067a31669ac3aa1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6258049
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7ed5575f
|
2025-02-11T16:21:56
|
|
Tests: Skip monopoly_go on Linux/Intel
* Skipped this trace on Linux/Intel due to failure on the perf bot.
Bug: angleproject:385226328
Change-Id: If1d741fb681027865409c16ebe736c5ce8516ac1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6254465
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
19c5293e
|
2025-02-11T10:28:41
|
|
Tests: fix Swiftshader test instantiation logic
Tests should not be disabled when IsSwiftshaderDevice(), for example
running ANGLE builds without Swiftshader on cuttlefish which has
Swiftshader set up as the GLES driver.
Bug: angleproject:42266725
Change-Id: Id7155c0dfef84a775e558cfc84eb241b727a93a0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6253838
Auto-Submit: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c0d806b4
|
2025-02-10T23:01:33
|
|
CL: OpenCL support for ANGLE Capture/Replay
Implementation of OpenCL Capture/Replay tool in ANGLE.
Brief notes about the change:
- Most meaningful changes for the capture process are
made in src/libANGLE/capture/
- Most meaningful changes for replay are made in
util/capture/ and src/tests/perf_tests/
- Many autogenerated files are changed/added to allow
the capture of OpenCL objects & calls
- The following applications were captured/replayed:
benchmark_model, GeekBench Compute, GeekBench ML,
AI-Benchmark, various OCL CTS tests
- End2end test added to capture_tests.
CapturedTestCL.MultiFrameCL/ES3_Vulkan
Bug: angleproject:383841335
Change-Id: I55fdaa6cd6c7ba740aaa2351e4d29050059d6d1d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6102105
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
e746fb06
|
2025-01-23T13:23:30
|
|
WebGPU: Implement blending
Constant alpha is not handled yet. It needs to be emualted or added
to WebGPU.
Bug: angleproject:370690274
Change-Id: I5f8402f74ab08345b2f02c18e2d43fa39b2479a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6194554
Reviewed-by: Liza Burakova <liza@chromium.org>
Reviewed-by: Matthew Denton <mpdenton@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
9e86d8c0
|
2025-02-05T16:31:22
|
|
Vulkan: Fix VVL due to memory map range
VVL: VUID-VkMappedMemoryRange-size-01390
* Updated BufferBlock::map() so the device memory uses the actually
allocated buffer size.
* To flush and invalidate a mapped memory range (non-coherent), the
memory size is now aligned with nonCoherentAtomSize from the physical
device limits.
* Added an assert to make sure that the mapped size is within the
allocated buffer size range.
* Unskipped ExternalBufferTestES31 cases for Pixel6, except one case
which seems to take a long time and result in timeout.
* BufferDoesNotLeakAHB
Bug: angleproject:394685081
Change-Id: Iddfb45997fed53c5ee99938d9bb57b670550b9a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6238059
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
883f6246
|
2025-01-22T16:36:26
|
|
Add validation for eglSetDamageRegionKHR
Although this is not mentioned in spec, n_rects in eglSetDamageRegionKHR
should be a valid value. It doesn't make sense if it's less than 0.
Refine the validation in ANGLE and also add end2end test.
Bug: angleproject:395482390
Change-Id: Idbde839be85bac927486b7613005f25d54c3d5f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6242903
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d252425d
|
2025-02-06T14:51:36
|
|
Vulkan: Check source image usage flags in copy paths
... instead of the format feature flags. If the source of the copy is
has external format (allowed with glCopy[Sub]TextureCHROMIUM), the
format feature checks are unable to query the format features. However,
the image usage flags already have the required information (whether the
image can be copied from, sampled from, etc).
Bug: chromium:383056998
Change-Id: I2ba8820751eb526ef497a8be724193276fd46160
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6238265
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
0026006d
|
2025-02-10T12:03:40
|
|
Vulkan: Fix missing barrier between dispatch calls
When storage images are used, ANGLE accidentally did not mark the images
as being written to, so subsequent barriers were not produced when
necessary.
Bug: angleproject:352610491
Bug: b/394611669
Change-Id: Idd3e6aa6b90212605594240a533ebaec66850ea9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6249459
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
ef2ef107
|
2025-02-09T10:53:00
|
|
Suppress ImageTestES3 on Pixel 6 Vulkan
ImageTestES3.ClearYUVAHB
ImageTestES3.RenderToYUVAHB
Report on Pixel 6 Android 14:
VUID-VkSubpassDescription2-nullColorAttachmentWithExternalFormatResolve-09336
Suppress temporarily while VUID is being fixed.
Bug: angleproject:395223719
Change-Id: I52c7fea1058b522badbbd3be5050a01b099d15a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6243416
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
aef40167
|
2025-02-07T13:42:34
|
|
Vulkan: Account for padBuffersToMaxVertexAttribStride
... when evaluating maxTextureBufferSize
Bug: angleproject:391002353
Test: KHR-GLES31.core.texture_buffer.texture_buffer_max_size
KHR-GLES32.core.texture_buffer.texture_buffer_max_size
Change-Id: I7f59d642ed5af87fdb0c683189da88b0a70a1122
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6244611
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b5584cfd
|
2025-02-05T15:14:52
|
|
ValidTexLevelDestinationTarget should add external related cases
GL_TEXTURE_EXTERNAL_OES is not documented in OES_EGL_image_external
spec, but we consider that to be an omission in the spec.
Bug: angleproject:394380758
Change-Id: Idb5523c173ae0a5910af97639dadff3c5adf9fdf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6232504
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
2ab36882
|
2024-09-16T14:28:49
|
|
CL/VK: Add fillBuffer staging/transfer routine
Bug: angleproject:377545840
Change-Id: I90f6896f96af25d7776a36595930b81af8c1141b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6237414
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
|
|
eaf06ea7
|
2025-02-06T13:58:07
|
|
Vulkan: Bugfix in resolvePrecisionMismatch(...)
Early-return if a varying is not active in either the front or back
shader
Bug: angleproject:386749841
Test: GLSLTest.MismatchedInactiveVarying*
Change-Id: Ie0c6dfd6616afcb94bec043d36d4f8188df8abb3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6239031
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
9f8d7cc2
|
2025-01-23T13:27:19
|
|
WebGPU: Stream incompatible vertex and index data.
Support reading back index and vertex buffers to stream incompatible
source data. For now this includes:
* Non-multiple-of-4 stride vertex data
* Stride not a multiple of the type size
* Unsigned byte indices
Fix fallback formats so that all GLES formats have a fallback.
Fix CopyToFloatVertexData writing the alpha channel as Float32One
with a static_cast which converted Float32One (an integer) to a
float instead of bit-casting.
Bug: angleproject:368602384
Change-Id: I7eb1ba7ad1ec4292060c18de22f5948136cbb0a3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6194556
Reviewed-by: Liza Burakova <liza@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0790b50d
|
2025-02-07T11:15:11
|
|
Android: Sleep after orientation change in EGL test
In each of the EGLPreRotation* tests that change dislay orientation,
we have a sleep that gives the Android device time to react.
A new test was added that didn't include the sleeps and is causing
flaky asserts based on how it got sharded for testing.
This CL adds the sleeps, mirroring other tests.
Test: EGLPreRotationSurfaceTest.CheckSurfaceCapabilities
Bug: angleproject:395110957
Change-Id: If2a959d69ba4f4b4ed0f6a6fbffb94762174966d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6244919
Auto-Submit: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d4083c79
|
2025-01-31T15:06:36
|
|
Metal: Make ObjCPtr available to all modules
Move ObjCPtr implementation to src/common/ObjCPtr.h,
angle::ObjCPtr so that it's available also outside libANGLE.
Bug: angleproject:393263506
Change-Id: I8ecd5632c7ae33ef4b409fc820fad229e91bc0ab
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6219318
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
4e5f2ca3
|
2025-01-31T14:30:05
|
|
Metal: Rewrite AutoObjCPtr as ObjCPtr
Rewrite without WrappedObject base class, the base class only
convolutes things and does not help. This way the class can be
moved upwards in the software layers in subsequent commits.
Fix the class so that it can be used with ObjCPtr<T> and ObjCPtr<id<P>>
signatures, to resemble other smart pointers.
Remove the Auto prefix, ObjCPtr should be relatable to other smart
pointers such as unique_ptr.
Bug: angleproject:393263506
Change-Id: Ia5a5728514b7f9182c2ec8380c04716e8b9d2351
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6219317
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
e9cda7f6
|
2025-02-06T08:01:49
|
|
Roll VK-GL-CTS from 48e7f3020f52 to 1177f7b7d556 (5 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/48e7f3020f52..1177f7b7d556
Includes manual merge to remove GN reference to deDefs_kc_cts.h
2025-02-04 lorenzo@khronosgroup.org Remove all references to KC-CTS and
GTF
2025-02-04 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.1
into vk-gl-cts/main
2025-02-04 elima@igalia.com Add VK_KHR_video_maintenance2 tests
2025-02-04 lorenzo@khronosgroup.org Update external sources and use
Vulkan 1.4.307
2025-02-04 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.1
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,cnorthrop@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: cnorthrop@google.com
Change-Id: I881df1f09ca98c892a485c5a8368c3f6eda390f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6237566
Reviewed-by: Solti Ho <solti@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
93e99da3
|
2025-02-05T11:23:50
|
|
Vulkan: Fix bugs with varying precision fixer
This transformation creates new variables and turns the original ones
Private. There were a few bugs where some transformations referred to
the replaced id (larger than the original index bound) and had wrong
look up (where e.g. they would cache something based on the original id,
then try to look it up with the replaced id).
This change makes it such that where needed, both the old and new ids
are given to the various transformations, so they can look up with the
old id, but output instructions with the replaced id.
Bug: angleproject:386749841
Bug: b/394299327
Change-Id: Ie6b3c3445c440417cbbffdd849a036abfc504fe2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235664
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: mohan maiya <m.maiya@samsung.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
82e25a32
|
2025-02-03T15:07:33
|
|
Make all " < 0" error messages consistent
Use the form:
Error is due to reason: <error message>
Bug: angleproject:392938089
Change-Id: I9e72858cf76a46ab874ffc211afdae1eb93ca05d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6225600
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
da837830
|
2025-01-30T15:37:56
|
|
CL: Fix device queue query validation for 3.0
Was missing 3.0 check for device queue size.
Since device queue support is optional for
3.0, device queue query (CL_QUEUE_SIZE) needed
device queue support. Adding validation check
for that here.
Bug: angleproject:42267011
Change-Id: Ibc1d7e00f78df01f131f69047b1390b02b5fa780
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6220894
Reviewed-by: Gowtham Tammana <g.tammana@samsung.com>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
9c6af5ce
|
2025-02-04T22:50:01
|
|
Vulkan: Fix crash in SPIR-V transform with varying precision fix
Bug: angleproject:386749841
Change-Id: I5743eb049dde6c8a093b175e857251bad9b2bc9a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6232948
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
aa94da02
|
2025-02-04T12:41:36
|
|
Revert "Vulkan: Bugfix in SPIRV entrypoint transformation"
This reverts commit 9975e80b9d98a2158ae859b3f4eff7340baa540d.
Reason for revert: Crashes on platforms with varyingsRequireMatchingPrecisionInSpirv
Original change's description:
> Vulkan: Bugfix in SPIRV entrypoint transformation
>
> Perform varying precision fixer transformation before
> other shader-stage-specific transforms that could
> potentially modify the interfaceList.
>
> Also enhance EXTBlendFuncExtendedDrawTest by enabling
> additional config with VaryingsRequireMatchingPrecisionInSpirv
> feature enabled
>
> Bug: angleproject:386749841
> Change-Id: Ife4a2f932415296f1565527e50a2b8646cd7697d
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6207741
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Change-Id: I07064136f962a7d73ce5c80289da300d474faa22
Test: professional_baseball_spirits trace
Bug: b/394299327
Bug: angleproject:386749841
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6227993
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
c2cb1603
|
2025-02-03T18:21:10
|
|
Perf tests: change fps limiter method to timestamp based
Instead of using previous frames, target start_time + N * delta.
This will result in a smoother playback when there is no hiccups. In
case of a big hiccup, replay will be catching up by submitting frames
without sleeps until it hits the timestamp, then submit at the target
rate again.
Bug: b/376300037
Change-Id: I481f1325867d53e911acd2d381bfda4c94adefc6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6226746
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|