|
4a5d47df
|
2024-04-04T16:41:46
|
|
Test that binary is not saved after being loaded
Bug: angleproject:8297
Change-Id: I2e7e2ffb8fff37aba828d25825fe7ab3262406ac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5426396
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
f8bcfc3f
|
2024-04-04T16:03:32
|
|
Tests: avoid double logging to stderr from WARN()
LoggingAnnotator::logMessage calls both plat->logWarning()
(when plat is not nullptr)
and gl::Trace(), and both log the message to stderr
gl::Trace only logs when trace or asserts are enabled, so exclude that
case from TestPlatform_logWarning.
Bug: None
Change-Id: I1649fcc9046f59cbd8f4cfef6be809d3218eddc9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5426531
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3b650ffa
|
2024-03-19T09:53:06
|
|
Metal: Assert while using gl_VertexID as ivec
Metal [vertex_id] is uint while gl_VertexID is int. Replacing
gl_VertexID with gl_VertexIDMetal without rewrites of the expressions
would cause invalid expressions.
Fix by casting uint kgl_VertexIDMetal to int kgl_VertexID instead
of replacing variable during compile.
Bug: angleproject:8597
Change-Id: I76acdb2a0ab5982aa05181175925b3359068e901
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5376498
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
103c1b53
|
2024-03-29T14:37:23
|
|
Vulkan: Drop MSRTT emulation dependency on independentResolveNone
Usage of VK_RESOLVE_MODE_NONE was removed in [1], but dependency to this
property was accidentally added in [2].
[1]: https://chromium-review.googlesource.com/c/angle/angle/+/2743666
[2]: https://chromium-review.googlesource.com/c/angle/angle/+/3353895.
Bug: angleproject:4836
Change-Id: I25028b5d343686edd794acdac3714c4a6cb5fa17
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5407073
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
57eded36
|
2024-04-03T23:02:39
|
|
Vulkan: Fix off-by-one error in compute-based stencil blit
The coordinates used for sampling were calculated based on pixel's
top-left (integer) coordinates and used with a NEAREST sampler. This
resulted in two bugs:
- When X was flipped, the bounds check rejected the first column
- The sampling could pick the wrong pixel as the on-the-edge coordinates
could map to either of 4 pixels that share that corner.
This change moves the sampling coordinates to the pixel's center.
Bug: angleproject:8652
Change-Id: I0b54fa0bad366f52f8e6c17bb0054fa373af8b5c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5420834
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
58ecad7a
|
2024-04-03T23:12:05
|
|
Remove assertion that program is not linking when bound/unbound
It's valid to link a program, let it happen in parallel and in the
meantime bind and unbind the program in other contexts. The add/release
ref functions were asserting that link is resolved, which is not true in
that case.
Bug: angleproject:8647
Change-Id: I784b5adbb04f062752a873deb1e7a4aaf4527e33
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5420990
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
ab6dd5b2
|
2024-03-07T14:19:58
|
|
Avoid asserts when const folding binary ops on void variables
Fix asserts for example with / and % during constant folding when
the operands might be voids.
Bug: angleproject:8592
Change-Id: I22275642dbcdf9066940d3a94114e8daa5cbbe41
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5416376
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
304ea14a
|
2024-04-01T17:24:10
|
|
Start Mac Intel experiment
Bug: chromium:326904538, angleproject:8628
Change-Id: Ib453b4ba0e582d348ec0618b7a5b9c0e69efb86e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5410986
Auto-Submit: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
64cfbb68
|
2024-04-02T13:22:09
|
|
GL: Fix MultisampledRenderToTexture tests and expectations
Some MSRTT tests were failing on the GL backend due to exact GL_EQUAL
depth tests, others were marked as skipped on all of Android due to old
device issues.
Update the Android expectations for these tests.
Bug: angleproject:8642
Change-Id: I2aad2637773967102a6172fd0a8ae2cb58a420ee
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5413775
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@google.com>
|
|
85b3e967
|
2024-04-01T14:31:17
|
|
Fail link and validation of invalid tessellation program
The GL_EXT_tessellation_shader spec says -
The tessellation control and evaluation shaders are both optional.
If neither shader type is present, the tessellation stage has no
effect. However, if either a tessellation control or a tessellation
evaluation shader is present, the other must also be present.
Fail link and validation if a program contains TCS or TES shader but not
both.
Bug: angleproject:3572
Tests: KHR-GLES32.core.tessellation_shader.single.xfb_captures_data_from_correct_stage
Change-Id: I6799f101a186f3bfae738df442e9aeee691fd91a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5410646
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
5d294e6e
|
2024-04-01T11:32:17
|
|
Manual roll VK-GL-CTS from 08c8f6c7aa44 to caf989d22e07 (30 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/08c8f6c7aa44..caf989d22e07
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/332383430
Tbr: yuxinhu@google.com
Change-Id: If0518d4db878990405bf5813ca456eafae0d9970
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5410639
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
18797bf2
|
2024-03-28T00:00:00
|
|
Metal: Handle incompatible attachments
Metal runtime fails if the attachment pixel
formats are not compatible with the program
outputs or if the corresponding render pass
and pipeline pixel formats do not match.
Added Metal-specific state tracking and forced
draw framebuffer syncronization for such cases.
Cleaned up and reduced Framebuffer::setAttachmentImpl.
Fixed: angleproject:5233
Change-Id: I4ee01889debe0e3cce54635e6cba62dbfdc02722
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5377813
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Quyen Le <lehoangquyen@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
e85bc345
|
2024-03-29T13:43:46
|
|
Account for disableProgramCaching
Blob cache tests rely on implicit caching of programs. Account for
disableProgramCaching frontend feature when saving and retrieving
from cache. Also skip EGLBlobCache tests if the feature is enabled.
Bug: angleproject:8297
Change-Id: Ib101eb5712deb7c04dd19c7092f93a6c6b42cd40
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5408103
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
76113ffb
|
2024-03-27T20:35:46
|
|
Manual roll VK-GL-CTS from fe6e7bd09f53 to 08c8f6c7aa44 (1 revision)
Manual roll requested by solti@google.com
Some local updates were made to the roll, see https://anglebug.com/8636 for
details.
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/fe6e7bd09f53..08c8f6c7aa44
2024-03-21 marcin.hajder@mobica.com Port KC-CTS tests to VK-GL-CTS
(framebuffer_blit), PART 2
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 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
Test: presubmit
Bug: angleproject:8636
Bug: b/331390622
Change-Id: I4e754b2a91f8a321e709842a8cf146bbf54a2199
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5402981
Auto-Submit: Solti Ho <solti@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
076a5059
|
2024-03-28T10:15:42
|
|
Remove test suppression of dEQP-EGL*robustness on Pixel 6
Previoustly the tests dEQP-EGL*robustness*out_of_bounds_non_robust*
were skipped on Pixel 6, because the test is intentionally testing
in GLES, shader write out of bounds access results in undefined
behavior. In ANGLE vulkan backend, shader write out-of-bounds
access results in vulkan device lost on Pixel 6, which is a valid
undefined vulkan behavior according to spec. However, VVL is
reporting errors when ANGLE cleans up vulkan resources, because
they haven't finished execution on GPU.
With below VVL changes landed:
https://github.com/KhronosGroup/Vulkan-ValidationLayers/commit/9452b82820276eb3eb2102bf49b72e59916d3ea7
https://github.com/KhronosGroup/Vulkan-ValidationLayers/commit/af257b1c55f312b550addeca091265c249c09cf3
VVL now checks if there is a vulkan device lost upon resource
clean-up. If the vulkan device is lost, even if the resource
has not finished execution, treat resource clean up as a safe
vulkan operation and do not report VVL error.
Bug: b/289544394
Change-Id: I9d3532d4d6b0c3a1cdfd8837e13b4527d0dfbd7a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5403212
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuxin Hu <yuxinhu@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
84eb4f73
|
2024-03-26T15:44:48
|
|
Add a few use-after-resolve depth/stencil framebuffer tests
Bug: angleproject:7551
Change-Id: I42c1a6b8fe8714fd9c1568d216b12ee9a001aba5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5399137
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
a0fa06f6
|
2024-03-25T14:46:56
|
|
Translator: Disallow samplers in structs in interface blocks
As disallowed by the spec:
> Types and declarators are the same as for other uniform variable
> declarations outside blocks, with these exceptions:
>
> * opaque types are not allowed
Bug: chromium:328859176
Change-Id: Ib94977860102329e520e635c3757827c93ca2163
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5391986
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0e9254bd
|
2024-03-25T16:37:51
|
|
Vulkan: Optimize color invalidates
By not flushing the render pass when there is an invalidate.
Previously, the tracking of invalidation, write to attachments,
management of load/store ops, and whether image contents are defined or
not have all been unified between color and depth/stencil images.
As such, it is possible to not close the render pass when a color image
is invalidated just as is not done for depth/stencil images. Together
with the optimization to resolve attachments [1], it is now finally
possible to efficiently do MSAA rendering with ANGLE.
Note that the optimization to use resolve attachments for depth/stencil
is not yet implemented. For color only, the perf test added in [2]
shows the following improvement on Pixel 6:
- Single sampled rendering: ~2.73ms
- Resolve + invalidate (before optimizations): ~3.54ms
- Resolve + invalidate (after this change): ~2.85ms
[1]: https://chromium-review.googlesource.com/c/angle/angle/+/5388492
[2]: https://chromium-review.googlesource.com/c/angle/angle/+/5392548
Bug: angleproject:7551
Change-Id: I008adf9f53df97ab464b0a0399f0b312bf4d0d3f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5391905
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3c8b3f6b
|
2024-03-26T17:07:39
|
|
Start Mac AMD experiment
Bug: chromium:327017900, angleproject:8628
Change-Id: I7b108c724eaa6f5ff7b8098c256c6e4a47578b5e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5399719
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
9475ac40
|
2023-11-15T10:25:06
|
|
Vulkan: Make efficient MSAA resolve possible
Prior to this change, using a resolve attachment to implement resolve
through glBlitFramebuffer was done by temporarily modifying the source
FramebufferVk's framebuffer description. This caused a good deal of
complexity; enough to require the render pass to be immediately closed
after this optimization.
The downsides to this are:
- Only one attachment can be efficiently resolved
- There is no chance for the MSAA attachment to be invalidated
In this change, resolve attachments that are added because of
glBlitFramebuffer are stored in the command buffer, with the
FramebufferVk completely oblivious to them. When the render pass is
closed, either the FramebufferVk's original framebuffer object is used
(if no resolve attachments are added) or a temporary one is created to
include those resolve attachments.
With the above method, the render pass is able to accumulate many
resolve attachments as well as have its MSAA attachments be invalidated
before it is flushed.
For a FramebufferVk that is resolved in this way, there used to be two
framebuffers created each time and thrown away as the code alternated
between starting a render pass without a resolve attachment and then
closing with one. With this change, there is now one framebuffer
(without resolve attachments) that is cached in FramebufferVk (and is
not recreated every time), and only the framebuffer with resolve
attachments is recreated every time.
Ultimatley, when VK_KHR_dynamic_rendering is implemented in ANGLE, there
would be no framebuffers to create and destroy, and this change paves
the way for that support too.
WindowSurfaceVk framebuffers are still imagefull. Making them imageless
adds unnecessary complication with no benefit.
-----------------
To achieve efficient MSAA rendering on tiling hardware, applications
should do the following:
```
glBindFramebuffer(GL_FRAMEBUFFER, msaaFBO);
// Clear the framebuffer to avoid a load
// Or invalidate, if not needed to load:
// glInvalidateFramebuffer(GL_DRAW_FRAMEBUFFER, ...);
glClear(...);
// Draw calls
// Resolve into the single sampled framebuffer
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, resolveFBO);
glBlitFramebuffer(...);
// Immediately discard the contents of the MSAA buffer, to avoid store
glInvalidateFramebuffer(GL_READ_FRAMEBUFFER, ...);
```
The above would translate to the following Vulkan render pass:
- MSAA LOAD_OP_CLEAR/DONT_CARE
- MSAA STORE_OP_DONT_CARE
- Resolve LOAD_OP_DONT_CARE
- Resolve STORE_OP_STORE
This makes sure the MSAA data doesn't leave the tile memory and greatly
reduces bandwidth usage.
Once anglebug.com/4892 is fixed, this would also allow the MSAA image
to never be allocated either.
Bug: angleproject:7551
Bug: angleproject:8625
Change-Id: Ia9f4d20863d76a013d8495033f95c7b39f77e062
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5388492
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8e7d3379
|
2024-03-25T22:09:44
|
|
Vulkan: Add a perf test for multisample resolve + invalidate
Bug: angleproject:7551
Change-Id: I1d45e720a6273650aaebd98aade9b363a804e886
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5392548
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
856054c4
|
2024-03-26T16:32:41
|
|
Trace tests: fix run_angle_android_test.py --prepare-only
Bug: b/292249127
Change-Id: Ied2b65c84f6cebe4d6d75d91910f9f124288e487
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5399138
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Roman Lavrov <romanl@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
93da22dd
|
2024-03-22T16:10:51
|
|
use_cxx17=true in arm debug compile
Android rolls currently require C++17,
set ANGLE to C++17 to prevent Android roller breakage
Bug: b/330910097
Change-Id: I94ef05f91a3532a42876e27b296342552aede974
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5387270
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
eacd6acd
|
2024-03-22T05:38:13
|
|
Add RenderTargetCache to FramebufferWgpu
...and update it based on dirty bits.
Bug: angleproject:8582
Change-Id: If227392b24b3fc649d48cb1bce1144400cd98d70
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5386900
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Liza Burakova <liza@chromium.org>
Commit-Queue: Matthew Denton <mpdenton@chromium.org>
|
|
c7985668
|
2024-03-19T15:52:01
|
|
Add a few use-after-resolve framebuffer tests
Bug: angleproject:7551
Bug: b/330697097
Change-Id: I0006d80edc0162182b2da9cea2c0e719f90fa8e0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5376619
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
e996d187
|
2024-03-19T13:29:24
|
|
Use TIntermRebuild for SeparateStructFromFunctionDeclarations
This now handles the case of nested function calls to functions that
define a struct in the return type all resolving to the correct
re-written function.
Bug: chromium:329271490
Change-Id: I43904e09ec9c284c1b51c09b2caaab253f7b29b9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5376613
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2d4a027d
|
2024-03-20T12:07:45
|
|
Tests: Add Poppy Playtime Trace
Test: angle_trace_tests --gtest_filter=TraceTest.poppy_playtime
Bug: b/330861486
Change-Id: Ifd18ec32bce1db585bb4d284a39ed78a94932d8f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5387536
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
318e5e02
|
2024-03-24T08:17:56
|
|
Vulkan: Update EGL_EXT_buffer_age implementation
1. Buffer age is always 1 when swap behavior is EGL_BUFFER_PRESERVED.
2. WindowSurfaceVk::getBufferAge no longer acquires a swapchain image.
See commit: b46cf6989f6fe8db5f0759001f633681a96fadde
3. It is valid to pass attributes of eglQuerySurface API to
eglQuerySurface64KHR API
4. Add deadlock fix to eglQuerySurface64KHR
Bug: angleproject:3529
Bug: angleproject:6851
Tests: EGLLockSurface3Test.QuerySurfaceAndQuerySurface64Parity*
Tests: EGLBufferAgeTest.QueryBufferAge*
Change-Id: Idf3c4fc08364f671fb02e99111be2beb7a1d9f3d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5389461
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8482f44f
|
2024-03-25T12:21:48
|
|
android_helper cleanup: Inline test package name
We continue using a single package name, inlining makes code easier to
follow
Bug: b/331179435
Change-Id: I45e42ba313a3cfaf97f00e1aeef4dcc3b5f9aedf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5391983
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
3ed8c5f4
|
2024-03-07T16:05:26
|
|
Android: workaround broken run-as due to /data permissions
Bug: b/331179435
Change-Id: I4617b1724e08ad8ab24a91ac1378132fb6641be0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5354107
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
0197826b
|
2024-03-22T14:42:34
|
|
Revert "Add conversion operator from ImmutableString to std::string"
This reverts commit 8c0dae388bccb00f11cd94d641d719cc68325826.
Reason for revert:
Breaks Android rolls:
external/angle/src/compiler/translator/ImmutableString.h:103:15: error: constexpr function's return type 'std::string' (aka 'basic_string<char, char_traits<char>, allocator<char>>') is not a literal type
103 | constexpr operator std::string() const { return std::string(data(), length()); }
| ^
external/libcxx/include/string:4332:64: note: 'basic_string<char>' is not literal because it is not an aggregate and has no constexpr constructors other than copy or move constructors
4332 | _LIBCPP_EXTERN_TEMPLATE(class _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS basic_string<char>)
Original change's description:
> Add conversion operator from ImmutableString to std::string
>
> Also use the operator in a couple of places. Sometimes saves a strlen.
>
> Bug: angleproject:8614
> Change-Id: I429f3ac02af04b568ac7d1adf22ab65e5007fbda
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5372728
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
> Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
> Commit-Queue: Geoff Lang <geofflang@chromium.org>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: angleproject:8614
Change-Id: I46963686f9506f7029e164250b1bf81f8ab2c519
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5388255
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
ad013650
|
2024-03-22T03:42:44
|
|
Revert "Rename LinkSubTask -> PostLinkTask"
This reverts commit 00eb6edba074a22389b09990ab856adfd417dd64.
Reason for revert: Sub tasks are not actually post-link tasks for all
the other backends (other than Vulkan), but they are a real part of
the link job.
Original change's description:
> Rename LinkSubTask -> PostLinkTask
>
> This is a renaming change, no behavior changes are expected.
>
> Bug: angleproject:8297
> Change-Id: I734c7959f5ed6db2447853cc6f6256e3c8e86213
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5382224
> Commit-Queue: mohan maiya <m.maiya@samsung.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: angleproject:8297
Change-Id: Iaebf9d165d810344bfc524042206ca427d270034
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5386432
Reviewed-by: Shahbaz Youssefi <syoussefi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8899e18d
|
2024-03-21T14:30:50
|
|
Add skip conditions for a few tests
1. Skip EGLBlobCacheTest if `CacheCompiledShader` feature is disabled
2. Skip RGBAHBUploadDataColorspace test if allocating RGB8 AHB with
requested usage flag is not supported
Bug: angleproject:7036
Bug: b/298037344
Change-Id: I07c48df327a879c1d46873f47bb5bd305e07a758
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5386030
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8c0dae38
|
2024-03-15T16:09:04
|
|
Add conversion operator from ImmutableString to std::string
Also use the operator in a couple of places. Sometimes saves a strlen.
Bug: angleproject:8614
Change-Id: I429f3ac02af04b568ac7d1adf22ab65e5007fbda
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5372728
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
00eb6edb
|
2024-03-20T06:49:38
|
|
Rename LinkSubTask -> PostLinkTask
This is a renaming change, no behavior changes are expected.
Bug: angleproject:8297
Change-Id: I734c7959f5ed6db2447853cc6f6256e3c8e86213
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5382224
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
042b430c
|
2024-03-13T10:45:06
|
|
Support the wgpu backend on Windows
Recurse deps into third_party/dawn will pull in the dxc deps needed to
build on Windows.
MSVC compile is currently broken on the "confirm no-op" step because no
webgpu_dawn.dll.lib is generated.
Bug: angleproject:8473
Change-Id: I7cd2df99dd068a9b7959d9cc8dc697ebd0c42a98
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5366768
Reviewed-by: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Liza Burakova <liza@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
96f66089
|
2024-03-19T14:08:04
|
|
Tests: Update color values for Unsized/Unsigned in texture tests
Some of the values don't make sense, appear to be copy/paste errors.
Likely pass on non-Android due to sizable error tolerance.
Also turn on float tests that just work.
Test: angle_end2end_tests --gtest_filter=Texture*Copy*/ES3_Vulkan
Bug: angleproject:4756
Bug: angleproject:8620
Change-Id: I3fffb7859421bc179e3e5dd6bca14b4e2ac378ee
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5381400
Reviewed-by: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
f8b18577
|
2024-03-15T16:31:02
|
|
Set the Dawn proc addresses at in DisplayWgpu initialization
This allows the display to fully initialize and some tests to pass!
Bug: angleproject:8485
Change-Id: I83176c572793ba8a6992264e873f7d24d3698d35
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5372136
Reviewed-by: Matthew Denton <mpdenton@chromium.org>
Reviewed-by: Liza Burakova <liza@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
7047d820
|
2024-03-19T17:17:22
|
|
win-trace (capture_replay_tests): cleanup after replay
Windows builds produce a large .pdb file for each test, e.g.
ClearTest_ClearIsClamped_ES2_Vulkan_SwiftShader.dll.pdb
As there are many tests, these accumulate and run out of disk
Remove files that have test labels in the filename, in the case above
that's 'ClearTest_ClearIsClamped_ES2_Vulkan_SwiftShader'
Bug: angleproject:8621
Change-Id: I995b561409f7ae714da81d246e7b7152d936e9d2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5378178
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
Auto-Submit: Roman Lavrov <romanl@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
914fe61b
|
2024-03-15T13:20:49
|
|
Vulkan: Rename RendererVk.* to vk_renderer.*
Done in a separate CL from the move to namespace vk to avoid possible
rebase-time confusion with the file name change.
Bug: angleproject:8564
Change-Id: Ibab79029834b88514d4466a7a4c076b1352bc450
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5370107
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
7506a0cd
|
2024-03-18T11:34:25
|
|
Tests: update QDC expectations after crrev.com/c/5372826
Bug: b/329286011
Change-Id: I5e5d94d9b6279a712d7d79197cd82c0cda2a71dd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5377286
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
490ff869
|
2024-03-14T00:00:00
|
|
Always redeclare clip/cull distance built-ins
When clip or cull distance built-in arrays are implicitly
sized, various pruning passes may produce an inconsistent
AST state thus causing translation or linking failures.
Adjusted the dedicated validation pass to inject
an explicit declaration thus bypassing the issue.
Additional updates:
* Ensured that API clip distance state emulation is
applied when a variable is declared but not assigned
* Reverted previous clip/cull distance related changes to
TIntermBinary::hasSideEffects as they are redundant now
* Fixed failing AST validation for MSL varying emulation
* Aligned linking error messages with the specifications
* Updated tests and cleaned-up obsolete code
Fixed: angleproject:8591
Change-Id: Ic8cfaf37778b8532bbab32ab998d5350b85d67ef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5372714
Reviewed-by: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
afbfebca
|
2024-03-15T21:09:25
|
|
Reland "Manual roll VK-GL-CTS from 87353392d2d2 to ec9827528085 (9 revisions)"
This is a reland of commit 8080a736f13854f806cb115e6ab78a8f4f33d08e
Original change's description:
> Manual roll VK-GL-CTS from 87353392d2d2 to ec9827528085 (9 revisions)
>
> Manual roll requested by abdolrashidi@google.com
>
> * Added common source files for TextureLodBasicTests.
> * Suppressed failing tests that have been newly enabled in this roll.
>
> https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/87353392d2d2..ec9827528085
>
> 2024-03-15 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.10
> into vk-gl-cts/main
> 2024-03-15 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkansc-cts-1.0.2
> into vk-gl-cts/main
> 2024-03-14 piotr.byszewski@mobica.com Add shader interface tests for
> array of structs
> 2024-03-14 rgarcia@igalia.com Make maintenance5 basic_draw cases more
> interesting
> 2024-03-14 rgarcia@igalia.com Make customBorderColors mandatory for
> VK_EXT_custom_border_color
> 2024-03-14 kamil.goras@mobica.com Re-enable tests
> dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_out_of_bounds*
> 2024-03-14 kamil.goras@mobica.com Re-enable tests
> dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.*
> 2024-03-14 marcin.hajder@mobica.com Port KC-CTS tests to VK-GL-CTS
> (sgis_texture_lod_basic), PART 3
> 2024-03-14 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.8
> 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 abdolrashidi@google.com,angle-team@google.com on the revert to
> ensure that a human
> is aware of the problem.
>
> To file a bug in ANGLE:
> https://bugs.chromium.org/p/angleproject/issues/entry
>
> To report a problem with the AutoRoller itself, please file a bug:
> https://issues.skia.org/issues/new?component=1389291&template=1850622
>
> Documentation for the AutoRoller is here:
> https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
>
> Bug: angleproject:8615
> Tbr: abdolrashidi@google.com
> Change-Id: I72634c743fd43d0b4fa901f6d644802c56ad2a3a
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5375112
> Commit-Queue: Roman Lavrov <romanl@google.com>
> Reviewed-by: Roman Lavrov <romanl@google.com>
> Auto-Submit: Amirali Abdolrashidi <abdolrashidi@google.com>
Bug: angleproject:8615
Change-Id: I9f01e30f9c261a3eb27afe1fa8d5c2b14c8115a2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5377282
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
92b8fc68
|
2024-03-18T14:41:54
|
|
Revert "Manual roll VK-GL-CTS from 87353392d2d2 to ec9827528085 (9 revisions)"
This reverts commit 8080a736f13854f806cb115e6ab78a8f4f33d08e.
Reason for revert: Broke Android roller - possibly because .gitmodules wasn't updated?
"""
The roller failed to create a CL with:
failed to roll to 8080a736f138. Conflicts in .gitmodules
third_party/VK-GL-CTS/src
"""
Original change's description:
> Manual roll VK-GL-CTS from 87353392d2d2 to ec9827528085 (9 revisions)
>
> Manual roll requested by abdolrashidi@google.com
>
> * Added common source files for TextureLodBasicTests.
> * Suppressed failing tests that have been newly enabled in this roll.
>
> https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/87353392d2d2..ec9827528085
>
> 2024-03-15 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.10
> into vk-gl-cts/main
> 2024-03-15 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkansc-cts-1.0.2
> into vk-gl-cts/main
> 2024-03-14 piotr.byszewski@mobica.com Add shader interface tests for
> array of structs
> 2024-03-14 rgarcia@igalia.com Make maintenance5 basic_draw cases more
> interesting
> 2024-03-14 rgarcia@igalia.com Make customBorderColors mandatory for
> VK_EXT_custom_border_color
> 2024-03-14 kamil.goras@mobica.com Re-enable tests
> dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_out_of_bounds*
> 2024-03-14 kamil.goras@mobica.com Re-enable tests
> dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.*
> 2024-03-14 marcin.hajder@mobica.com Port KC-CTS tests to VK-GL-CTS
> (sgis_texture_lod_basic), PART 3
> 2024-03-14 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.8
> 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 abdolrashidi@google.com,angle-team@google.com on the revert to
> ensure that a human
> is aware of the problem.
>
> To file a bug in ANGLE:
> https://bugs.chromium.org/p/angleproject/issues/entry
>
> To report a problem with the AutoRoller itself, please file a bug:
> https://issues.skia.org/issues/new?component=1389291&template=1850622
>
> Documentation for the AutoRoller is here:
> https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
>
> Bug: angleproject:8615
> Tbr: abdolrashidi@google.com
> Change-Id: I72634c743fd43d0b4fa901f6d644802c56ad2a3a
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5375112
> Commit-Queue: Roman Lavrov <romanl@google.com>
> Reviewed-by: Roman Lavrov <romanl@google.com>
> Auto-Submit: Amirali Abdolrashidi <abdolrashidi@google.com>
Bug: angleproject:8615
Change-Id: I546c8d196bc089b7f92a8c1fa1a27ef358efa1e3
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5374650
Commit-Queue: Roman Lavrov <romanl@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
8080a736
|
2024-03-15T21:09:25
|
|
Manual roll VK-GL-CTS from 87353392d2d2 to ec9827528085 (9 revisions)
Manual roll requested by abdolrashidi@google.com
* Added common source files for TextureLodBasicTests.
* Suppressed failing tests that have been newly enabled in this roll.
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/87353392d2d2..ec9827528085
2024-03-15 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.10
into vk-gl-cts/main
2024-03-15 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkansc-cts-1.0.2
into vk-gl-cts/main
2024-03-14 piotr.byszewski@mobica.com Add shader interface tests for
array of structs
2024-03-14 rgarcia@igalia.com Make maintenance5 basic_draw cases more
interesting
2024-03-14 rgarcia@igalia.com Make customBorderColors mandatory for
VK_EXT_custom_border_color
2024-03-14 kamil.goras@mobica.com Re-enable tests
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_out_of_bounds*
2024-03-14 kamil.goras@mobica.com Re-enable tests
dEQP-GLES2.functional.fragment_ops.depth_stencil.stencil_ops.*
2024-03-14 marcin.hajder@mobica.com Port KC-CTS tests to VK-GL-CTS
(sgis_texture_lod_basic), PART 3
2024-03-14 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.8
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 abdolrashidi@google.com,angle-team@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: angleproject:8615
Tbr: abdolrashidi@google.com
Change-Id: I72634c743fd43d0b4fa901f6d644802c56ad2a3a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5375112
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
Auto-Submit: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
58065d07
|
2024-03-14T16:00:20
|
|
Vulkan: Add test that destroys view after the image
A depth/stencil blit path can create temp views. Temp objects are added
to ContextVk::mCurrentGarbage, which is **appended** to the Renderer's
garbage list. If the image from which the view was created is released
before the next submission (i.e. it's appended to the garbage list
before ContextVk::mCurrentGarbage), the image can be destroyed before
its dependent view is.
This is not triggering any validation error however, so there doesn't
seem to be a need for a fix. For posterity, if this ordering needs to
be fixed in the future, we can simply remove
`ContextVk::mCurrentGarbage` and add garbage to the renderer directly.
This was made possible a while back when the context was able to
allocate its submission serial right away. (Previously, the serial had
to be determined after submission, which is why temp objects were kept
in ContextVk until that serial is known)
Bug: chromium:40942995
Change-Id: I8a1270e635193dd7aff5b63cbf63c0c6a1fc061f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5370782
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
21ef298e
|
2024-03-13T11:06:22
|
|
Consider textures without an attached Buffer as incomplete
There are apps that perform a draw call using GL_TEXTURE_BUFFER
but without binding a valid buffer thus causing a crash. Instead
consider them as incomplete textures and fail validation checks.
Also, there is no need to explicitly track the buffer associated with
an incomplete buffer texture, the owning texture will handle cleanup.
Bug: b/328846669
Tests: TextureBufferTestES31.DrawIncomplete*
Tests: TextureBufferTestES31.DrawComplete*
Change-Id: Id0b68e8048ba582d677e6767272a86761913ea3a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5369639
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
60aaf4a0
|
2024-03-14T12:58:56
|
|
Vulkan: Move renderer to namespace vk
This class is agnostic of EGL. This change moves it to namespace vk for
use with the OpenCL implementation
Bug: angleproject:8564
Change-Id: I57f7807d6af8b3d5d7f8efbaf8b5d537a930f881
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5371324
Reviewed-by: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b3ab67d3
|
2024-03-14T15:06:02
|
|
tests: Remove unnecessary .get() from RAII objects
Bug: chromium:40942995
Change-Id: I82509869bce3ad8f51811188fe04267f2de04786
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5370904
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d4d34781
|
2024-03-14T13:03:55
|
|
Multisampling support check: sampleCounts > 1 and createFlags
At least two drivers are returning VK_SUCCESS from
vkGetPhysicalDeviceImageFormatProperties2
but also set sampleCounts to 1 which supposedly means no MSRTT
Qualcomm reference device driver fails vkCreateImageView
when enabling the multisampling bit one cubemaps which have
sampleCounts == 1
Additionally,
* include vk::GetMinimalImageCreateFlags() in createFlags - we don't get
the cubemap bit without that
* check both the image format and the additional view format
(linear+srgb) as we set both of these when creating the image
This fixes a bunch of cubemap and 3D tests on Qualcomm reference device
Bug: b/329286011
Change-Id: I6d3ddea0cd997cf37b503050063f42d69723bd50
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5372826
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
7220307b
|
2024-03-13T16:13:45
|
|
Conditionally support EGL_OPENGL_API
Advertize support for EGL_OPENGL_API only if
angle_enable_gl_desktop_frontend is enabled.
Bug: b/322142833
Tests: EGLQueryContextTest.DesktopGlApi*
Change-Id: I680ea985e45e793d92fc087d21f38fd5d38f0241
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5369641
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
e5cb7f1f
|
2024-03-12T16:06:37
|
|
Vulkan: Fix access to inactive attributes
... within range of active ones. Since a buffer is bound for inactive
attributes, it must be considered accessed.
Ultimately, the nullDescriptor feature could be used to avoid binding a
buffer for inactive attributes.
Bug: chromium:327807820
Change-Id: Ieceea9442310c23568c47cef7357b4094b7ebbb4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5369336
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
18fa02be
|
2024-03-12T10:23:55
|
|
Rewrite exprs using separated decl variables
Rewrite expressions that use the rewritten struct declaration variables.
Declaration that specfies a struct and defines multiple variables will
get its variable declarations separated. The type of the variable
changes when a struct specifier is removed for the second and rest of
the variable declarations. The type of the variable changes also when a
anonymous struct is named.
The expressions that used the separated variables used the old struct as
their types.
Fix by using TIntermRebuild. Upon creating a new symbol node referencing
the new type, the rebuilder will instantiate also all the needed
intermediate nodes, which then get the correct struct type.
For consistency, fix the case of anonymous struct -> named struct
transform naming the variables similar to named struct separation.
Consider base case:
struct S { .. } a, b; -> struct S { .. } a; S b;
Compare against case:
struct { .. } a, b;
Before, inconsistency:
struct s1 { .. }; s1 a; s1 b;
After, fixed:
struct s1 { .. } a; s1 b;
Bug: angleproject:8590
Change-Id: Iffb0ef4441d6021e076b04485b808b26a7fa4dcb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5365201
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
da3baf09
|
2024-03-11T22:07:11
|
|
Manual roll VK-GL-CTS from 1918ab4d4806 to 87353392d2d2 (15 revisions)
Manual roll requested by abdolrashidi@google.com
* Suppressed failing tests from the new roll.
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/1918ab4d4806..87353392d2d2
2024-03-09 ziga@lunarg.com Add SPIR-V test using OpSelect with and
without RelaxedPrecision
2024-03-08 rgarcia@igalia.com Add tests for conditional rendering on the
compute queue
2024-03-08 kamil.goras@mobica.com Re-enable few texture.mipmap tests
from GLES CTS 3.2.3.x
2024-03-08 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-cts-4.6.4
into vk-gl-cts/main
2024-03-08 cturner@igalia.com Add decode tests for video_maintenance1
2024-03-07 marcin.zajac@mobica.com Additional formats supported by
tcuTexture.cpp
2024-03-07 mateusz.bahyrycz@mobica.com Tests for double draw with
stipple lines
2024-03-07 kamil.goras@mobica.com Re-enable
dEQP-GLES2.functional.attribute_location.bind_aliasing.max_cond*
2024-03-07 david.heidelberg@collabora.com Implement support for the
EGL_EXT_config_select_group extension
2024-03-07 gleese@broadcom.com Fix texture min/max filter feature
checking
2024-03-07 gleese@broadcom.com Refactor image sampling test extension
support checks
2024-03-07 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.8
into vk-gl-cts/main
2024-03-06 lorenzo@khronosgroup.org Merge remote-tracking branch
'vk-gl-cts/dev/VK_NV_device_generated_commands_compute'
2024-03-05 lorenzo@khronosgroup.org Fix unused function warning
2024-03-05 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.8
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 abdolrashidi@google.com,angle-team@google.com on the revert to
ensure that a human
is aware of the problem.
To file a bug in ANGLE:
https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: angleproject:8606
Bug: angleproject:8607
Bug: angleproject:8608
Bug: angleproject:8609
Tbr: abdolrashidi@google.com
Change-Id: I7fa583ad768197b56f809e7b49a5b8c732bdaa16
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5362903
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
b744ee7f
|
2024-03-12T11:00:39
|
|
Trace tests: extract debug files to (CAS) output
Follow up on https://crrev.com/c/5361574 which works for gold test but
not perf tests which use temporary directory for output files
Bug: b/296921272
Change-Id: Idfc75839cf2cadde44da1567b7347be7c6520bdf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5365307
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a55f91b5
|
2024-03-05T16:36:49
|
|
Switch Pixel 6 experimental bot to Android U
Use-Permissive-Angle-Pixel-Comparison: True
Bug: chromium:41489949, angleproject:8598
Change-Id: Ibe0190f82dc82c1ef1699f2393c9459b2318d143
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5344713
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
c9c7c4d7
|
2024-03-11T12:17:11
|
|
Trace tests: save debug files when gz decompression fails
Input and output bytes saved to CAS outputs,
for futher manual inspection
Bug: b/296921272
Change-Id: I57c88090bdb41bf9ef48466f38c7da90572ce467
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5361574
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Roman Lavrov <romanl@google.com>
|
|
11a2d27f
|
2024-03-08T14:26:56
|
|
Check array index against unsigned array size
Fix an assert during GLSL parsing when a very
large array (~1U) type is indexed.
Bug: angleproject:8596
Change-Id: I219ac5c8f3fa58aa4c7d679eade6f32b59eb1103
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5352653
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
90ae6cbe
|
2024-03-07T15:51:41
|
|
Avoid assert at main prototype when monomorphizing
Use the same condition as for main function definition.
Bug: angleproject:8594
Change-Id: I66e4af61015607660437745042976fdc577308ca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5352247
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
0f110098
|
2024-03-08T12:40:09
|
|
Avoid assert with multiple memory qualifiers
Add missing qualifier strings.
Bug: angleproject:8593
Change-Id: I484571c33effd85d52712b4876f6a3a5c73d8fde
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5352255
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1452c195
|
2024-03-04T22:03:21
|
|
Android: Add Qualcomm Mobile Reference Device support
Adreno based, Snapdragon 8 Gen3
Test: end2end, dEQP
Bug: b/328156792
Change-Id: I8cd47313fbd39f9f69a0eb4730bd2fbf92818d0f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5341381
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
46672014
|
2024-03-07T09:55:38
|
|
Vulkan: Add test for midRenderPass clear for MSRTT
This adds a test that demonstrate the bug with mid render pass clear of
depth buffer with multisample render to texture emulation code path.
This bug was seen in lord_of_heros.
Bug: b/309355117
Change-Id: I0217baf77f74372b8d24e3321b9a0b727a6690ca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5353371
Reviewed-by: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
74af31ad
|
2024-02-28T00:00:00
|
|
GL: Add ClearsWithGapsNeedFlush workaround
Enabled on older Adreno drivers to avoid
clear/draw race conditions in certain cases.
Fixed: angleproject:8374
Change-Id: Ifc30f66ece562027ae4dd7672fcb121f91ec4696
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5335662
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
4a5b9307
|
2024-03-07T08:57:12
|
|
android_helper: support angle_deqp_egl_tests
Appears to just require that this dir exists:
gen/vk_gl_cts_data/data/
Bug: b/328586468
Change-Id: Ic941ea9b99bc5c84663914c1e0a6ed9d91a35c58
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5352806
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
91ddf851
|
2024-03-03T10:57:22
|
|
Vulkan: support QCOM foveated rendering extensions
Add support for foveated rendering in the vulkan backend.
This is done by leveraging the VK_KHR_fragment_shading_rate extension.
Bug: angleproject:8484
Change-Id: I0d01d07583f710b2302ea07b19c9d113c73bfe41
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5269907
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
39f29f65
|
2024-03-05T21:42:32
|
|
Ensure unary math op parse to an node on error
Return the error node for ops like radians().
The math op parse can fail in multiple ways.
Fixed: angleproject:8583
Change-Id: Ief7e150dffefe711f567d95c62d1023fc7fa1c91
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5344716
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
b2773c11
|
2024-03-01T11:24:44
|
|
Vulkan: Bug fix in immutable sampler pipeline layout recreation
An immutable sampler is tied to a sampler index and changing sampler
uniform location value should force a recreation of the pipeline layout
Bug: b/155487768
Bug: angleproject:5033
Bug: angleproject:5773
Tests: Texture2DTestES3.TexStorage2DMultipleYuvSamplersSwitch*Vulkan
Change-Id: I82aaed332d7f87f11a2fd4923cfc004403ff0bd2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3657480
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
47cd0529
|
2024-03-04T15:19:30
|
|
Fix assert invoking #line during macro invocation
Fix an assert with preprocessor content of form:
f
#line f()
(x
If the #line macro function invocation forms an invalid line number, the
line directive parsing will stop and unwind the macro context stack.
However, it did not do the state management related to unwinding the
context: it left the f function marked as "disabled".
Fix by managing the state in the unwind scenario.
Also make MacroContext be allocated from the context stack vector
instead of heap.
Also fix all the define tests to expect a version directive call.
Fixed: angleproject:8578
Change-Id: I31dbeb911b07779eebe28bf58f13cec8876aa982
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5342495
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
27423bff
|
2024-03-05T17:57:24
|
|
Metal: Generate names for rewritten inputs
When expanding multi-component fields to multiple single-component
fields, use AngleInternal namespace for the new names. The names are
generated with form "someField_0" where _0 is the component index.
If these are not created in AngleInternal, caller is able to create
a name clash by introducing single-component field "someField_0".
Fixes an assert where the vec4(a_) + vec4(a) would assert on size
mismatch because the variable lookup for "a_" would find a rewritten
variable for the expanded matrix row of "a".
Bug: angleproject:8558
Change-Id: I64b7a755d7d534543fdb0f4c43008dd5c63f4aad
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5323060
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Kyle Piddington <kpiddington@apple.com>
|
|
95294b24
|
2024-02-28T16:11:45
|
|
Android: Add Galaxy S22 support (Xclipse)
Test: angle_tests
Bug: b/267953710
Change-Id: I53ac424bce23a93fe980539f0946c04aeae6e91e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5333957
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b978974d
|
2024-03-03T10:48:48
|
|
Update frontend support for QCOM foveated extensions
Modifications to frontend support -
1. EXTENDED_DIRTY_BIT_FOVEATED_RENDERING is removed
2. New framebuffer attachment API - getFoveationState
3. Attachment type restriction for foveated rendering is removed
4. Addition of new test - RenderbufferAttachmentClearThenDraw
Bug: angleproject:8484
Change-Id: I699cbed81346c9a6344c4ff36afa51d6cc1bf052
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5338529
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3fa8d578
|
2024-03-04T10:06:57
|
|
Make appendDecimal use the last char of the buffer
ImmutableStringBuilder(1) means 1 char usable payload and \0.
This this should fit appendDecimal(1) but did not. Fix the off by one
error calling snprintf.
Also:
* removes const & from uint32_t argument
* removes const & from operator<<, to stay consistent
* Removes a redundant static_cast
* Implements operator<< const char* with potentially better
operator<<(const ImmutableString&) (may get compile time strlen)
Fixed: angleproject:8567
Change-Id: Ibfff59f6846add0498d06e963266e50ec19baf80
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5332381
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
871a309c
|
2024-03-04T14:43:10
|
|
Fix layout(index=) parse assert on es 100 shaders
Remove invalid assert about layout index qualifier being present only if
EXT_blend_func_extended is present.
The layout qualifier gets parsed to support EXT_shader_framebuffer_fetch
in ES 100 shaders to support
"layout(incoherent) mediump vec4 gl_FragData[gl_MaxDrawBuffers]"
Fixed: angleproject:8570
Change-Id: I0d0d99bcc882a0befd97c2510dec4a8ccf1690bd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5340249
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
1c2d2417
|
2024-03-01T14:50:43
|
|
Bugfix in CreateWithEGLConfig1010102Support test
Create a context with config that supports RGBA1010102 format
Bug: angleproject:8330
Tests: EGLSurfaceTest.CreateWithEGLConfig1010102Support*
Change-Id: Ic8dfca01b253e6ae5ea1f0b99b6ac781288805c0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5337608
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2ee295b4
|
2024-02-15T11:27:39
|
|
Vulkan: Add per-level image update tracker
* Add a per-level image write tracker to ImageHelper.
* It tracks the updates scheduled for different parts of the image.
Within each level, it also tracks different layers, currently up
to 64.
* kMaxParallelSubresourceUpload renamed to kMaxParallelLayerWrites;
moved to vk_helper header.
* It is reset when a barrier is issued for the image.
* Modified ImageHelper::recordWriteBarrier().
* Added isWriteBarrierNecessary().
* Now it checks the added writes for the image. It will no longer
issue a barrier if the image is in the same layout and there is
no write to a part of the image to which was previously written.
* Added ReadImageSubresources to CommandBufferAccess.
* It is used for layouts that allow both reading and writing to the
image (including self-copy):
* TransferSrcDst (used in CopyImageSubData)
* ComputeShaderWrite (used in compute-based mipmap generation)
* CommandBufferImageWrite -> CommandBufferImageSubresourceAccess
* Updated onImageSelfCopy() args to include read subresource data.
* Improves gpu_time for TextureUploadETC2TranscodingBenchmark perf test
* Windows/NVIDIA: ~180609 ns -> ~62669 ns (~2.88x)
* Linux/NVIDIA: ~157283 ns -> ~93360 ns (~1.68x)
* Windows/Intel: ~72297 ns -> ~57153 ns (~1.27x)
* Added a test to show that self-copy for a write-after-read works.
* ArraySelfCopyImageSubDataWithWriteAfterRead
* (ArraySelfCopyImageSubData covers RAW hazards; renamed)
Bug: b/308455694
Change-Id: I5cef296d991ce6ec02792edc3ffc5cc4994831e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5301855
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
f7cd1c56
|
2024-02-28T12:04:22
|
|
Tests: Add Toca Life World trace
Test: angle_trace_tests --gtest_filter=TraceTest.toca_life_world
Bug: b/327354357
Change-Id: I5dc900532dc8b5db516c8c2fbab63462fa7c20ea
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5333438
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
8142dde7
|
2024-02-27T15:08:57
|
|
Tests: Add Pokemon Masters Ex trace
Test: angle_trace_tests --gtest_filter=TraceTest.pokemon_masters_ex
Bug: b/326199738
Change-Id: Ie0c4c4072865783b8f43332f9e4463a79acf3c35
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5328735
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
|
|
a971e5b4
|
2024-02-28T17:13:38
|
|
Account for zero vector axes in Mat4::Rotate(...)
When the axis passed in to the Rotate function is (0, 0, 0), normalizing
that vector will result in NaN values. Prevent this by returning an
identity matrix and early out instead.
Bug: angleproject:2306
Tests: MatrixBuiltinsTest.RotateAxisZero
Change-Id: I65fd0b9944885daf56a4a35201d424e7f0aa9ba6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5333834
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
75c8ef1c
|
2024-02-22T00:00:00
|
|
Update cached component type masks on attachment redefinitions
Added a new test:
WebGL2ValidationStateChangeTest.AttachmentTypeRedefinition
Fixed: angleproject:8556
Change-Id: I1535fba5467228076bb79ac2cc5530610d4ec747
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5318735
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
0afcac60
|
2024-02-22T11:21:15
|
|
Handle count = 0 in DrawElementsIndirect
Bug: angleproject:8554
Change-Id: I9618061edf71c3d9a03ea14dfe65b54c58ee98de
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5319131
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
|
|
3c517e45
|
2024-02-14T14:26:42
|
|
Vulkan: Process ClearEmulatedChannels update first
* When going through the level updates in flushStagedUpdates(), the
ClearEmulatedChannels updates are expected to be before the rest. In
addition, there can be only one such update in the level update list.
Therefore, now they are processed and applied before the rest of the
updates. By doing so, if this is the only update for the image, an
unnecessary layout transition can be avoided.
* Added flushStagedClearEmulatedChannelsUpdates().
* Added flushStagedUpdatesImpl() for the rest of the update types.
* Used clipLevelToUpdateListUpperLimit() to limit the flush loops to
the number of levels in subresource update list.
* Added unit test to ensure updates after ClearEmulatedChannels are not
ignored.
* ImageTestES3.IncompleteRGBXAHBImportThenUploadThenEnd
* The test contains a ClearEmulatedChannels followed by an image
update. If the latter is ignored in this test, there is a failure
during teardown due to orphanNonEmptyBufferBlock when destroying
the buffer that contains the update.
Bug: b/308455694
Change-Id: I53c73acb60a9c5440548886cde913112a664402d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5297317
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
5a4bfd61
|
2024-01-12T17:15:39
|
|
Metal: Separate struct definition from function return
The EmitMetal pass in shader translator does not handle writing the
defintion of a structure that is declared in the return type of a
function, such as:
struct Foo { float val; } foo() {
...
}
This change adds a new pass, SeparateStructFromFunctionDeclarations, to
separate the definition and declaration of struct variables in function
prototypes into two statements, such as:
struct Foo { float val; } foo();
struct Bar { int val; } bar() { ... }
void main() { ... }
Foo foo() { ... }
into:
struct Foo { float val; };
Foo foo();
struct Bar { int val; };
Bar bar() { ... }
void main() { ... }
Foo foo() { ... }
Fixed: angleproject:8302
Change-Id: Id8b6ba256d3c8375dd889facd70e4715261c1ca3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5191644
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
f546983c
|
2024-01-30T13:39:27
|
|
Add test and skip for 07753 validation error
Running Pokemon Masters Ex game on Android generates the
validation error VUID-vkCmdDrawIndexed-format-07753. This CL
adds the TexImageFormatMismatch test to reproduce the error
and updates the SkippedMessages list to avoid test failures.
Test: angle_end2end_tests --gtest_filter=*TexImageFormatMismatch*
Bug: b/319228278
Change-Id: I6ee2cac0bc899e945ef0d4aff33d5e73299c6954
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5309857
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Mark Łobodziński <mark@lunarg.com>
|
|
8346addb
|
2024-02-06T15:40:31
|
|
Contain X11 includes and free usage of common terms
This change undoes workarounds where some terms were avoided so there is
no clash with X11 (such as Success, Bool and None). In particular, this
helps us make sure we never include the X11 headers in such an
unconstrained manner as to clash with our code.
Bug: angleproject:8520
Change-Id: I53d9657c5a33164064d2c80a206b96fd52f607f1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5273491
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Liza Burakova <liza@chromium.org>
|
|
b7bacdb7
|
2024-02-15T11:14:21
|
|
GL: Generate mipmaps through draw calls on Pixel7/Pixel8.
Some patterns that use a texture as a framebuffer attachment and then
generate mipmaps on that texture multiple times cause context loss or
driver hangs.
Extend the sRGB mipmap generation to also generate mipmaps on non-SRGB
textures using draw calls and linear samplers to do the downsampling.
Bug: chromium:40279678
Change-Id: I19c6bf9c702ddf2c400ef03ff076fbd4cf15d285
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5297413
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2b1ef00a
|
2024-02-20T15:45:34
|
|
Metal: Fix validation for anonymous struct arrays
Fix validation failure for accessing an element of
array of anonymous struct.
SeparateCompoundStructDeclarations would create
new Structures to name unnamed structures.
The Structure instance of the array index accessor
node was incorrect, it was the old Structure.
Use same pattern as in
SeparateStructFromUniformDeclarations.
Bug: angleproject:8551
Change-Id: I04684e5ad99cc2b9038a0cc21c7eefcc6cf247df
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5310074
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
f4d5644c
|
2024-02-16T18:13:18
|
|
Instantiate dawn backend in angle_end2end_tests
Bug: angleproject:8485
Change-Id: I07a5c5c221c6b50b839929a824753a662aa163f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5286835
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Liza Burakova <liza@chromium.org>
|
|
9d453e57
|
2024-02-16T22:28:18
|
|
Fix ASSERT in non-global precise var decls
Precise was treated as invariant. Precise can be
declared for non-global variables.
Bug: angleproject:8550
Change-Id: Ia0d00d67d0d1504b78294ee2256785fe3da3e399
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5300976
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
37287687
|
2024-02-16T10:50:14
|
|
Android: support running angle_unittests via android_helper
Allows to run:
1) locally via run_angle_android_test.py, ex:
% (cd out/AndroidPerformance; ../../src/tests/run_angle_android_test.py --suite=angle_unittests --list-tests --log=debug)
2) on bots via swarming trigger, ex:
% tools/luci-go/swarming trigger {usual_args_and_dimensions} -- vpython3 ../../testing/test_env.py ../../src/tests/angle_android_test_runner.py gtest --output-directory=. --suite=angle_unittests --list-tests --log=debug
Bug: chromium:325124206
Change-Id: I61c4e10df349a60b1ff79694bdcdac40a40d12e4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5301624
Auto-Submit: Roman Lavrov <romanl@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
298abbc1
|
2024-02-16T08:50:43
|
|
Roll Chromium from 29bec8631d2f to 9d4a35b46e1e (1220 revisions)
Amend the roll with http://crrev.com/c/5301614 courtesy agrieve@.
https://chromium.googlesource.com/chromium/src.git/+log/29bec8631d2f..9d4a35b46e1e
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,geofflang@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/2cece96e17..a11ae4664a
* buildtools/linux64: git_revision:a2e2717ea670249a34b0de4b3e54f268d320bdfa..git_revision:8b973aa51d02aa1ab327100007d4070c24b862b0
* buildtools/mac: git_revision:a2e2717ea670249a34b0de4b3e54f268d320bdfa..git_revision:8b973aa51d02aa1ab327100007d4070c24b862b0
* buildtools/win: git_revision:a2e2717ea670249a34b0de4b3e54f268d320bdfa..git_revision:8b973aa51d02aa1ab327100007d4070c24b862b0
* testing: https://chromium.googlesource.com/chromium/src/testing/+log/c37870b5fd..5e8f58ef80
* third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/d353dfb095..984707e65c
* third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/f39e9d8c1a..ad0b8e7a0e
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/51589f432d..3d6c15240b
* third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/a5a09d23fa..b1b1a43f07
* third_party/fuchsia-sdk/sdk: version:18.20240207.3.1..version:18.20240215.1.1
* third_party/r8: tp4vVuXzmyHJxDFlwxDb7RYZLLEufc3EnGTyOTCTNkgC..f7pPpoVTaC3WoBY5dURVrI-N1_4YZpSYipdiDUeWDAEC
* third_party/siso: git_revision:3cd0e6e55246b8eca6646e33b124e54e67fc5660..git_revision:4bede4f49669d3a8bdaa8dbd01620c3a07ae0c4e
* tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/894ad691c6..47756615f5
No update to Clang.
Bug: angleproject:6081, chromium:324916799
Change-Id: Ib097e6dca9374111632838beab4f0224ff6196fc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5302166
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
6607a2b9
|
2024-01-17T15:58:20
|
|
Vulkan: Add support for VK_EXT_vertex_input_dynamic_state
Hook into VK_EXT_vertex_input_dynamic_state so pipeline states
that differ only in vertex input state can reuse existing
pipelines.
Bug: angleproject:7162
Tests: StateChangeTestES3.Vertex*
Change-Id: Icd3134dee93fc5fc2e9d284fcfa8c674b62faec8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5207462
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
6d589ff6
|
2024-02-12T15:26:54
|
|
Trace perf: support custom thermal throttling for tests
Vendor throttling kicks in rather quickly and starts affecting e.g.
cpu/gpu freqs, which can be hard to predict and increases variance in
our tests. This change implements support for disabling vendor
throttling (re-enabled at the end, including ctrl-C) and using a custom
temperature threshold for VIRTUAL-SKIN sensors, which are checked after
each test runs. This allows to set the threshold to higher values and
run the device hotter without touching cpu/gpu freqs
while running tests, and then dissipate heat (if necessary) by sleeps
between tests.
This also allows to reduce fixed-time sleeps between tests as we're
monitoring the temperatures. Only some of our trace tests heat up the
device sufficiently to actually require throttling, and with active
cooling I was able to avoid sleeps almost through the entire run.
However, sleeps might also be needed to prevent battery from
discharging, so also add a flag to sleep until a given battery level
is reached after each test.
Example usage, sleeping between tests until all sensors are below 39C
but also battery level is at least 30%:
--custom-throttling-temp=39 --min-battery-level=30
Bug: b/315042901
Change-Id: I7660fc36b1103e20e4cc97312d396f3667739481
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5288455
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
b380ed1f
|
2024-02-14T09:31:26
|
|
Vulkan: Add EGL_ANGLE_global_fence_sync
Chrome has an implicit assumption that due to context virtualization,
signaling a fence in one context results in synchronization with _all_
contexts that have previously made submissions.
This is not per EGL spec, but the functionality is easily implementable
in the Vulkan backend. In the Vulkan backend, each context is given its
own "timeline" of submissions (tracked by serials associated with
"indices"). The required functionality is implemented through a new EGL
fence sync object whose sole difference is that it synchronizes with all
the existing timelines rather than the one of the current context.
Bug: b/318721705
Change-Id: I6c45d065e592d0d4ed627ce9695196b1086d5021
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5297396
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
40dfb3a8
|
2024-02-12T00:00:00
|
|
Fix length() translation for clip/cull distance arrays
* Fixed a failing assertion when
the arrays are resized.
* Added a compile error for length()
when the arrays are unsized.
Fixed: angleproject:8527
Change-Id: I6379336c546b008095f0875e5b5b4e8e0e5ba3e6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5293914
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d6ceac91
|
2024-02-12T20:37:58
|
|
Metal: Add support for binding slices to images
Add support for binding Metal MTLTextureType2DArray texture slices to
EGL images.
Bug: angleproject:8531
Change-Id: I938e75c81bf36d3885f3bdcb0d1007e1f87e20c2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5290374
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
195c142d
|
2024-02-14T15:09:54
|
|
GLSL test for side effects in prune-able loop
Bug: angleproject:8532
Change-Id: Ie872e957b78454d725575b05721f9b3f213889f6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5297407
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
197beb4d
|
2024-02-13T15:47:32
|
|
Metal: Crash if for loop body is optimized away
Loops might have their bodies optimized away.
For case like `for(;;) if(false);` the constant pruning happens at
parse phase. The else branch (e.e. no else branch, nullptr) would be
selected as the body.
Some code treated the body as optional, some code treated it as
required. Define it as required, and remove all conditional code
related to the loop body.
Bug: angleproject:8532
Change-Id: Ic35f1bf78e63ceb2cee7b96ba99e788efc282e6f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5291554
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
b8e56d5d
|
2023-11-20T15:41:44
|
|
Fix an assert when overwriting TexImage binding
Fix an assert when overwriting a image binding with
multiple eglBindTexImage calls on the same texture.
Bug: angleproject:8521
Change-Id: Ie7247017fd73c523b889278ec19a09ecf0683692
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5272912
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d9665098
|
2024-02-12T13:53:32
|
|
Do not use hardcoded ".cr.so" extension for android component builds
This will enable me to remove the extension for component builds
Bug: chromium:324916799
Change-Id: I20bd8f93706d182fe6ebb3022240f81fec9de449
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5287577
Auto-Submit: Andrew Grieve <agrieve@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
9d344b5c
|
2024-02-13T17:54:12
|
|
Uniform block reference in constuctors crash
Passing uniform block instance name to a built-in constructor would
cause type confusion. Block this by failing to parse.
Bug: angleproject:8533
Change-Id: I5a676b41e2f3d766ece4ed472debc1c874753293
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5290897
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Kimmo Kinnunen <kkinnunen@apple.com>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
|