|
b23ea680
|
2022-07-22T12:06:42
|
|
Vulkan: Re-enable multisample framebuffer fetch
Bug: angleproject:7351
Bug: angleproject:3586
Bug: angleproject:6195
Bug: angleproject:7512
Bug: b/234173199
Change-Id: Ib70732f8c075de777e534f950a7e421e75969f59
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3781613
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
2b43d630
|
2022-07-22T14:19:05
|
|
Remove unused (and incorrect on Android) mTestSuiteName.
On Android it ends up being just: _
Bug: angleproject:7299
Change-Id: I3dabcfcbacc3f43338b6fa91ebd9917e43f783ce
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3780587
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
90fa855b
|
2022-07-22T10:11:01
|
|
Suppress the early_fragment_tests PLS test on Pixel 6
Bug: angleproject:7279
Change-Id: Id56d43f9061e9f6d08388ff49b2f65a88408c145
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3782862
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
adeb750d
|
2022-07-21T18:49:00
|
|
Validate that skipped tests are skipped by suite.
Before this change, any test failing to produce trace files
would be marked as "Skipped" regardless of whether it was skipped by
suite or just failed to produce trace files for some other reason.
This change adds FailedToTrace status to differentiate between the two
cases. If a test is FailedToTrace it will need to be explicitly added
to the capture_replay expectation file (probably SKIP_FOR_CAPTURE).
This change caught that
OcclusionQueriesNoSurfaceTestES3.SwitchingContextsWithQuery/*
was incorrectly specified as NOT_RUN when the intent was to SKIP.
Bug: angleproject:5133
Bug: angleproject:7516
Change-Id: I451b4d5fd799d15ef92fab678aa20d2b6cc42c9f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3781902
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c95e2b7d
|
2022-07-21T17:03:19
|
|
Remove a few cases that are skipped by end2end.
Following https://crrev.com/c/3780583.
A few obvious NOT_RUN cases where bugs and skipped tests match those in
angle_end2end_tests_expectations.txt
Bug: angleproject:7516
Change-Id: I63a78b0800d2e4fedfe7d4730df6b55b22508dc4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3779645
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Roman Lavrov <romanl@google.com>
|
|
d57ce815
|
2022-07-16T16:33:08
|
|
Use "readwrite" PLS images when possible
We actually only need readonly/writeonly aliases on ESSL, non
r32f/r32ui. For all other cases, this change updates the compiler to
emit a single readwrite image. We also optimize this image with the
"restrict" qualifier since PLS specifically disallows aliasing.
Removing the aliased load and store also eliminates our issue with an
Intel driver bug, and all the PLS tests now pass without any
workarounds.
Bug: angleproject:7279
Bug: angleproject:7398
Change-Id: I350b239793647da33add96509b8f4b1bbef02245
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3767537
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
aa7e6751
|
2022-07-15T23:33:30
|
|
Automatically enable early_fragment_tests when PLS is declared
When PLS is polyfilled by shader images, we need early_fragment_tests in
order to match the same depth/stencil behavior as when it is implemented
as framebuffer fetch.
Bug: angleproject:7279
Change-Id: I37f5a8682cc96a14ef247d53ed243e4aceb15f39
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3767535
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
77aa34ae
|
2022-07-16T13:08:00
|
|
Add support for PLS as function arguments
Bug: angleproject:7279
Change-Id: I89d5c02148cbdbbd02dc4840ffada2c96c2a849b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3767534
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
3a0d7249
|
2022-07-21T13:38:21
|
|
Ignore tests skipped by the suite.
This way we don't have to add skipped tests to
capture_replay_expectations as well.
Bug: angleproject:5133
Bug: angleproject:7512
Bug: angleproject:7516
Change-Id: Iabc5f4738b51ce23890c07b8a0548cbc6bec1274
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3780583
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
d0fe12db
|
2022-07-20T10:16:38
|
|
Vulkan: Disable Multisample Framebuffer Fetch
Disable the multisample framebuffer fetch temporarily
to unblock the angle to chromium roller. Will re-enable after
https://ci.chromium.org/ui/p/chromium/builders/try/win10_chromium_x64_rel_ng/1240846/overview
is resolved.
Bug: angleproject:7351
Bug: angleproject:3586
Bug: angleproject:6195
Bug: angleproject:7512
Bug: b/234173199
Change-Id: I435b257dd07d973d06d5cacd779e943eed32097b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3777059
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
115d8361
|
2022-07-21T13:59:48
|
|
Switch Linux Intel testing to UHD 630 GPU
Replacing 0x5912 HD 630 with 0x9bc5 UHD 630.
Also updating Mesa from 19.0.2 to 20.0.8.
Since no problems were observed on the new configuration during the
experiment, removing max-processes and flaky-retries workarounds.
Bug: chromium:1342945
Change-Id: I51150092c67802ffd54796dd3b067cd6473dfb86
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3780922
Reviewed-by: Roman Lavrov <romanl@google.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
c460c299
|
2022-06-21T11:20:45
|
|
Implement GLSL additions for ANGLE_shader_pixel_local_storage
Specs out, implements, and thoroughly tests the GLSL additions for
ANGLE_shader_pixel_local_storage. Adds a simple transformation that
rewrites PLS directly into shader images. Updates the existing PLS tests
to use the newly built-in PLS features and ensures they continue
passing.
For now, applications call glBindImageTexture to configure their pixel
local storage. The OpenGL ES API side of this extension will follow
shortly.
Bug: angleproject:7279
Change-Id: I141183069b5cbfcca01cbb77b5b36d3e5f834bf5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3761876
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
1e619503
|
2022-07-20T11:55:49
|
|
Skip TracePerfTest vulkan_car_chase on Linux Intel
Flaky VK_ERROR_DEVICE_LOST on Intel UHD 630 Mesa 20.0.8
Bug: angleproject:7125
Change-Id: I7e99819a586e3f146728f49dfdeebf9e8ddcb219
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3777097
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
53d40aed
|
2022-07-15T15:03:25
|
|
Vulkan: Destroy descriptorSet cache when BufferHelper destroyed
For atomic counter buffers or other cases, dynamic descriptor is not
been used. Right now when such buffer is destroyed, the cache is still
lingers around. With this CL, when a new cache entry has been created,
we record the cache entry in the BufferHelper. When BufferHelper is
destroyed, we also immediately destroy the cache entry since the cache
will no longer reused.
Bug: b/237686097
Change-Id: I26eee96318fbc003e65318c0b8263dc61092f350
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3764044
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
c7459a46
|
2022-07-15T09:55:03
|
|
Vulkan: Destroy descriptorSet cache when BufferBlock destroyed
When a new cache entry has been created, we record the cache entry in
the BufferBlock. When BufferBlock is destroyed, we also immediately
destroy the cache entry since the cache will no longer reused.
This CL also removes DescriptorCacheResult from various APIs since it is
now redundant with newSharedCacheKey argument.
Bug: b/237686097
Change-Id: I14fa8906fdbe7d9226c8e8ecddef2beb05fbaa5c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3756694
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Auto-Submit: Charlie Lao <cclao@google.com>
|
|
45e5cf01
|
2022-06-03T14:29:23
|
|
Vulkan: Implement ASTC emulation.
Implement ASTC emulation using the astc-encoder library.
Add copy_image tests to deqp_gles31_test_expectations for desktop cards.
Add emulatedAstc limitation.
Don't expose emulated ASTC from WebGL contexts.
Introduce ANGLE_HAS_ASTCENC define to check for build availability.
Only build on angle_standalone configurations.
DEPS: Add astc-encoder.
image_util: Decode ASTC to RGBA.
TracePerfTest: Skip car_chase and genshin_impact on NVIDIA.
Bug: angleproject:7415
Change-Id: Ib2f3fd3f710164a2ecd5d5edf780227031bbfb84
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3697999
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
f1dac70d
|
2022-07-12T15:56:10
|
|
Remove platform skips for cookie_run and real_cricket
These traces now work after being updated in restricted_traces.json.
Bug: angleproject:7420
Change-Id: I57be700afb0a9232ce88bf2eed5f5104256b94f6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3759428
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
3baa867c
|
2022-07-14T23:08:42
|
|
Vulkan: Fix image arguments passed to functions in GLSL
It's impossible to provide the format qualifier to an image function
parameter in GLSL, because `layout()` is not acceptable there. SPIR-V
doesn't accept formatless image parameters without the
StorageImageReadWithoutFormat and StorageImageWriteWithoutFormat
capabilities, which are not universally available.
Instead, this change monomorphizes functions with image parameters.
Note that this was already previously done for R32F images for emulation
purposes.
Bug: angleproject:7484
Change-Id: Id287c4a93b32deb3fd8be982c32fa58fd2c848d8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3763074
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2c3c45ee
|
2022-07-18T12:37:57
|
|
Roll VK-GL-CTS from ef9a6635208b to 692df061716d (12 revisions)
Includes suppression of new render_sample_texture_array dEQP tests on Android.
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/ef9a6635208b..692df061716d
2022-07-15 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main
2022-07-15 jan-harald.fredriksen@arm.com Avoid dependency on geometry shaders for VK_ARM_rasterization_order_attachment_access
2022-07-15 michal.jakubek@mobica.com Global Priority Queue Families Tests
2022-07-15 rgarcia@igalia.com Test resetting queries after copying results
2022-07-15 piotr.byszewski@mobica.com Remove some RT SkipTriangles tests
2022-07-15 piotr.byszewski@mobica.com Enable FSR basic tests for Vulkan SC
2022-07-15 toni.merilehti@siru.fi Add tests for array comparisons
2022-07-15 yiyfan01@arm.com Add Texture2D array test in which Texture2D array is rendered and sampled.
2022-07-15 michal.jakubek@mobica.com Fix for attachment count in EXT_color_write_enable tests.
2022-07-15 piotr.byszewski@mobica.com Fix maxImageView(MipLevels/ArrayLayers) bug in SC
2022-07-15 skirank@nvidia.com Fix vkwsi Display control tests
2022-07-15 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.3.3 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-bots+autoroll-info@google.com,romanl@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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: angleproject:7506
Change-Id: I0b674a424cc109126b5a590430546942c6db3740
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3769550
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
466fc0c6
|
2022-06-30T15:47:14
|
|
Add new prerequisite type for GL_ENUM integers
This check is not applied in this commit.
Bug: angleproject:7420
Change-Id: Ie84600c21aa4829c8d8c798643719c3084597af4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3759423
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
c4004751
|
2022-06-23T14:35:21
|
|
Metal: texture allocation failures handled incorrectly
When allocating large textures, allocation may fail
if textures exceed the Metal memory limit. When a nil
texture is returned, we should check texture allocation before
assigning it as a backing object
ANGLE port of the following bug
https://bugs.webkit.org/show_bug.cgi?id=240790
Bug: angleproject:7459
Change-Id: Ib94f42d25df28a31513ab78fc42c6523bfbc5f76
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3722601
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Gregg Tavares <gman@chromium.org>
|
|
496bddf3
|
2022-07-14T20:58:03
|
|
Skip mutable texture upload tests through feature
* Added a condition in the mutable texture upload tests in
VulkanPerformanceCounterTest.cpp, to skip the test if the feature
`MutableMipmapTextureUpload` is disabled on that platform.
Bug: angleproject:7308
Change-Id: Iff1985cabb463dc82ef15340cf3c485a0b680f0b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3765180
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
15cc0013
|
2022-07-14T23:32:05
|
|
Add a GL_ANGLE_shader_pixel_local_storage extension
Plumbs through "GL_ANGLE_shader_pixel_local_storage" and
"GL_ANGLE_shader_pixel_local_storage_coherent" extension strings
advertised by ANGLE and stubs out an initial spec document. This change
doesn't add any new procedures or shader constructs, but it does allow
the PLS tests to start checking for the real extension strings and
requiring the GL_ANGLE_shader_pixel_local_storage extension.
Bug: angleproject:7279
Change-Id: I36877fe4117185a2121f803288123cd69a447cf3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3739590
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
1ae7a56c
|
2022-07-14T13:11:16
|
|
Vulkan: Fix double clear of AHBs
Originally when deferred clears were implemented, it was assumed that
it's impossible at glClear time to have a render pass open without any
commends. This assumption was broken under two circumstances:
- Clear of 3D attachments that don't include all layers
- Clear of AHBs
In these cases, the clear immediately opened a render pass with nothing
but loadOp=CLEAR. If another clear followed, an assertion would fire.
In this change, open render passes without commands are handled such
that clears are accumulated in the loadOps.
Bug: b/223456677
Change-Id: If99bcf9e24454b0c9e140cb93df7e7f76f175363
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3763169
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Lingfeng Yang <lfy@google.com>
|
|
ebf14fe3
|
2022-07-14T17:19:15
|
|
Return EXIT_FAILURE from run_perf_tests.py if any test failed
Previosly EXIT_FAILURE was returned only for exceeding max_errors,
which made Swarming erroneously believe that the task succeeded,
even though some tests in it could have failed.
Bug: angleproject:7498
Change-Id: I896fe97e7d24549202663351d5b61b206afbe6b1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3762456
Commit-Queue: Roman Lavrov <romanl@google.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
ea138236
|
2022-07-12T15:51:05
|
|
Remove suppression for passing dEQP tests
Numerous GLES3.2 tests are now passing.
Bug: angleproject:5557
Bug: angleproject:5579
Bug: angleproject:5978
Bug: angleproject:6441
Change-Id: I6e42a3590390ff984432586c1cd642b20fcd758f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3758704
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d9763c60
|
2022-07-14T14:42:27
|
|
Disable mutable texture upload on Win/Intel devs
After adding the mutable texture upload CL, we are experiencing
some instances of flakiness in the form of lost context/device
errors in the perf tests in Win/Intel cases.
* Added mutableMipmapTextureUpload as an ANGLE feature, which is
used to determine if onMutableTextureUpload() should be called.
* It is disabled on Windows when using an Intel GPU.
* Disabled the related unit tests on Win/Intel cases.
Bug: angleproject:7308
Bug: b/202744914
Change-Id: Ib8c1bddc39cc4354468831a4a599a7c343d05f0e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3764460
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
5911243c
|
2022-07-06T15:55:28
|
|
Fix linkValidateTransformFeedback for glLinkProgram
From OpneGLES 3.2 spec. 11.1.2.1: A program will fail to link if the
count specified by TransformFeedbackVaryings is non-zero, but the
program object has no vertex, tessellation evaluation, or geometry
shader. Add check in validation to account for this.
Bug: angleproject:5557
Tests: ProgramPipelineTest32.CreateProgramWithTransformFeedbackVarying
Change-Id: Ia86cbe8e85cb6a69fd35ddc4bc6ee37b9500c78f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3723861
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
01092c48
|
2022-07-12T10:11:22
|
|
Vulkan: Destroy descriptorSet cache when shader image is destroyed
Similar to texture descriptor set, this applies to images used as shader
resource. When a texture is used in a shader resource descriptorSet, we
record it. When texture is destroyed, we also destroy that shader
resource descriptorSet cache.
Bug: b/237686097
Change-Id: I475982fcec45535cc285a4aebca922d01efc7ed2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3758884
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
eaf77ef3
|
2022-07-07T10:25:16
|
|
Metal fails to compile uniform blocks in ternary statements
When creating an intermediate type for type expansion, Metal was copying
over information about which uniform block a type appeared in. This led
to a later pass, RewriteNamelessUniformBlocks, failing.
This patch helps address a compile failure in the Godot engine.
Bug: angleproject:7487
Change-Id: If0724f93017e41260ff11e59a5c28e8578563891
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3751106
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kyle Piddington <kpiddington@apple.com>
Reviewed-by: Gregg Tavares <gman@chromium.org>
|
|
5d59c0eb
|
2022-07-14T15:04:41
|
|
Skip EGLBufferAgeTest.QueryBufferAge on Linux Intel Vulkan
Fails on Optiplex 7080 Mesa 20.0.8
Bug: angleproject:7497
Change-Id: I413c9dd7a1d97b4120f4d65de3b2b0107cde15ad
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3762469
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
16e7226d
|
2022-07-13T17:56:36
|
|
Propagate device type in ReuseUnterminatedDisplay.
Fixes the issue with SwiftShader from https://crrev.com/c/3717277
Bug: angleproject:7494
Change-Id: Icb83087caf789518b0c3f30b10b543b299a500bc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3759712
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Roman Lavrov <romanl@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b038605c
|
2022-07-13T17:45:49
|
|
Fix test dependency on EGL initialization elsewhere.
The current implementation only works because
RegisterContextCompatibilityTests in
EGLContextCompatibilityTest.cpp initializes EGL beforehand.
Bug: angleproject:7494
Change-Id: I739ea8cdcddb1d8ea37204f5a1fa6c3844620d1c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3761276
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Roman Lavrov <romanl@google.com>
|
|
32c5fd8a
|
2022-05-13T14:31:03
|
|
Reland "Vulkan: Flush texture updates more often"
This is a reland of 8bb7c35c2159de2fa9e9a008679c692edd4402a6
* Added a condition to make sure the previous texture is not immutable
when performing the optimization.
* Fixed the issue where mipmap textures with unequal dimensions were
not flushed.
* Added related tests.
* Added kEnableMutableMipmapTextureUpload, a flag to enable/disable
the feature (enabled by default).
Original change's description:
> Vulkan: Flush texture updates more often
>
> * Added a pointer to the previous texture in ShareGroupVk so we can
> flush the texture updates once we switch to a new texture.
>
> * We check if mip levels 0 and 1 are conformant in terms of
> size, format and number of samples.
>
> * As a part of size check, we also check depths if the texture
> target is either 3D, 2D array, or cube map array. For the former
> two, they have to conform to mip scaling similar to width and
> height. For the latter, the depth represents layer-faces and does
> not change for mipmaps.
>
> * Added a test to ensure the pointer to the previous texture is
> deleted when the corresponding texture is deleted, so the old value
> is not accessed by a future mutable texture.
>
> * Added tests to make sure the mutable texture is uploaded with
> the appropriate mip level attributes, and not uploaded in cases of
> size/format inconsistencies, incompleteness, and no base level.
>
> Bug: b/202744914
> Change-Id: I9c2c1af87a8a49e75d3ad25523436b0cd51a7e81
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3606329
> Reviewed-by: Charlie Lao <cclao@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Bug: b/202744914
Change-Id: I2bdbcd0182a57c18c1a18968396251a2e366731b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3646959
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
0d3ecf46
|
2022-06-24T16:37:17
|
|
Vulkan: Multisample Framebuffer Fetch
Implement Multisample Framebuffer Fetch.
This should fix the deqp failure
dEQP.GLES31/functional_blend_equation_advanced_msaa_colorburn
Bug: angleproject:7351
Bug: angleproject:3586
Bug: angleproject:6195
Bug: b/234173199
Change-Id: Idd7559dcba3d91e36d8f253f1554fb931a7a6775
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3724165
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
12efe5b2
|
2022-06-21T15:43:42
|
|
Cleanup invalid EGL handles only if app called eglTermiate
Maintain set of active threads instead of a global refCount
and free display's invalid EGL resources iff -
1. app previously called eglTerminate on that display
2. there are no more active threads associated with that display
Bug: angleproject:6723
Test: EGLMultiContextTest.RepeatedEglInitAndTerminate*
Test: EGLMultiContextTest.ReuseUnterminatedDisplay*
Change-Id: I868491bbbf0664e9129dcb0d1fa9e2243ef36d82
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3717277
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
5897d6f5
|
2022-07-07T00:00:00
|
|
GL: Add emulateCopyTexImage2D workaround
Using texImage2D + copyTexSubImage2D seems to be
more stable than using copyTexImage2D directly.
Added missing HALF_FLOAT fix to the code path that
requires target texture initialization.
Fixed target texture dimensions when initialization
is not required.
Fixes Apple GPU crashes in:
* CopyTexImageTest.DeleteAfterCopyingToTextures
* conformance/textures/misc/texture-copying-and-deletion.html
* conformance/textures/misc/texture-copying-feedback-loops.html
Bug: angleproject:5038
Bug: angleproject:5360
Bug: chromium:1130703
Change-Id: I5cce087983601e768902f01b3462ec2106e2500a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3749921
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Gregg Tavares <gman@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
b47603e0
|
2022-06-14T05:47:54
|
|
Implement GL_NV_read_depth_stencil
The implementation will perform two readPixels calls, once for each
aspect, and then interleave and pack the result.
Bug: angleproject:4688
Change-Id: I46390df893de50b93e855e9333ffab567215a2bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3702686
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Constantine Shablya <constantine.shablya@collabora.com>
|
|
82ff27bf
|
2022-07-08T12:38:41
|
|
Add Metal to the perf tests
Bug: angleproject:7296
Change-Id: I69cd17c464d48b933c51466bf9d21c278438c4e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3753277
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3b5b7a29
|
2022-07-03T00:00:00
|
|
Caps: Check if ANGLE_texture_multisample is enabled
Updated RenderbufferMultisampleTest.IntegerInternalformat
and adjusted getRenderbufferParameteriv validation.
Bug: angleproject:7479
Change-Id: Ieaeda4e8a8c11c3d1023f40a90639f3ecfcba9bd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3738148
Reviewed-by: Gregg Tavares <gman@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
925ec6b5
|
2022-07-07T00:00:00
|
|
Clamp viewport dimensions on store
Bug: angleproject:7486
Bug: chromium:1130759
Change-Id: I6131baacc940b5df7e33ba10fca8e6e148cb8670
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3751056
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
a4e00c64
|
2022-06-30T00:00:00
|
|
Expose EXT_compressed_ETC1_RGB8_sub_texture on Metal and GL
Updated the test to ensure that this extension
is exposed on Apple GPUs when using Metal.
Updated emulatedEtc1 limitation to hide this extension
when the main ETC1 extension is hidden.
Real WebGL apps cannot enable this extension because
it is not exposed in WebIDL.
Removed bogus entry from IsETC1Format and use the helper
consistently in all validation functions.
Simplified GetNativeCompressedFormat.
Bug: angleproject:7471
Change-Id: I61321fadad7d962358d0fefecd08aaddaedd2ec2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3737762
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0f688d62
|
2022-07-04T15:49:53
|
|
Metal: Allow Surfaces to be created without depth & stencil
Previously, egl::Config with depthSize=0 & stencilSize=0 wasn't
added to DisplayMtl's configSets.
Thus every surface would be created with at least stencilSize=8
although users requested DONT_CARE.
This led to wasteful memory being used to created stencil buffers
even though they were not used.
Fixes:
- dEQP-EGL.*.query_surface.simple.pbuffer.rgba8888_depth_stencil
- dEQP-EGL.*.query_surface.simple.pbuffer.rgba8888_depth_no_stencil
- dEQP-EGL.*.query_surface.simple.pbuffer.rgba8888_no_depth_stencil
Bug: chromium:1329376
Change-Id: Iba13b527640a6b8ce6c4b3a63346b41730a83891
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3739868
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Quyen Le <le.hoang.q@gmail.com>
Reviewed-by: Gregg Tavares <gman@chromium.org>
|
|
81a69da6
|
2022-06-30T09:56:54
|
|
Vulkan: min/mag filters follow chroma filter value
The Vulkan spec states that for those formats lacking support for
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT
the min and mag filter must be equal to the sampler YCbCr conversion's
chroma filter. Having the min/mag filters follow the chroma filter
leads to simpler and more efficient code.
Also update getPreferredFilterForYUV function to return existing
filter value when preferLinearFilterForYUV feature is disabled.
Bug: angleproject:7382
Bug: angleproject:7392
Tests: Texture2DTestES3YUV.TexStorage2DYuvFilterModes*
Tests: ImageTestES3.SourceYUVAHBTargetExternalYUVSampleLinearFiltering/ES3_Vulkan
Change-Id: I550ef8feede1dc6c3a0d8e32f790113e90ef7a4b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3739582
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
916a35dd
|
2022-06-28T14:40:53
|
|
Merge getTempPath and CreateTemporaryFile
Also includes moving these two (and some helpers) to
common/system_utils.h
Bug: angleproject:5095
Change-Id: I7d2fcbd27a67dc13215265ac5b5e8391b15a980b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3733519
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
3e5de4ac
|
2022-07-05T10:22:54
|
|
Add a test that passes image2D handles as function args
Bug: angleproject:7484
Change-Id: I3565bd42deeefa22566d4556a25ec9778c6f8550
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3747098
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
86c735bf
|
2022-07-01T18:27:10
|
|
pls: Rename GL_DISABLED_ANGLE -> GL_DISABLE_ANGLE
Match the other loadOps by using the imperative form.
Bug: angleproject:7279
Change-Id: I9f3a33961f640ea5dff1da7dcea12517cfdcd461
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3741221
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
da984303
|
2022-05-13T21:05:48
|
|
Add a pls test for in-shader coherency
Stores and loads in a single shader invocation should be coherent.
Bug: angleproject:7279
Change-Id: I1a4af6fdbef21f5506bb40c9eb8f5e76c12dd6cd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3654267
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
85b05601
|
2022-06-08T14:05:47
|
|
Add a pls test for load-only storage
It's conceivable that an implementation may need to be careful to
preserve the pls contents when a shader doesn't call pixelLocalStore().
Bug: angleproject:7279
Change-Id: I7b7fb25dced49902fd68685d2f5aa82219ced686
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3696503
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Chris Dalton <chris@rive.app>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
723cc880
|
2022-06-10T17:55:54
|
|
Reland "Reland "Vulkan: Destroy DescriptorSet cache when it becomes invalid""
This is a reland of commit 551a26aeedbfd971d6199c8eddb433a4f4ff871c
Original change's description:
> Reland "Vulkan: Destroy DescriptorSet cache when it becomes invalid"
>
> This is a reland of commit 0779ccbcd427dcb00e53afa6385fb4e8e2377993 with
> the fix for angleproject:7466. When DescriptorPoolhelper gets
> release/destroyed, we ensure all sharedCacheKeys are destroyed.
>
> Original change's description:
> > Vulkan: Destroy DescriptorSet cache when it becomes invalid
> >
> > When a new texture descriptorSet is allocated, we store one reference of
> > the cache key in ProgramExecutableVk and all TextureVks that it
> > associated with. When any of the TextureVk is destroyed or its view
> > destroyed, we immediately erase the descriptorSet from the cache and
> > track GPU progress and free the descriptorSet when it's GPU completed.
> > That way we delete the dead descriptorSet that will for sure never been
> > reused ASAP so that its space is avialable for reuse.
> >
> > Bug: b/235523746
> > Change-Id: Ib1b9662a254eea5a3f410dc6d5d89fca6727a647
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3700226
> > Reviewed-by: Lingfeng Yang <lfy@google.com>
> > Commit-Queue: Charlie Lao <cclao@google.com>
> > Reviewed-by: Ian Elliott <ianelliott@google.com>
> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
>
> Bug: b/235523746
> Bug: angleproject:7466
> Change-Id: I4413bec27ea0ca830010e2ca15036c2e667141c0
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3726964
> Reviewed-by: Ian Elliott <ianelliott@google.com>
> Commit-Queue: Charlie Lao <cclao@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: b/235523746
Bug: angleproject:7466
Change-Id: I6b88b884841c5dbc625ee7e0c52c45af09dec199
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3741027
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
4b745c2b
|
2022-07-01T01:25:36
|
|
Revert "Reland "Vulkan: Destroy DescriptorSet cache when it becomes invalid""
This reverts commit 551a26aeedbfd971d6199c8eddb433a4f4ff871c.
Reason for revert: Blink test failures at: https://ci.chromium.org/ui/p/chromium/builders/ci/WebKit%20Linux%20MSAN/15546/overview
Original change's description:
> Reland "Vulkan: Destroy DescriptorSet cache when it becomes invalid"
>
> This is a reland of commit 0779ccbcd427dcb00e53afa6385fb4e8e2377993 with
> the fix for angleproject:7466. When DescriptorPoolhelper gets
> release/destroyed, we ensure all sharedCacheKeys are destroyed.
>
> Original change's description:
> > Vulkan: Destroy DescriptorSet cache when it becomes invalid
> >
> > When a new texture descriptorSet is allocated, we store one reference of
> > the cache key in ProgramExecutableVk and all TextureVks that it
> > associated with. When any of the TextureVk is destroyed or its view
> > destroyed, we immediately erase the descriptorSet from the cache and
> > track GPU progress and free the descriptorSet when it's GPU completed.
> > That way we delete the dead descriptorSet that will for sure never been
> > reused ASAP so that its space is avialable for reuse.
> >
> > Bug: b/235523746
> > Change-Id: Ib1b9662a254eea5a3f410dc6d5d89fca6727a647
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3700226
> > Reviewed-by: Lingfeng Yang <lfy@google.com>
> > Commit-Queue: Charlie Lao <cclao@google.com>
> > Reviewed-by: Ian Elliott <ianelliott@google.com>
> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
>
> Bug: b/235523746
> Bug: angleproject:7466
> Change-Id: I4413bec27ea0ca830010e2ca15036c2e667141c0
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3726964
> Reviewed-by: Ian Elliott <ianelliott@google.com>
> Commit-Queue: Charlie Lao <cclao@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: b/235523746
Bug: angleproject:7466
Change-Id: Icdde2752c462b7ebbb51d46fd35ce749b5caf377
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3739585
Reviewed-by: Ian Elliott <ianelliott@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
551a26ae
|
2022-06-10T17:55:54
|
|
Reland "Vulkan: Destroy DescriptorSet cache when it becomes invalid"
This is a reland of commit 0779ccbcd427dcb00e53afa6385fb4e8e2377993 with
the fix for angleproject:7466. When DescriptorPoolhelper gets
release/destroyed, we ensure all sharedCacheKeys are destroyed.
Original change's description:
> Vulkan: Destroy DescriptorSet cache when it becomes invalid
>
> When a new texture descriptorSet is allocated, we store one reference of
> the cache key in ProgramExecutableVk and all TextureVks that it
> associated with. When any of the TextureVk is destroyed or its view
> destroyed, we immediately erase the descriptorSet from the cache and
> track GPU progress and free the descriptorSet when it's GPU completed.
> That way we delete the dead descriptorSet that will for sure never been
> reused ASAP so that its space is avialable for reuse.
>
> Bug: b/235523746
> Change-Id: Ib1b9662a254eea5a3f410dc6d5d89fca6727a647
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3700226
> Reviewed-by: Lingfeng Yang <lfy@google.com>
> Commit-Queue: Charlie Lao <cclao@google.com>
> Reviewed-by: Ian Elliott <ianelliott@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: b/235523746
Bug: angleproject:7466
Change-Id: I4413bec27ea0ca830010e2ca15036c2e667141c0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3726964
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4884e9de
|
2022-05-15T22:57:57
|
|
Add a pls test for maximum capacity
Check that it works to render with the maximum supported data payload:
GL_MAX_LOCAL_STORAGE_PLANES_ANGLE
GL_MAX_LOCAL_STORAGE_BYTES_ANGLE
GL_MAX_FRAGMENT_OUTPUTS_WITH_LOCAL_STORAGE_ANGLE
Bug: angleproject:7279
Change-Id: Ifdaff726edee0378b06ce5562001ad3dfe29284b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3654974
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Chris Dalton <chris@rive.app>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
785353fd
|
2022-05-24T12:40:16
|
|
Support Desktop OpenGL context creation in end2end tests
Validation of Desktop GL versions and profile masks is unimplemented.
Bug: angleproject:7360
Change-Id: Ifae94215b6aada895c2b02318a1d05c9515e9b96
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3664916
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
45def3d4
|
2022-06-15T13:49:08
|
|
Remove non-negative offsets restriction in D3D extension
The EGL_ANGLE_d3d_texture_client_buffer extension currently
fails if either EGL_TEXTURE_OFFSET_[X|Y]_ANGLE offsets are
negative. This restriction is unnecessary, as D3D allows
for negative offsets.
Bug: angleproject:7446
Change-Id: I2e258a3a558eae51794f6533e28a0c06532f156d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3715956
Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
fd9301c1
|
2022-06-17T12:25:10
|
|
Capture/Replay: Capture egl surface related calls
Creation from a pbuffer and generalized destruction are
implemented, as well as binding and releasing a TexImage
and making the context current with explicit draw and
read surfaces given.
Bug: angleproject:4964
Bug: angleproject:6180
Bug: angleproject:6512
Change-Id: Id8be6486125d45341905f3aabdbae4366cd568b7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3711741
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
d50b2276
|
2022-06-21T12:05:28
|
|
Reland "Vulkan: Support EGL_ANDROID_front_buffer_auto_refresh"
This is a reland of commit ef60d38ecf12d6663e9ecccacbff9803b1fba7c6
There are no fixes as the revert itself was a speculative one
Original change's description:
> Vulkan: Support EGL_ANDROID_front_buffer_auto_refresh
>
> Cache value of EGL_FRONT_BUFFER_AUTO_REFRESH_ANDROID attribute
> and set swapchain present mode accordingly when recreating
> swapchain in single buffer mode.
>
> Bug: angleproject:7224
> Tests: EGLAndroidAutoRefreshTest.Basic*
> Change-Id: I2dbb92ce5c3fa047e0b02ea9011725311f346027
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3707570
> Reviewed-by: Ian Elliott <ianelliott@google.com>
> Commit-Queue: mohan maiya <m.maiya@samsung.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Bug: angleproject:7224
Bug: angleproject:7465
Change-Id: Ia876ea17169c0f1b3afdb7753570e0b1aca985f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3733521
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
fd256b0d
|
2022-06-24T09:58:22
|
|
Tests: Add Uber trace
Test: angle_perftests --gtest_filter="*uber*"
Bug: angleproject:7462
Change-Id: Ie9a6f4c8afbb94e8484dba50b90bfbc7102a3c00
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3723859
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
b2683a3c
|
2022-06-28T11:30:50
|
|
Document angle_restricted_traces
Bug: angleproject:7410
Change-Id: Iab02ca68d76fdd1d04804c85f76f5c251905907b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3732229
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
3a799ba5
|
2022-05-16T17:26:38
|
|
Fix ValidateES3TexImageParametersBase for glTexImage*D
From the OpenGL ES 3.2 spec: GL_INVALID_VALUE error is generated
if internalformat is not one of the valid formats in tables 8.2 or 8.3.
glTexImage*D should not accept compressed format.
Add check in validation to account for this.
Bug: angleproject:6441
Tests: KHR-GLES31.core.compressed_format.api.invalid_teximage_with_compressed_format
Change-Id: I7152aefa433f42dcc40cf693538639df26c31341
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3648587
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ce4e11d3
|
2022-06-17T12:21:01
|
|
libANGLE: Add a unique ID to the Surface
This is needed when capturing Pbuffer calls.
Bug: angleproject:4964
Change-Id: Id9f35683bf887f08f916de69bbab8c414e5e8872
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3711740
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2a5193f6
|
2022-06-22T17:46:15
|
|
Textures: Allow compressed texture from PBO
Apex Legends is using a pixel unpack buffer to populate a
compressed 3D texture. We had an explicit check in validation
that prevented it, possibly due to emulated formats.
Rather than prevent it altogether, check whether the format
is emulated and proceed if not.
Also add a test that exposes the problem.
Test: PBOCompressedTexture3DTest
Bug: b/236478448
Bug: angleproject:7464
Change-Id: I90105a396bf0a465c62d67910aad2819ba7f8831
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3719161
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
1ae9756e
|
2022-06-22T17:43:15
|
|
Textures: Centralize texture format emulation check
Refactor in order to use the check in multiple places.
Bug: b/236478448
Change-Id: I6df2e0d63c60fa3e8b2d65185fce164be0e7d961
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3719160
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
c775dd49
|
2022-02-03T16:51:03
|
|
Allow list of restricted traces to be overriden in gn args
When focused on profiling a single or a few traces, this speeds up build
and upload to Android.
Bug: angleproject:7404
Change-Id: I5234a6fa7e8167f86b5b33b8db526662a7d65bd9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3438425
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2adb6327
|
2022-05-13T23:09:31
|
|
Add a pls test for memoryless storage
Bug: angleproject:7279
Change-Id: I4a992d04efa06ac99472d5334a1ac50839a13d06
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3654973
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Chris Dalton <chris@rive.app>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
f8690429
|
2022-06-27T13:50:44
|
|
Revert "Vulkan: Destroy DescriptorSet cache when it becomes invalid"
This reverts commit 0779ccbcd427dcb00e53afa6385fb4e8e2377993.
Reason for revert: crashes in blink_web_tests on linux-rel
https://ci.chromium.org/ui/p/chromium/builders/try/linux-rel/1051045/overview
Original change's description:
> Vulkan: Destroy DescriptorSet cache when it becomes invalid
>
> When a new texture descriptorSet is allocated, we store one reference of
> the cache key in ProgramExecutableVk and all TextureVks that it
> associated with. When any of the TextureVk is destroyed or its view
> destroyed, we immediately erase the descriptorSet from the cache and
> track GPU progress and free the descriptorSet when it's GPU completed.
> That way we delete the dead descriptorSet that will for sure never been
> reused ASAP so that its space is avialable for reuse.
>
> Bug: b/235523746
> Change-Id: Ib1b9662a254eea5a3f410dc6d5d89fca6727a647
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3700226
> Reviewed-by: Lingfeng Yang <lfy@google.com>
> Commit-Queue: Charlie Lao <cclao@google.com>
> Reviewed-by: Ian Elliott <ianelliott@google.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: b/235523746, angleproject:7466
Change-Id: I7e5067de2f2add08af1f9804cc2e952238b2e942
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3726097
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
f5aef011
|
2022-06-27T13:11:16
|
|
Skip CreateFramebufferFetchMidRenderPass on Win SwANGLE
Bug: angleproject:7419
Change-Id: I76b4d08f985abbd482ef1d14cde62bcd5bb41a86
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3726096
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
46ddcc44
|
2022-06-27T14:53:31
|
|
Revert "Vulkan: Support EGL_ANDROID_front_buffer_auto_refresh"
This reverts commit ef60d38ecf12d6663e9ecccacbff9803b1fba7c6.
Reason for revert: crashes in end2end tests on Win Intel Vulkan
Original change's description:
> Vulkan: Support EGL_ANDROID_front_buffer_auto_refresh
>
> Cache value of EGL_FRONT_BUFFER_AUTO_REFRESH_ANDROID attribute
> and set swapchain present mode accordingly when recreating
> swapchain in single buffer mode.
>
> Bug: angleproject:7224
> Tests: EGLAndroidAutoRefreshTest.Basic*
> Change-Id: I2dbb92ce5c3fa047e0b02ea9011725311f346027
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3707570
> Reviewed-by: Ian Elliott <ianelliott@google.com>
> Commit-Queue: mohan maiya <m.maiya@samsung.com>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Bug: angleproject:7224, angleproject:7465
Change-Id: Ia48a31124c8e0a3e4bcd4b7dc6f62b0782b42d97
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3726099
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
ef37e863
|
2022-06-27T11:18:49
|
|
Skip TextureSampleShadingTest.Basic on Win Intel Vulkan
Bug: angleproject:7465
Change-Id: If1eff8d5f9ad9c159115c5a8ef7f4155c21e9615
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3726090
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
89e38b57
|
2022-06-22T15:04:08
|
|
Refactor to use ANGLETest vs ANGLETestWithParam
Bug: angleproject:6747
Change-Id: I72ad52d0268eae0e1a401f12f3e94cc5efa402f2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3719002
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
707323c1
|
2022-06-21T18:53:05
|
|
Miscellaneous C++17 refactoring
Bug: angleproject:6747
Change-Id: I792ba74e03145ff6c3cc97d4bff6327ab275a2c7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3719001
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
ef60d38e
|
2022-06-21T12:05:28
|
|
Vulkan: Support EGL_ANDROID_front_buffer_auto_refresh
Cache value of EGL_FRONT_BUFFER_AUTO_REFRESH_ANDROID attribute
and set swapchain present mode accordingly when recreating
swapchain in single buffer mode.
Bug: angleproject:7224
Tests: EGLAndroidAutoRefreshTest.Basic*
Change-Id: I2dbb92ce5c3fa047e0b02ea9011725311f346027
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3707570
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
|
|
4c5e9d47
|
2022-06-21T17:12:56
|
|
Do not defer clear if FBO attachment is AHB image
When application uses Android Hardware Buffer (AHB)
image as the Framebuffer Object (FBO) attachment,
it is possible the app doesn't call glReadPixels
to fetch the FBO color. In this case deferred clears
will not be flushed when the app reads the FBO pixel
color, and the app will read the old FBO color.
This CL fixes the issue by flushing the glClear calls
immediately when any of the FBO color attachments is
AHB image.
Bug: b/236394768
Bug: angleproject:7458
Change-Id: I9151ab57750007c4ac18af39c3fa4abe752ede5e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3715851
Reviewed-by: Lingfeng Yang <lfy@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
79185677
|
2022-06-22T16:22:35
|
|
Translator: Fix validation of struct with same-name struct field
In the following:
```
struct S
{
S s;
};
```
The `S` in the field refers to a previous declaration of `S` in an outer
scope. The validation code mistakenly attempted to ensure it refers to
the same `S` being declared.
Bug: chromium:1337628
Change-Id: I86184be63bc59e608fe5b24369cd4c40b3bb3b31
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3716965
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e50351cb
|
2022-06-10T22:28:58
|
|
Vulkan: Don't close render pass on framebuffer fetch
For applications that use framebuffer fetch in the same RP as
non-fetch programs, we can save some extra RenderPasses by always
creating our RP objects with input attachments enabled. This works
almost identically except for needing to use the images in a
"GENERAL" layout instead of "COLOR_ATTACHMENT_OPTIMAL". According
to partners it is possible to achieve performance parity even with
GENERAL layout.
To remove any potential negative impacts of using the GENERAL layout,
the context enters this always-framebuffer-fetch mode only and as soon
as a framebuffer fetch program is created. Applications that don't use
framebuffer fetch are thus unaffected.
This eliminates 20 render passes in the Genshin Impact trace (out of
about 58). On a Pixel 6 the resulting benchmark score speeds up by
~25%. For Real Racing 3, the speed up is ~30%.
Based on change by jmadill@chromium.org
Bug: angleproject:7375
Change-Id: Ib6c73e95d06229f8545d502b388ee2a55a582323
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3697308
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
91976352
|
2022-06-21T15:41:02
|
|
Use C++17 attributes instead of custom macros
Bug: angleproject:6747
Change-Id: Iad6c7cd8a18d028e01da49b647c5d01af11e0522
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3718999
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0779ccbc
|
2022-06-10T17:55:54
|
|
Vulkan: Destroy DescriptorSet cache when it becomes invalid
When a new texture descriptorSet is allocated, we store one reference of
the cache key in ProgramExecutableVk and all TextureVks that it
associated with. When any of the TextureVk is destroyed or its view
destroyed, we immediately erase the descriptorSet from the cache and
track GPU progress and free the descriptorSet when it's GPU completed.
That way we delete the dead descriptorSet that will for sure never been
reused ASAP so that its space is avialable for reuse.
Bug: b/235523746
Change-Id: Ib1b9662a254eea5a3f410dc6d5d89fca6727a647
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3700226
Reviewed-by: Lingfeng Yang <lfy@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
669d7b75
|
2022-05-25T15:14:35
|
|
Fix validation checks in glCompressedTexSubImage3D
- Add missing ASTC formats to the checklist in
CompressedSubTextureFormatRequiresExactSize.
- Add missing validation checks in ValidateES3TexImageParametersBase
relating to internal formats
Test: KHR-GLES32.core.compressed_format.api.invalid_format_array
Test: KHR-GLES32.core.compressed_format.api.invalid_offset_or_size
Test: *ETC2RGB8_CubeMapValidation*
Test: *CompressedTexture*Test*
Bug: angleproject:6441
Change-Id: Icc80d78602ea997be11606587b43d29e72e48f3a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3670768
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Brandon Schade <b.schade@samsung.com>
|
|
6c8bb1f3
|
2022-06-21T06:06:29
|
|
Metal: Fix invalid iosurface texture after base/max lvl changed
Changing base/max lvl invalidated previously bound iosurface's texture.
This caused conformance/canvas/webgl-to-2d-canvas.html failure.
Fix by rebinding the iosurface's texture after base/max lvl changed.
Bug: chromium:1337324
Change-Id: I28f84b0ac28695221997571f71c476e802cbfac3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3715729
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Peng Huang <penghuang@chromium.org>
|
|
6d3c6370
|
2022-06-18T00:13:56
|
|
Vulkan: Fix 180 and 270 degree rotated resolve
Bug: angleproject:7197
Bug: b/235877059
Change-Id: I4d4ee622f49bb3218449414a1f0dd91fa4e4f541
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3708997
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
72f69e84
|
2022-06-21T16:22:25
|
|
ANGLEPerfTest: Add option to disable GL debug callbacks.
Disable GL debug callbacks on native ARM GLES1.
This fixes native GLES1 replay on Pixel 6 when running debug builds.
Bug: angleproject:7447
Change-Id: I0059c07f4f2fb944e54a5163863b487bc31ab28f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3716584
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
c93b3b32
|
2022-06-10T16:34:00
|
|
Tests: Add Animal Crossing trace.
Test: angle_perftests --gtest_filter="*animal_crossing*"
Bug: angleproject:7306
Change-Id: Ic19adff3915093d86d68f24a5be2c0d2124f2123
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3697532
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
329e1f9e
|
2022-06-04T02:30:56
|
|
Ensure pls results are secure even without barriers
We can't guarantee the client will always use local storage barriers
correctly, but we CAN guard local storage passes such that the results
are only nondeterministic within predictable constraints. This CL adds a
test to ensure local storage is still predictable without barriers, and
that no data is random or leaked from other contexts.
Bug: angleproject:7279
Bug: angleproject:7398
Change-Id: I70da58c8ba79b09f560315df3df956d1721ff6b9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3654265
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Chris Dalton <chris@rive.app>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
21a07210
|
2022-06-22T16:43:44
|
|
Suppress 3 pointcoord tests on Mac Intel Metal
Bug: angleproject:7451
Change-Id: Id03e3a60aca38798ecaec4a74f0b0af64eecc63e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3714602
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
9a6ae13e
|
2022-06-17T23:42:15
|
|
Vulkan: Enable prerotation on multisample tests
Bug: b/235877059
Change-Id: I3a8b8483d7b478e36328ac402539df99e62c18b2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3708996
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
d55e0655
|
2022-06-06T20:24:55
|
|
Add pls tests for fragment reject utilities
GL utilities for rejecting fragments should also prevent stores to pls.
(Namely: discard, return from main, depth/stencil, viewport.)
Bug: angleproject:7279
Bug: angleproject:7398
Change-Id: I91aac62fc7eeb703c7bc1ff1bc0c841700fd83d5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3696676
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Chris Dalton <chris@rive.app>
|
|
714f680f
|
2022-06-08T16:19:20
|
|
Implement GL_EXT_base_instance
* Added the validation functions for
DrawElementsInstancedBaseVertexBaseInstance(),
DrawElementsInstancedBaseInstance(), and
DrawArraysInstancedBaseInstance() according to the specs.
* Added generic implementation for
glDrawElementsInstancedBaseInstance() that can
be called by back-ends.
* Added flags for back-ends so they can enable the extension.
* Added tests for DrawElementsInstancedBaseVertexBaseInstance(),
glDrawElementsInstancedBaseInstance(), and
DrawArraysInstancedBaseInstance().
* Disabled ES3_D3D11__DynamicDraw tests due to
angleproject:7441 bug.
Bug: angleproject:6983
Bug: angleproject:7441
Change-Id: Ia664b01c87bc64c05e29adec23a8f80792eaa037
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3697206
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Faye Zhang <ffz@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
be78a0fe
|
2022-02-22T16:11:51
|
|
Capture/Replay: Fix which sync object is deleted
The test decription says:
Secondary (Texture) Thread:
1. Wait for the mMainThreadSyncObj fence object to be created.
2. Once the fence is created, add a
glWaitSync(mMainThreadSyncObj) to the command stream
and then delete it.
Bug: angleproject:6631
Change-Id: Ia477970f64b4e2e48a0884be5e37144dd2f7bd56
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3480995
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
878bbfaa
|
2022-06-17T11:48:14
|
|
Vulkan: Account for 2DArray textures during robust resource init
Correctly handle layer count and depth when the texture type is
2Darray. Vulkan requires depth of 1 for 2Darray textures.
This also reverts commit c59a22e587e63cbe9942a7f0b78681ee25084cc4.
Bug: angleproject:3189
Bug: angleproject:4691
Bug: angleproject:7389
Bug: angleproject:7438
Test: DXT1CompressedTextureTestES3.CompressedTexSubImage3DValidationPerSlice*Vulkan
Change-Id: Ifb3b9cabd4786dcced750e3c2db90e350d455098
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3712220
Reviewed-by: Lingfeng Yang <lfy@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
c59a22e5
|
2022-06-17T17:28:26
|
|
Skip CompressedTexSubImage3DValidationPerSlice capture_replay
DXT1CompressedTextureTestES3.CompressedTexSubImage3DValidationPerSlice/ES3_Vulkan_SwiftShader
reports VUID-vkCmdCopyBufferToImage-srcImage-00201
Bug: angleproject:7438
Change-Id: Ie9b9e8fdf1292d330ed61cbb4791fc7b3e4ab8ee
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3711749
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
ca96cba9
|
2022-06-16T11:33:14
|
|
Make ReadEntireFileToString return a std::string.
Note: this makes the method unavailable for export from angle_util,
which is probably why it was designed the way it was in the first
place. However, we import the test utils source file as a static
lib into each test executable and test shared module, so it works.
Bug: angleproject:7404
Change-Id: Ia957268882c2b8529643660d7d4f34d142c0dc43
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3708602
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
|
|
5f1d0742
|
2022-06-17T13:11:00
|
|
Increase batch timeout with sanitizer
MemoryBarrierBufferOnlyTest got slow recently
Bug: angleproject:7439
Change-Id: I6f24fa9abb9dcc98ebb8c964860a292e89ec1e19
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3711745
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
6ca9c55e
|
2022-06-13T10:32:39
|
|
Capture/Replay: Allow capturing of external textures
With the support for EGL textures enabled we can actually capture
the texture content.
Bug: angleproject:5822
Change-Id: I386827456d146a54d9790fdd9eadb39b2a6b87e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3702350
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
ea3bd30a
|
2022-06-13T11:44:45
|
|
Capture/Replay: Don't capture tex levels that are out-of-range
Bug: angleproject:6334
Change-Id: I01cb1920154b5fba9554180d2edf5be9dea2b7a2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3702351
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
72e457fe
|
2022-06-03T15:36:01
|
|
Vulkan: Promptly destroy cached framebuffer when it becomes invalid
When Texture gets respecified, the VkFramebuffer cache created out of it
becomes invalid and will never possibly get used. Before this CL, we
never clear such invalid framebuffer objects from the cache. This CL
keeps a reference to the cache key in each attachment and will
immediately destroy the cached VkFramebuffer object when one of the
attachment has become invalid.
Bug: b/234769934
Change-Id: Ib01f6dffe9211084b1ada340081daf905e3f1bef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3682164
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
97a6e581
|
2022-05-30T16:50:26
|
|
Vulkan: Useful implementation of program binaries
ANGLE already serializes the pipeline state for the sake of
OES_get_program_binary. This serialization had limited usefulness
however, since the Vulkan driver hasn't actually created any pipelines
yet (which is a costly part of program creation).
Simultaneously, ANGLE deferred Vulkan pipeline creation to draw time,
which causes hitching.
In this change, a handful of Vulkan pipelines are precreated at
link time; those at least that are sure to create different blobs in the
pipeline cache (different spec consts or SPIR-V generation). These
pipelines are created in the program executable's cache. The cache is
then merged into the shared renderer cache (for potential blob reuse by
other programs).
With this, two goals are achieved:
- Most pipelines created at draw time hit the pipeline cache, avoiding
costly compilation.
- When the program binary is retrieved, the contents of the program
executable's pipeline cache is also returned. On reload, the cache is
recovered, resulting in faster startup.
Bug: angleproject:5881
Change-Id: I46c5451a7d0b16dffd40e44015e094640886880b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3671977
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0bc70e96
|
2022-06-10T22:27:04
|
|
Vulkan: Rename getShareGroupVk to getShareGroup
+ other miscellaneous clean up
Bug: angleproject:7375
Change-Id: I25690860478a2fd181a67ce2b6cb4d7aac7dbaa7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3700197
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8a8b9665
|
2022-06-08T14:54:37
|
|
Vulkan: Prune superseded staged updates in a texture
Add support for pruning superseded staged updates from a client buffer
to the texture. If the staged update count or the cumulative staged
updates' size exceeds a threshold we check for superseded updates and
prune the list.
Bug: angleproject:4691
Bug: angleproject:7389
Test: Texture2DTest.InterleavedSupersedingTextureUpdates*
Texture2DTest.ManySupersedingTextureUpdates*
Change-Id: I4b84f13fa20004a3dc68baa552a0af656d92c0a1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3691092
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
c41dae02
|
2022-06-15T19:41:39
|
|
Further suppress MultithreadingTestES3 hanging tests on Linux SwANGLE
Also MultithreadingTestES3.ThreadB*BeforeThreadASyncFlush.
Bug: angleproject:7431
Change-Id: Ib27afb4ed6862580dbe64c38d3eaca2040f7c1ff
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3707272
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
a471d4bd
|
2022-06-15T14:33:22
|
|
Ensure ANGLERenderTest.mTestParams lifetime using unique_ptr
Passing a reference is fragile, this currently works because factory
outlives the test and so do captures:
https://crsrc.org/c/third_party/angle/src/tests/perf_tests/TracePerfTest.cpp;drc=54e08a5af1f7ca50d5c154a09cc056166a9e49fa;l=2143
but if a temporary or a scoped object is passed to the constructor in
the same spot then this blows up due to use after free, which is easy to
run into accidentally as it is uncommon that f(const T&) would hold onto
the reference and expect it to outlive the function call.
In most cases ANGLERenderTest.mTestParams is initialized with GetParam()
which comes from a base class and that
Bug: angleproject:7410
Change-Id: I32ea8b79ad746129d4088d44fef2a37cc9c81b80
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3697436
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|