|
0cec8f74
|
2020-10-23T13:47:41
|
|
Tests: Add Fate/Grand Order trace
TBR: jmadill@chromium.org,courtneygo@google.com
Test: angle_perftests --gtest_filter="*fate_grand_order*"
Bug: b/171582504
Change-Id: I09b421ee5a245474ed1c797e9049a2f379d8dc11
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495542
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
29ca7186
|
2020-10-25T11:16:29
|
|
Tests: Add Dragon Ball Legends trace
TBR: jmadill@chromium.org,courtneygo@google.com
Test: angle_perftests --gtest_filter="*dragon_ball_legends*"
Bug: b/171652453
Change-Id: I668232f3a1e7ca9663f481fb4246b44fb9333b4a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2497104
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
258f17d6
|
2020-10-23T10:39:25
|
|
Tests: Add World of Tanks Blitz trace
Test: angle_perftests --gtest_filter="*world_of_tanks_blitz*"
Bug: b/171446929
Change-Id: I028bfde50baa583f1ff7bf30ad77fe40026c7ca7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495486
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
9e3eec54
|
2020-10-25T15:44:09
|
|
Revert "Vulkan: Make DescriptorPoolHelper a Resource"
This reverts commit 5dcd29a6e532e4bd617af8767d488120b57f3b2c.
Reason for revert: Breaking the ANGLE -> Chromium roller:
https://chromium-review.googlesource.com/c/chromium/src/+/2496281
Original change's description:
> Vulkan: Make DescriptorPoolHelper a Resource
>
> Descriptor pools need to live as long as the descriptor sets that are
> allocated from them. Using Serials while building a command to judge a
> pool's lifetime is prone to errors, since a command's Serial value
> isn't known until the command is submitted, leading to deleting pools
> too early relative to when the descriptor set is actually used.
>
> This CL updates DescriptorPoolHelper to inherit from Resource, so the
> descriptor pools can be retain()'ed. This allows the Resource's counter
> to indicate that a pool is in use until the command's Serial is known
> and can be recorded to indicate when the command completes. This
> prevents descriptor pools from being destroyed before the command
> completes (while the descriptor sets are still in use), or even before
> the command has been submitted. Destroying a descriptor pool resets all
> of the descriptors that were allocated from it, which can trigger a
> variety of VVL errors depending on when it's erroneously performed.
>
> This CL also adds the necessary retain() calls for the descriptor pools.
> In particular, the pools need to be retained each time a cached
> descriptor set that was allocated from it is re-used. This is relatively
> simple with the current design, since we always clear the descriptor set
> caches whenever a new pool is allocated, so the descriptor pool binding
> is always accurate.
>
> Bug: angleproject:5030
> Test: MultithreadingTest::MultiContextDrawSmallDescriptorPools()
> Change-Id: I5fdeeb46159448dfd679d7169e423048348be5ab
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2437609
> Commit-Queue: Tim Van Patten <timvp@google.com>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
TBR=courtneygo@google.com,timvp@google.com,jmadill@chromium.org
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: angleproject:5030
Change-Id: I0fd6d9a0e1b0989b22368ef98652281288699deb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2497222
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2d6b6026
|
2020-10-25T13:15:09
|
|
Skip flaky tests on Win7/NVIDIA/GLES.
CopyTextureVariationsTest.CopyTexture/ES2_OpenGLES__AToRGBFlipYUnmultiplyAlpha
CopyTextureTest.CopyOutsideMipmap/ES2_OpenGLES
Bug: angleproject:5246
Change-Id: I388df27c690d2a082741f2018690bf2fa24a7594
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2497224
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4968245c
|
2020-10-25T12:58:15
|
|
Adjust TestSuite test timeout values.
This should prevent flakiness in this test.
Bug: angleproject:5245
Change-Id: I841de2cee093ea04b35763314f0a4f5497bcf778
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2497223
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
acd15cae
|
2020-10-11T17:16:34
|
|
Re-land "Link C++ histogram support into angle_perftests."
This is the first step in uploading histogram data instead of a gtest
special format. We importing several new libraries:
- tools/protoc_wrapper
- third_party/protobuf
- third_party/catapult (was already used for Android)
No functional change. Only affects compilation. Protobuf support is
disabled when not available.
Bug: angleproject:5161
Change-Id: I64be0977648993b1012ff0d9e0439c5876697e36
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2497221
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6422d3b4
|
2020-10-25T04:36:53
|
|
Metal: Fix 2D array texture's robust resource init
2D array texture's robust resource init didn't work due to
mtl::InitializeTextureContents() expects one slice at a time, however
TextureMtl::initializeContents() created entire layers index via
GetZeroLevelIndex() before passing to mtl::InitializeTextureContents().
Fixed by changing to GetLayerMipIndex() instead.
Bug: angleproject:2634
Change-Id: Ie8d80d927a987c2b393d913fda8288b6e06e97d0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2494527
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
|
|
9ff58e26
|
2020-09-27T15:27:12
|
|
Metal: Implement sampler object & shadow compare mode
Note: GL_TEXTURE_COMPARE_MODE=GL_NONE is not supported on shadow sampler
for now.
Bug: angleproject:2634
Change-Id: I470bad6322e78ef1408e4334e1e778821df7cbf1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2433332
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
f037cdc4
|
2020-10-23T17:12:21
|
|
Check for precision match of uniforms only if there is static use
There are legacy apps that have uniforms declared with
different precisions across shaders. There is some wiggle
room in the ESSL spec to accommodate such cases as long as
the uniforms are not statically used in shaders. We choose
this lenient interpretation since it allows for more apps
to be compatible with ANGLE.
This change allows BADLANDS to progress past a black screen.
Bug: angleproject:4971
Tests: angle_end2end_tests
--gtest_filter=GLSLTest_ES31.UniformPrecisionMatchValidation*
Change-Id: Icdd2056c8415803eb34f2840b0758e1acf53c23a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495493
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
23c12db2
|
2020-10-24T16:43:27
|
|
Expand Mac XFB suppression.
TransformFeedbackTest.RecordAndDraw/ES3_OpenGL
Bug: angleproject:4992
Change-Id: I42118bba63e32901c3213f9a4ac5b87f2ab209f0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495698
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
9990a814
|
2020-10-24T16:11:54
|
|
Suppress failing Windows 7 test.
ClearTestES3.ScissoredClearHeterogeneousAttachments/ES3_D3D11
Bug: angleproject:5237
Change-Id: I3f3c062e23d77b4621df13ea75f7910ed22ab983
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2496144
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
259d14e5
|
2020-10-24T13:39:45
|
|
Disable timing out Vulkan GLES 1 test.
This test is timing out on a Windows 7 config.
Test: GLES1ConformanceTest.AmbLight/ES1_Vulkan
Bug: angleproject:5234
Change-Id: I4c3ccdeb58d793952aaa44d4902dedf7ce192ec3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2496142
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
37e84651
|
2020-09-27T13:47:36
|
|
Metal: Partially implement EXT_debug_marker
Partially implemented to make it easier to debug.
Only debug group is supported for now.
Bug: angleproject:2634
Change-Id: I029dd4283790fb57a6964aad89c37d092e3378e5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2433331
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1c881dad
|
2020-09-27T01:35:31
|
|
Metal: Implement glRenderbufferStorageMultisample(ANGLE)
Bug: angleproject:2634
Change-Id: Ia4dd477cfbad298994036705b43f3a5877e3c9cc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2433330
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
80d4901a
|
2020-09-26T19:22:00
|
|
Metal: Support integer textures.
Bug: angleproject:2634
Bug: angleproject:5154
Change-Id: Iffea26fe2c683557b4fa7c13fddf3523294b47d4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2433329
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
96714af8
|
2020-10-22T17:28:20
|
|
Vulkan: Dirty pipeline and desc set after mid-RP clear with draw
If UtilsVk::clearFramebuffer issues a draw call on the currently open
render pass (as opposed to starting one itself), ContextVk would be
unaware of the fact that the graphics pipeline and descriptor sets have
been changed.
This change sets the necessary dirty bits for ContextVk to recover from
a UtilsVk::clearFramebuffer call.
Bug: chromium:1141040
Change-Id: I865220fb5b3b78bf4c6b6b2896e57d8a7490c270
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2493184
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
62d010f9
|
2020-10-22T13:31:50
|
|
Vulkan: Assert that attributes in shader info map are active
Attributes that are not active shouldn't have made it to the
ShaderInterfaceVariableInfoMap of gl::ShaderType::Vertex. This change
turns a few ifs to ASSERT in SpirvVertexAttributeAliasingTransformer.
Bug: angleproject:4249
Change-Id: I3da4ea773eae20fe2f126b82f7790e9f2cab0bc1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2491929
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2f7fc0f3
|
2020-10-23T09:58:56
|
|
Tests: Remove standalone duplication.
Also cleans up some compiler warnings that crept in because of how
we structured the test sources in GN. We also no longer need special
handling for the test "main" files.
Must land after http://crrev.com/c/2495003 rolls into ANGLE.
Bug: angleproject:5124
Change-Id: I43ff91b5c8f00214886cd8ac2403702e5026a840
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495281
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4953f03d
|
2020-10-23T22:57:43
|
|
Revert "Link C++ histogram support into angle_perftests."
This reverts commit 7a0263547cda936b320d80c650b69d7522ee1a9f.
Reason for revert: Breaks roll of ANGLE into AOSP:
ERROR at //testing/test.gni:76:5: Assertion failed.
assert(_use_raw_android_executable || enable_java_templates)
^-----
See //third_party/catapult/tracing/tracing/BUILD.gn:35:1: whence it was called.
test("histogram_unittests") {
^----------------------------
See //src/tests/BUILD.gn:262:17: which caused the file to be included.
deps += [ "//third_party/catapult/tracing/tracing:histogram" ]
^-------------------------------------------------
Original change's description:
> Link C++ histogram support into angle_perftests.
>
> This is the first step in uploading histogram data instead of a gtest
> special format. We importing several new libraries:
>
> - tools/protoc_wrapper
> - third_party/protobuf
> - third_party/catapult (was already used for Android)
>
> No functional change. Only affects compilation. Protobuf support is
> disabled when not available.
>
> Bug: angleproject:5161
> Change-Id: Ie28d57d7e142c437ebd51463ce3e2cafd87468d1
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482294
> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
> Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
TBR=ynovikov@chromium.org,bsheedy@chromium.org,jmadill@chromium.org
Change-Id: I62c4b926cbe82d10e460b28b5f864521e2b1f8ee
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:5161
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495549
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
6a35cadc
|
2020-10-23T17:14:44
|
|
Suppress VUID-vkCmdDraw-None-02698 validation
A bug in Vulkan-ValidationLayers is stopping changes from being rolled
into ANGLE. Suppress this warning for now, until the root cause is
addressed.
Bug: angleproject:5191
Change-Id: I7c6cb65055bdc7b2eb3679f26f09530b1cff3775
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495543
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
31868665
|
2020-10-23T10:54:02
|
|
Test Runner: Only run watchdog in child processes.
For single test execution we don't need to be running the watchdog
thread. This only serves to cause timeouts in slow running tests.
Adds a new method to keep the --batch-id argument in the list of
parameters so other functions can process them.
Bug: angleproject:5124
Bug: angleproject:5218
Change-Id: I958230149b7d79830802cd55f67f0190de607200
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495282
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e86b4257
|
2020-10-21T13:28:10
|
|
Vulkan: Refactor how finishToSerial() retires commands.
This cleans up some of the logic around command completion. We no longer
query each Fence in order after a finishToSerial call. Instead we clear
out all the commands that have been completed up to the latest Fence.
Also cleans up ordering code. Because we now have a linear ordering of
Serials we can validate the ordering is "good".
Attempt at solving a suspicious ASSERT firing on AMD Win7.
Bug: angleproject:5198
Change-Id: I7750eff7f8d3aff397e7880f997ad86c9bf7d7a8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2490342
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
cb5c0b01
|
2020-10-21T00:12:57
|
|
Vulkan: Drop RelaxedPrecision from aliased attributes
Take the following example:
attribute mediump vec4 a; // location 0
attribute highp vec2 b; // location 0
f(b)
This was previously translated to:
attribute mediump vec4 a; // location 0
f(a.xy)
That difference here is that b was previously highp, but a.xy is
mediump. This change drops RelaxedPrecision from attributes so that
they are all highp.
Note that the temporary SPIR-V ids these attributes are loaded into
still retain their RelaxedPrecision decoration (if any), and the
precision of calculations in the shader is not increased by this
change.
Bug: angleproject:4249
Change-Id: Idca0fc667ad6e36ddf428b65ea03706272a9ed9c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2488131
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
de3a7180
|
2020-10-23T10:54:46
|
|
Vulkan: Reduce scope of clear workaround
Forcing draw for clear only appears to be needed on Pixel 2.
Test: angle_perftest --gtest_filter="*free_fire*"
Bug: angleproject:4836
Change-Id: I4446adc04a8e5cf7b0bfef68ec70122e847755a6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495484
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5ffd778e
|
2020-10-23T13:16:50
|
|
Make capture replay tests exectuable.
This makes them runnable directly on Linux.
Bug: angleproject:5134
Change-Id: Icf5ccf9d82b8cf09b16c5c60312e33752a9724e4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495288
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
33e30205
|
2020-10-17T19:03:45
|
|
Vulkan: sRGB cleanups.
A few fixes to how we check for the sRGB override in the
TextureVk class. In at least one instance there was a potential
edge case where in syncState we might not create the Texture
with the mutable bit the second time through the function.
Bug: angleproject:5176
Change-Id: I4f1ca6e469b10514c3a0de3120be9ade62568084
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482292
Reviewed-by: Mohan Maiya <m.maiya@samsung.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a7c16c2d
|
2020-10-21T22:54:56
|
|
Trace Tests: Print trace download progress.
As the hook runs, we'll now be printing each trace's
progress. This uses some tricks with Python's subprocess.
Bug: angleproject:5210
Change-Id: I4e776a89c2b3e06ba67f9a82969aa394b24208d5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2491104
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
5dcd29a6
|
2020-09-29T14:15:51
|
|
Vulkan: Make DescriptorPoolHelper a Resource
Descriptor pools need to live as long as the descriptor sets that are
allocated from them. Using Serials while building a command to judge a
pool's lifetime is prone to errors, since a command's Serial value
isn't known until the command is submitted, leading to deleting pools
too early relative to when the descriptor set is actually used.
This CL updates DescriptorPoolHelper to inherit from Resource, so the
descriptor pools can be retain()'ed. This allows the Resource's counter
to indicate that a pool is in use until the command's Serial is known
and can be recorded to indicate when the command completes. This
prevents descriptor pools from being destroyed before the command
completes (while the descriptor sets are still in use), or even before
the command has been submitted. Destroying a descriptor pool resets all
of the descriptors that were allocated from it, which can trigger a
variety of VVL errors depending on when it's erroneously performed.
This CL also adds the necessary retain() calls for the descriptor pools.
In particular, the pools need to be retained each time a cached
descriptor set that was allocated from it is re-used. This is relatively
simple with the current design, since we always clear the descriptor set
caches whenever a new pool is allocated, so the descriptor pool binding
is always accurate.
Bug: angleproject:5030
Test: MultithreadingTest::MultiContextDrawSmallDescriptorPools()
Change-Id: I5fdeeb46159448dfd679d7169e423048348be5ab
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2437609
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
7a026354
|
2020-10-11T17:16:34
|
|
Link C++ histogram support into angle_perftests.
This is the first step in uploading histogram data instead of a gtest
special format. We importing several new libraries:
- tools/protoc_wrapper
- third_party/protobuf
- third_party/catapult (was already used for Android)
No functional change. Only affects compilation. Protobuf support is
disabled when not available.
Bug: angleproject:5161
Change-Id: Ie28d57d7e142c437ebd51463ce3e2cafd87468d1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482294
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
cfd70489
|
2020-10-22T10:26:19
|
|
Re-enable dEQP-EGL.functional.fence_sync.*
Tests appear to pass now. Going to be changing functionality in this
area so prefer to have them enabled.
Bug: b/154030730
Bug: angleproject:3271
Change-Id: I1c0ffe40b726943c146fa06aa16de79d434760bc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2493182
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
c8542d28
|
2020-10-22T14:10:32
|
|
Temporarily duplicate standalone tests.
This switches 'angle_*_tests' to be identical to
'standalone_angle_*_tests'. Once rolled into Chromium we can
then switch back to using 'angle_*_tests' and finally remove
'standalone_angle_*_tests' entirely.
Must land after https://crrev.com/c/2490987
Bug: angleproject:5124
Change-Id: I1f4794d429733a43113dcba6aaaba0c047607e50
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2491932
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
097f307e
|
2020-10-22T10:26:19
|
|
Vulkan: Fix segv referencing contextVk
Tests dEQP-EGL.functional.fence_sync.* can cause SyncHelper::clientWait
to be called with a null contextVk which we were trying to deference to
get to the renderer. We have a pointer to the renderer already so just
use that.
Bug: b/154030730
Change-Id: If64ec2c960f39b893d2e47a11638d16f830aecfd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2493181
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e89c8f7c
|
2020-10-22T13:16:29
|
|
Add run-time check in EVENT() to disable debug markers
To avoid a large performance impact from adding Vulkan debug-util
markers for every GLES entrypoint, the EVENT() macro needs a run-time
check that avoids constructing a ScopedPerfEventHelper object.
Test: angle_perftests -v --local-output --gtest_filter="TracePerfTest.Run/*nba*"
Bug: b/170249632
Change-Id: I422111cdf6f6f713800e7ac587e66582bd00359f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2491009
Commit-Queue: Ian Elliott <ianelliott@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
fbec291e
|
2020-10-21T19:32:38
|
|
Allow rendering to half float in ES2 contexts when possible
According to the EXT_color_buffer_half_float spec:
"Dependencies on OES_texture_half_float
If OES_texture_half_float is not supported, then all references to
RGBA16F_EXT, RGB16F_EXT, RG16F_EXT, R16F_EXT, HALF_FLOAT_OES and
half should be ignored.
If OES_texture_half_float is supported, textures created with:
<internalformat> = RGBA
<format> = RGBA
<type> = HALF_FLOAT_OES
are renderable."
This fixes 4 viz_unittests when running with SwANGLE:
All/GLI420ConverterPixelTest.ScaleAndConvert/0
All/GLI420ConverterPixelTest.ScaleAndConvert/1
GLScalerPixelTest.Example_ScaleAndExportForScreenVideoCapture
GLScalerPixelTest.ScalesWithColorManagement
The original attempt at landing this change
(https://chromium-review.googlesource.com/c/angle/angle/+/2489726)
was reverted due to dEQP failures on the Metal backend. After some
investigation, it was decided to simply disable the 2 offending
tests for now.
Bug: angleproject:5174
Change-Id: Id1e382b72d91109e4718c729cc6c5f0a0f413d7d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2491930
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexis Hétu <sugoi@chromium.org>
|
|
9c8da026
|
2020-10-22T10:46:00
|
|
Revert "Tests: Add FIFA Mobile trace"
This reverts commit 2e1091e0ef699a39662f210abcb5af69750dcb38.
Reason for revert: Potentially flaky results, http://anglebug.com/5215
Original change's description:
> Tests: Add FIFA Mobile trace
>
> Test: angle_perftests --gtest_filter="*fifa_mobile*"
> Bug: b/171421051
> Change-Id: If50c6387a1a49fb6946d20279caf6470544a2b11
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2490279
> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Cody Northrop <cnorthrop@google.com>
TBR=jmadill@chromium.org,syoussefi@chromium.org
Bug: angleproject:5215
Change-Id: I6a332b126c6c54f189fd451725957d288ab6b76b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2491113
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
0f2542e1
|
2020-10-21T00:38:40
|
|
Vulkan: Validate SPIR-V transformer at link time
Using an ASSERT, the SPIR-V transformer is run at link time to catch
bugs in tests that link but don't draw.
Bug: angleproject:4249
Change-Id: Icbeeb6e968f9901ba003918b1dd1d2eef0792469
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2488227
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
883276cc
|
2020-10-21T16:20:35
|
|
Fix end2end tests VertexAttribute* failure
VertexAttributeTests used 'mediump' precision to sample ushort
with 65533/65534/65535 which exceed the range defined in ESSL Spec.
(Spec "4.5.2 Precision Qualifiers")
Change precision of attribute 'test' and 'expected' to 'highp'
for numbers that exceed the minimum range.
Bug: angleproject:5211
Change-Id: I01e5c999ec43d17a7390835d2ac88ce2bc0b4c5b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2491621
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1c7f0284
|
2020-10-21T01:40:08
|
|
Vulkan: Fix invalid clamping of ES3 clear stencil values
Added 3 new end2end tests
Bug: angleproject:5202
Change-Id: I95f9ffd989105f5bd3283676d6fa46e904503369
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2488481
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
d7475437
|
2020-10-20T15:04:18
|
|
Vulkan: Support vertex attribute aliasing for matrix types
This change builds on vertex attribute aliasing SPIR-V tranformation for
non-matrix types to add support for matrix attribute types. This is
done by turning every matrix attribute declaration into multiple vector
attribute declarations, and reusing the same mechanism for resolving
aliasing between non-matrix types.
Take the following example:
attribute mat4 a; // location 0
attribute vec3 b; // location 1
attribute mat3 c; // location 1
attribute vec4 d; // location 2
The shader is modified as such:
attribute vec4 a_0; // location 0
attribute vec4 a_1; // location 1
attribute vec4 a_2; // location 2
attribute vec4 a_3; // location 3
attribute vec3 c_0; // location 4
attribute vec4 d; // location 5
attribute vec3 c_2; // location 6
mat4 a;
mat3 c;
and in the beginning of main(), the following code is inserted:
a = mat4(a_0, a_1, a_2, a_3);
c = mat3(c_0, d.xyz, c_2);
The shader continues to use a and c as before.
Bug: angleproject:4249
Change-Id: Idfcb8c6037ca0c1f21de8203d7e2a1b66fed6e7e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2488128
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
2e1091e0
|
2020-10-21T14:53:40
|
|
Tests: Add FIFA Mobile trace
Test: angle_perftests --gtest_filter="*fifa_mobile*"
Bug: b/171421051
Change-Id: If50c6387a1a49fb6946d20279caf6470544a2b11
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2490279
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
ad222d1c
|
2020-10-20T16:29:08
|
|
Tests: Add KartRider Rush+ trace
Test: angle_perftests --gtet_filter="*kartrider_rush*"
Bug: b/171337677
Change-Id: I9a248ecf51e296a2b894b0951538842a7efde046
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2490277
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
3fb490a7
|
2020-10-19T23:33:47
|
|
Vulkan: Faster check for vertex attribute aliasing
In preparation for matrix attribute aliasing support, where
CalculateAliasingAttributes would get a bit more complex.
This change adds a fast-check function to determine if there is any
aliasing at all.
Bug: angleproject:4249
Change-Id: Ib2aa08b2da29a194baa905ba8f9aa2cdef0ae2c5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2488127
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8feb5c82
|
2020-10-20T15:49:13
|
|
Tests: Add Marvel Contest of Champions trace
Test: angle_perftests --gtest_filter="*marvel_contest_of_champions*"
Bug: b/171334313
Change-Id: Ia1195a5647ad2805e3cabd23c15719eb1ebc3534
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2487764
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
032431a1
|
2020-10-21T19:32:38
|
|
Revert "Allow rendering to half float in ES2 contexts when possible"
This reverts commit 1dc0d3945e7f11506b9e3239bba7189d66a25a50.
Reason for revert: Causes a failure on the bots. See: http://anglebug.com/5206
Original change's description:
> Allow rendering to half float in ES2 contexts when possible
>
> According to the EXT_color_buffer_half_float spec:
>
> "Dependencies on OES_texture_half_float
>
> If OES_texture_half_float is not supported, then all references to
> RGBA16F_EXT, RGB16F_EXT, RG16F_EXT, R16F_EXT, HALF_FLOAT_OES and
> half should be ignored.
>
> If OES_texture_half_float is supported, textures created with:
>
> <internalformat> = RGBA
> <format> = RGBA
> <type> = HALF_FLOAT_OES
>
> are renderable."
>
> This fixes 4 viz_unittests when running with SwANGLE:
> All/GLI420ConverterPixelTest.ScaleAndConvert/0
> All/GLI420ConverterPixelTest.ScaleAndConvert/1
> GLScalerPixelTest.Example_ScaleAndExportForScreenVideoCapture
> GLScalerPixelTest.ScalesWithColorManagement
>
> Bug: angleproject:5174
> Change-Id: If8623b1edbc8f0bac83513ea202ef49ad388101c
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2489726
> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
TBR=sugoi@chromium.org,geofflang@chromium.org,sugoi@google.com
Change-Id: Iab2df8ac563661fcf270425408b17e7bbe48a255
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:5174
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2490820
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Commit-Queue: Alexis Hétu <sugoi@chromium.org>
|
|
25bbf5d7
|
2020-04-03T11:58:13
|
|
GL: Use ANGLE_GL_TRY when setting pixel pack and unpack state.
Bug: angleproject:3020
Change-Id: Ifd36973d66c850d0d0520d9721ab9e5294489b39
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2134424
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
1dc0d394
|
2020-10-21T10:09:10
|
|
Allow rendering to half float in ES2 contexts when possible
According to the EXT_color_buffer_half_float spec:
"Dependencies on OES_texture_half_float
If OES_texture_half_float is not supported, then all references to
RGBA16F_EXT, RGB16F_EXT, RG16F_EXT, R16F_EXT, HALF_FLOAT_OES and
half should be ignored.
If OES_texture_half_float is supported, textures created with:
<internalformat> = RGBA
<format> = RGBA
<type> = HALF_FLOAT_OES
are renderable."
This fixes 4 viz_unittests when running with SwANGLE:
All/GLI420ConverterPixelTest.ScaleAndConvert/0
All/GLI420ConverterPixelTest.ScaleAndConvert/1
GLScalerPixelTest.Example_ScaleAndExportForScreenVideoCapture
GLScalerPixelTest.ScalesWithColorManagement
Bug: angleproject:5174
Change-Id: If8623b1edbc8f0bac83513ea202ef49ad388101c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2489726
Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
089ef0fa
|
2020-10-14T11:31:56
|
|
Expose glGetTexLevelParameter{if}v before ES 3.1.
Add a new extension, ANGLE_get_tex_level_parameter which allows
users to query texture size and format information before ES 3.1.
This is very useful for re-using existing textures instead of
re-allocating.
Bug: chromium:1132514
Change-Id: I71f6bad8bdacb91875cc81b4884d4c3099235f3f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2469959
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
cd88bccf
|
2020-10-21T08:44:32
|
|
Test Runner: Command line sharding args override env.
Previously ANGLE would error out when both the enviornment and
the command line args are specified at the same time. Because
the perf bots use both at once we need to handle the conflict
in the same way as the prior test runner does. In this case
the command line takes precedence over the environment.
Bug: angleproject:5124
Change-Id: I1ba765b4e75759922bf9fe2db9f153cfc5995f85
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2489722
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
fb44e93b
|
2020-10-20T10:54:48
|
|
Disable TransformFeedbackTest.NonExistentTransformFeedback*
This test hase begun failing consistently on the Arm based Apple DTK.
This adds a skip to the test for that config.
Test: TransformFeedbackTest.NonExistentTransformFeedbackVaryingWithGLPrefix:/ES3_OpenGL
Bug: chromium:1140113
Change-Id: I97612a073db20c99883908a19ac0013101061da0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2486100
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
553726a4
|
2020-10-20T11:29:17
|
|
Vulkan: Add OES_shader_multisample_interpolation extension
Addition of 'sample' qualifier keyword and 'interplateAt*'
fragment shader builtin functions with autogen
Bug: angleproject:3589
Change-Id: If358eb371fbcefffa715c8da4ba5e96eefaf6f52
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2477904
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d591ddff
|
2020-10-08T10:36:21
|
|
Tests: Add Free Fire trace
Test: angle_perftests --gtest_filter="*free_fire*"
Bug: b/168049517
Change-Id: Ide772454fe5c602d92bf9c476d33da420b9dfa14
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2461350
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
e2147a58
|
2020-10-20T09:07:22
|
|
Add missing condition_variable include.
This was breaking the ANGLE build in Skia.
Bug: angleproject:5195
Bug: angleproject:5168
Change-Id: I931150922114df5b381e6d226e3fcaab4c15c2e6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2485580
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
9091de43
|
2020-10-17T00:33:57
|
|
Vulkan: Support vertex attribute aliasing for non-matrix types
Initial implementation that supports float and vecN types. In this
case, every attribute occupies a single location. When two attributes
alias, they are either the same size, or one is bigger than the other.
Take the following example:
attribute vec3 a; // location 0
attribute vec3 b; // location 0
attribute vec4 c; // location 1
attribute vec2 d; // location 1
The shader may access either a or b (but not both). Similarly, it can
access either c or d (but not both). The shader can be modified such
that:
- f(b) is replaced with f(a).
- g(d) is replaced with g(c.xy).
- b and d are removed
As a result, there are no longer any aliasing attributes. In other
words, when attributes alias, the larger attribute can be retained and
the other attributes can be replaced by selecting the appropriate number
of components from the retained attribute.
Bug: angleproject:4249
Change-Id: I7c5461f777d659c92977e2572091a8ce5e422704
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482286
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
26cd1cc6
|
2020-10-18T11:44:27
|
|
Perf Tests: Add stdout printing arg to bot mode.
This can be useful for debugging and also for perf tests. The perf
tests output gets scraped from stdout.
Bug: angleproject:5124
Change-Id: Id5005df3f2b66be9497a9ba422abd47b95a1a330
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2486097
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
9d160b0b
|
2020-10-16T08:31:18
|
|
Tests: Add Brawl Stars trace
Test: angle_perftests --gtest_filter="*brawl_stars*"
Bug: b/171043467
Change-Id: Ide04fbbfd69145554c6dbb544d6ee4daa51df9cc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2481154
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
637786a9
|
2020-10-15T16:23:12
|
|
Tests: Add Arena of Valor trace
Test: angle_perftest --gtest_filter="*arena*"
Bug: b/170994774
Change-Id: I44c81c539da975fefcf085d6fc12f8508826277f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2477440
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
d8529380
|
2020-10-20T13:55:23
|
|
Generate CONTEXT_LOST errors on every GL call.
The robustness spec states that all GL calls should generate context
lost errors when the context is lost. This behaviour was lost due to
some context lookup optimizations but can be re-added at no cost by
updating the autogenerated entry points.
Updated the ContextLostTest to cover the repeated error generation
behaviour.
Bug: chromium:1137241
Change-Id: I0b8d1cf4d2a37f13c466c8dd0e66edfe852f7e59
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2488180
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
32f0dd6a
|
2020-10-15T10:08:51
|
|
Add Queries and Setters for resource initialization state.
There are cases where we know that the next draw operation will fully
initialize a texture/renderbuffer and we can save the robust resource
init cost.
Default all resource init state to Initialized, any redefinition will
set it back to MayNeedInit.
After setting an individual texture image to initialized, check if
all images are now initialized and update the TextureState::mInitState
to match. The cost of this check is only performed after initializing
an image and allows future init checks to be faster.
Bug: chromium:1132514
Change-Id: Ia23664ae162559d1614f1eb5643e24a491d87f7f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2475456
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ed876984
|
2020-10-03T11:00:36
|
|
Vulkan: functionally complete worker thread
Working on enhancing worker thread to completely own primary command
buffers. This will include not only processing SCBs from main thread
into a primary, but also submitting those command buffers to the queue.
The CommandProcessor is a vk::Context so it can handle errors in the
worker thread. When the main thread submits tasks to the worker
thread it also syncs any outstanding errors from the worker.
Include asynchronousCommandProcessing feature that will control
whether the worker thread task does it's work in parallel or not. If
false, we wait for the thread to complete it's work before letting the
main thread continue. If true, the thread can execute in parallel with
the main thread.
Bug: b/154030730
Bug: b/161912801
Change-Id: I00f8f013d6cbb2af12a172c4f7927855db2f0ebf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2328992
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2882e1af
|
2020-10-20T09:45:23
|
|
Fix missing validation cache update on VAO binding.
Bug: chromium:1139398
Change-Id: I85a0d7a72bc2c97b07ebc5f86effd8e36aefd544
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2485581
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6e125937
|
2020-10-20T10:30:14
|
|
Suppress timing out GLES 31 tests on GL/Linux.
dEQP-GLES31.functional.compute.indirect_dispatch.gen_in_compute.large_offset
dEQP-GLES31.functional.compute.indirect_dispatch.gen_in_compute.large_offset_multiple_invocations
Bug: angleproject:5197
Change-Id: I379799565850fd2002c1f708bfa58d1e886c7fba
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2485284
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1bf0b917
|
2020-10-16T12:13:24
|
|
Vulkan: Pull generic SPIR-V transform functionality into base class
This is in preparation for adding another transformation for vertex
attribute aliasing. This transformation is not merged with the existing
one, because in practice vertex attribute aliasing is rare so this
transformation would be rarely done. This makes sure the efficiency of
the main transformer is not affected, and avoids complicating it
further.
Bug: angleproject:4249
Change-Id: I9c3f6cefbec99a355596579f4471d7ada810927e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482285
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c55cd6b4
|
2020-10-14T23:06:27
|
|
Vulkan: Remove dead path in clear
If the clear is not mid render pass, clearWithLoadOp was used to either:
- modify the current render pass loadOps, assuming no rendering has been
done, or
- defer the clears by staging them in the attachment images.
The former path however is dead code. It's impossible to start the
render pass without recording any commands. In other words, if the
render pass has already started, the clear must be mid RP.
Bug: angleproject:4836
Change-Id: Idb1cb37b8a0e56b897ac69cf435f9a52be4bd2f4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2473764
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c90faa71
|
2020-10-18T20:38:54
|
|
Metal: Auto detect parent layer's contentsScale change
Currently when user passes a CALayer to create WindowSurface, Metal
back-end will create a child CAMetalLayer to render to.
However, when this CALayer's contentsScale is changed, the
CAMetalLayer's contentsScale wasn't updated accordingly.
This CL fix this.
Bug: angleproject:2634
Change-Id: I20411aa8b81a30c6353e595680f1de00a4a24da7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482407
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
|
|
3d6df964
|
2020-10-19T14:38:23
|
|
Metal: Skip redundant clamp of stencil ref value
Bug: angleproject:2634
Change-Id: I36b2303366f67dc7d35489dc44c495db4ab530c3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2483844
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
ba12a1d3
|
2020-10-18T17:20:58
|
|
Metal: Remove no longer needed precompiled shaders
Bug: angleproject:5186
Change-Id: Ic5a029ba20852843b909cec26517c03eb738bff5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482406
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
|
|
f0dcaca2
|
2020-10-08T22:44:22
|
|
FrameCapture: Image Texture binding in MEC
Test: LEGO MEC
Bug: b/161716126
Bug: angleproject:4048
Change-Id: If5890638dfc6a8cc07aece584a5742b055007db0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2462164
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
1323e2fd
|
2020-10-17T18:17:33
|
|
FrameCapture: Implement Gen/DeleteVertexArraysOES
Test: FIFA Mobile MEC
Bug: angleproject:4048
Change-Id: I9725c9b9aba98a10ef2fa11b05f0459b3d8cc9d0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2486404
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
8061002b
|
2020-10-16T11:24:04
|
|
Perf tests: Bump replay ES version to 3.1
Required to run traces of newer apps.
Test: LEGO MEC
Bug: b/161716126
Bug: angleproject:4048
Change-Id: Ie135fc1ce461460e1bc0978ceca4ba8c9cff68e8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2481153
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
0d3b84ef
|
2020-10-17T17:56:52
|
|
FrameCapture: Fix GLSync creation for MEC on 64-bit
GLSyncs created during MEC were getting garbage for the high order
bits when when run on 64-bit applications. That's because the
iterator is 32-bit and was being bitcast to 64-bit. This change
zero extends the iterator before converting to a GLSync.
Test: Lots of traces were hitting this
Bug: angleproject:4048
Change-Id: Ia22da945e014de0caad2a3663a33f996bb781b19
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2486403
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
5eebf3a7
|
2020-10-18T11:44:27
|
|
Perf Tests: Call finish every step in calibration.
Calibration is only supposed to take one second of warmup time.
Instead we were queuing up a large amount of GPU work and then janking
on the finish call at the end of calibration.
Fix this by calling glFinish repeatedly during calibration.
Bug: chromium:1136900
Change-Id: Idb2fefe17fcb9acbe688cff5a36f051732fc5b59
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2483462
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8f57f60f
|
2020-10-08T22:38:25
|
|
Add ES 3.1 check to ValidateBindImageTexture
This fixes a crash that occured in the Lego trace when run with
an ES 3.0 context.
* At the end of each frame it unbinds all the image units using
glBindImageTexture, which is an ES 3.1 call.
* During validation, we verify things using ANGLE's internals,
but they are only set up when the context is >= ES 3.1.
* This led to a crash.
* The fix is to check the ES context early and bail, which
aligns with other entry points.
Test: LEGO MEC
Bug: b/161716126
Bug: angleproject:4048
Change-Id: I9aee2ee173436f5de5062758a70e0909f6fc9a7f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2462163
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
babce049
|
2020-10-16T16:32:17
|
|
iOS: Disable worker contexts, and use sized formats
Kimmo Kinnunen made this change downstream in WebKit.
https://bugs.webkit.org/show_bug.cgi?id=215908
Disable ANGLE workers until EAGL implementation is more complete.
Current implementation fails to compile any shader, since the
compilation happens in the worker thread and worker EAGL context
which does not use the same sharegroup as the main context.
The shader objects are created in the main context but the shader
source setting and compilation happens in the worker context.
EAGL needs a flush between state changes, and adding that
correctly is a bigger change to be done later.
Use sized formats when calling [EAGLContext -texImageIOSurface]
from EGL_ANGLE_iosurface_client_buffer code. The texImageIOSurface
accepts parameters with glTexImage2D logic. On ES3, some of the
internal formats must be sized formats. The EAGLContext instantiated
by ANGLE is ES3, even if the ANGLE context would be ES2.
No tests added since this should be caught with the many video
related tests. It's unclear why this is not the case -- at
least on real hw. This is to be investigated later, too.
Bug: angleproject:5104
Change-Id: Iebf1a04488c5137d55a278d973a34511e8dc46bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2481850
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
|
|
3c8f582b
|
2020-06-19T17:39:08
|
|
Build fixes for MacCatalyst
WebKit needs these preprocessor directives because they can't
selectively compile files per platform.
Bug: angleproject:4613
Change-Id: Ie549cd734c74b50666f3d7e142b885bc78077fc2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2255701
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
916ad955
|
2020-10-16T16:22:52
|
|
No need to check for Catalyst in the iOS build
Dean Jackson made this change downstream in WebKit.
https://bugs.webkit.org/show_bug.cgi?id=215249
Bug: angleproject:4938
Change-Id: Ic5abbf56dabbafdb88e9dae0ecffa36f75329abb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2481617
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
|
|
4720cfb7
|
2020-10-19T19:02:56
|
|
Disable TransformFeedbackTest.SwitchProgramBeforeDraw/ES3_OpenGL
This test hase begun failing consistently on the Arm based Apple DTK.
This adds a skip to the test for that config.
Test: TransformFeedbackTest.SwitchProgramBeforeDraw/ES3_OpenGL
Bug: chromium:1140113
Change-Id: Ie9499f4f90327429c02b3e690d4059838ad835d0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2485296
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
61ab3819
|
2020-10-19T14:50:38
|
|
Expand ProgramBinaryTest.SRGBDecodeWithSamplerAndTexelFetchTest skip
Also Mac ARM64 GL and Nexus 6P GLES.
Bug: angleproject:4991
Change-Id: Ie4b1e76c2a804256970829431e8d85a140b22387
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2486091
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
2072ce50
|
2020-10-18T16:44:09
|
|
Rename "NonLinear" to "SRGB".
In OpenGL parlance there are really only two color spaces:
Linear and SRGB. Vulkan is much more complicated with linear and
nonlinear SRGB, and multiple non-SRGB linear color spaces. Keep
things simple by working with OpenGL nomenclature.
Bug: angleproject:5176
Change-Id: Ia730a9a666a2b3325194b86dc588e7fd226c4183
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2483466
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
e5590288
|
2020-10-18T12:40:14
|
|
Rename "texelFetchInvoked" to "texelFetchStaticUse".
Technically more precise because something could be statically used
and never invoked. Also more consistent with the spec.
Bug: angleproject:5176
Change-Id: I70dd0787d67d9f046b7359abb24107cb430f5cae
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2483465
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
00a49766
|
2020-10-14T10:27:56
|
|
EGL: Implement EGL_KHR_reusable_sync
Add extension string and flags
Add EGLReusableSync files to libANGLE and gni
Test: angle_deqp_egl_tests
--deqp-case=dEQP-EGL.functional.reusable_sync.*
--deqp-case=dEQP-EGL.functional.fence_sync.*
Bug: angleproject:5168
Change-Id: I967a10cf387047c9ee1963acfc854a8288325a8e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2477293
Commit-Queue: Jeff Vigil <j.vigil@samsung.com>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5f7eeb93
|
2020-10-17T11:52:40
|
|
Add isSRGB flag to angle::Format.
Bug: angleproject:5176
Change-Id: I85fc78206456439ba7dab55c093187fb94364823
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482290
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
6d3d381e
|
2019-08-23T16:45:05
|
|
GL: Update BufferGL to use ANGLE_GL_TRY.
Refactor the check for keeping shadow data into a feature so it's only
initialized once.
Bug: angleproject:3020
Change-Id: I45575c246afa7cd54e3a07d7a8464f4d4f45b3be
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1769064
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
556d812a
|
2020-10-18T11:48:45
|
|
Test Runner: Disable watchdog when debugger attached.
Bug: angleproject:3162
Change-Id: I3685a4fe068b6e82b8bb04448c212788f563ab8b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2483463
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
2be35682
|
2020-10-18T10:37:52
|
|
Add sRGBOverrideFormats end2end test
Addition of a new end2end test to verify that all
supported formats can be overridden for the
GL_EXT_texture_sRGB_override extension.
Bug: angleproject:4561
Test: angle_end2end_tests
--gtest_filter=SRGBTextureTestES3.SRGBOverrideFormats*Vulkan*
Change-Id: I93c4eab0489a1daadeb27c70ba1f755ed2e58fc4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2483564
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
7bbe497a
|
2020-10-16T14:46:45
|
|
Vulkan: Implement EXT_texture_sRGB_decode
Implement EXT_texture_sRGB_decode. This builds on the existing
functionality from EXT_texture_sRGB_override, with 2 major edge
cases:
1. sRGB_decode allows the texture state to be overridden by
sampler state, which is implemented by forcing a a texture state
sync during updateActiveTextures if a texture is bound to the same
unit as a sampler with that state
2. texelFetch calls require us to reenable decoding, regardless
of decode state. We add a new compiler pass
(FlagSamplersWithTexelFetch) to mark samplers that are used with
texelFetch in order to support this.
This change also re-enables EXT_texture_sRGB_R8, which was disabled
due to a dEQP bug that this change will bypass.
Bug: angleproject:3609
Bug: angleproject:4503
Test: dEQP.GLES31/functional_srgb_texture_decode_skip_decode_*
Test: GLES31/functional_state_query_texture_*_srgb_decode_*
Test: GLES31/functional_state_query_sampler_*_srgb_decode_*
Test: GLES31/functional_debug_negative_coverage_*_srgb_decode_*
Test: GLES31/functional_android_extension_pack_extensions_ext_texture_srgb_decode
Test: angle_end2end_tests --gtest_filter=SRGBTextureTest.*Vulkan*
Change-Id: I4a67e487dc82e2f57c8c87d4bcd8ef442b6fe220
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2359481
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
e3a57381
|
2020-10-18T15:42:58
|
|
Fix VertexAttributeTest.DrawArraysWithBufferOffset.
This test was reading past the end of a buffer into undefined data.
Bug: angleproject:3951
Bug: angleproject:4163
Bug: angleproject:4258
Bug: angleproject:4269
Change-Id: I54ab9aa0cd1442184692e60c7f99f2139a855d63
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2483842
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
188d0fe6
|
2020-10-18T14:33:28
|
|
Make Metal shader-gen cross platform.
This switches the generator script use the hermetic Clang instead
of the system gcc/clang. It also uses common Python routines to
manage the temporary file so that it works consistently on Win.
Bug: angleproject:5186
Change-Id: I52906d1a708db8b925061a9d5578b3d54a6dc862
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2483464
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Le Hoang Quyen <le.hoang.q@gmail.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
5b7c5b34
|
2020-10-18T17:19:51
|
|
Metal: don't precompile default shaders.
Default shaders will be compiled from source at runtime, this is because
they depend on ANGLE format table and there is currently no way to
pre-compile metal shaders in a cross-platform manner.
Using default shaders' source instead of pre-compiled form seems to
reduce the libGLESv2's binary size. However, the startup time will be
increased due to runtime cost of compilation, thus the compilation now
will be done asynchronously.
Bug: angleproject:5186
Change-Id: I0e1987d6c76692d5169255736fbb8e215185c33b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482405
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
|
|
9047954c
|
2020-10-17T20:35:31
|
|
More Mac/AMD/GL dEQP suppressions.
These tests became flaky with multi-process.
Bug: angleproject:5172
Change-Id: I6ede6b33f8c2ddfb3970fbc2b7586c7622b79a09
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482293
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
07ea804e
|
2020-10-17T08:57:28
|
|
Change Android atomic counter tests to skip.
These tests were running into LowMemoryKiller issues on the Pixel 2.
Disable them until we can switch to a newer OS/Device.
Bug: angleproject:5185
Change-Id: Id33d0f6347961e216a471af2e3614f0fb18d28d3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482288
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
da09d08f
|
2020-10-16T00:02:34
|
|
Regression tests for vertex attribute aliasing
Tests for the upcoming implementation of vertex attribute aliasing in
Vulkan.
Bug: angleproject:4249
Change-Id: Ic87e44b1815b376da4cda5e8887dd3a05c9cc35f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2477051
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
128ffe4a
|
2020-10-16T14:35:16
|
|
Roll VK-GL-CTS from 618e41c871d6 to 483a71c5130e (11 revisions)
Suppress new dEQP-GLES3 tests on Nexus 5X:
dEQP-GLES3.functional.transform_feedback.random_full_array_capture.*
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/618e41c871d6..483a71c5130e
2020-10-16 alexander.galazin@arm.com Update vk.xml revision
2020-10-16 lionel.g.landwerlin@intel.com Replace incorrect undefined->transfer-dst-opt layout transfers
2020-10-16 michal.m.pawlowski@mobica.com Add cube compat. to array image copy tests
2020-10-16 mikko.tiusanen@siru.fi Tests for pipeline laoyut early destroy
2020-10-09 alexander.galazin@arm.com Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/master
2020-10-09 mika.vainola@siru.fi Modify/add GLES XFB tests without element capture
2020-10-09 afdx@google.com Add a batch of GraphicsFuzz tests
2020-10-08 siglesias@igalia.com Fix wrong access flag for depth/stencil resolve
2020-10-08 lionel.g.landwerlin@intel.com Fix wsi tests using disallowed image usage
2020-10-08 siglesias@igalia.com Output depth image in case of failure
2020-10-08 karolina.palka@mobica.com Check SparseResidency flag before OpImageSparseRead
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 ynovikov@google.com,angle-bots+autoroll-info@google.com on the revert to ensure that a human
is aware of the problem.
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/master/autoroll/README.md
Bug: angleproject:5184
Tbr: ynovikov@google.com,angle-bots+autoroll-info@google.com
Change-Id: Ie46c0306830871d605b15cfcd3abc580989f104f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2480002
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
16102e8b
|
2020-10-17T01:15:05
|
|
Reland "Vulkan: Fold deferred clears into current clears"
This reverts commit 37c400146e59f718b516eb58e16fa53c8a88bf21.
Reason for revert: Need to clear the package cache when bisecting.
Original change's description:
> Revert "Vulkan: Fold deferred clears into current clears"
>
> This reverts commit e416c92a81c9ef01d633ec5c05e81c2551b6c5d6.
>
> Reason for revert: Reverted parent:
> https://chromium-review.googlesource.com/c/angle/angle/+/2481612
>
> Original change's description:
> > Vulkan: Fold deferred clears into current clears
> >
> > If there are clears prior to a glClear() call, those clears were
> > flushed (starting a new render pass) and then the clear call's clears
> > would be applied (essentially modifying the loadOps of said render
> > pass).
> >
> > The main downside of the above is that the current glClear() clears
> > don't get a chance to be deferred. This was observed in Chrome which
> > clears an attachment with an emulated format, then switches
> > framebuffers.
> >
> > Additionally, if the render pass had already been started, the deferred
> > clears could have become inlined instead of breaking the render pass.
> > Although, it's unlikely for there to be deferred clears when the render
> > pass is already open.
> >
> > This change first identifies which clears need to go through the draw
> > path (scissored, masked or as workaround for driver bug). It merges the
> > rest of the clears (that don't need the draw path) with the deferred
> > clears. It then checks deferred clears and applies them by either:
> >
> > - vkCmdClearAttachments if mid RP
> > - Start a new render pass and use loadOps, if any draw-based clear needs
> > to follow.
> > - Modify current RP loadOps / defer the clear
> >
> > Afterwards, the draw-based clears are applied.
> >
> > Bug: angleproject:4836
> > Change-Id: Id4992c78983b199734508c9d4bb18ed3195c91ec
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2455167
> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> > Reviewed-by: Jamie Madill <jmadill@chromium.org>
> > Reviewed-by: Charlie Lao <cclao@google.com>
>
> TBR=syoussefi@chromium.org,jmadill@chromium.org,cclao@google.com
>
> Change-Id: I85733b3594409df9b96e3d5b34933522c97c42cf
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: angleproject:4836
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2481613
> Reviewed-by: Tim Van Patten <timvp@google.com>
> Commit-Queue: Tim Van Patten <timvp@google.com>
TBR=timvp@google.com,syoussefi@chromium.org,jmadill@chromium.org,cclao@google.com
# Not skipping CQ checks because this is a reland.
Bug: angleproject:4836
Change-Id: I702cd510f39ee46feab27d4efbf61ae5da10d4e2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2481856
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
d3e7ed93
|
2020-10-16T21:30:58
|
|
Suppress Mac/AMD/GL GLES2 failures with standalone mode.
Bugs due to test ordering.
Bug: angleproject:5172
Change-Id: If7e0c93a470bf2338347d484735f1b3691dd9ad5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482283
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
37c40014
|
2020-10-16T22:19:20
|
|
Revert "Vulkan: Fold deferred clears into current clears"
This reverts commit e416c92a81c9ef01d633ec5c05e81c2551b6c5d6.
Reason for revert: Reverted parent:
https://chromium-review.googlesource.com/c/angle/angle/+/2481612
Original change's description:
> Vulkan: Fold deferred clears into current clears
>
> If there are clears prior to a glClear() call, those clears were
> flushed (starting a new render pass) and then the clear call's clears
> would be applied (essentially modifying the loadOps of said render
> pass).
>
> The main downside of the above is that the current glClear() clears
> don't get a chance to be deferred. This was observed in Chrome which
> clears an attachment with an emulated format, then switches
> framebuffers.
>
> Additionally, if the render pass had already been started, the deferred
> clears could have become inlined instead of breaking the render pass.
> Although, it's unlikely for there to be deferred clears when the render
> pass is already open.
>
> This change first identifies which clears need to go through the draw
> path (scissored, masked or as workaround for driver bug). It merges the
> rest of the clears (that don't need the draw path) with the deferred
> clears. It then checks deferred clears and applies them by either:
>
> - vkCmdClearAttachments if mid RP
> - Start a new render pass and use loadOps, if any draw-based clear needs
> to follow.
> - Modify current RP loadOps / defer the clear
>
> Afterwards, the draw-based clears are applied.
>
> Bug: angleproject:4836
> Change-Id: Id4992c78983b199734508c9d4bb18ed3195c91ec
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2455167
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Charlie Lao <cclao@google.com>
TBR=syoussefi@chromium.org,jmadill@chromium.org,cclao@google.com
Change-Id: I85733b3594409df9b96e3d5b34933522c97c42cf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:4836
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2481613
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
5a9827d2
|
2020-10-08T13:17:16
|
|
FrameCapture: Move shader and program source to shared cache
These are local copies of source seen earlier in the trace.
Centralize them so they can be tracked across contexts.
Test: PUBG MEC
Bug: b/165824228
Bug: angleproject:4048
Change-Id: If414826b0280c61507812c2fd92706b7f095cc4b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2462162
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
51ff0d05
|
2020-10-16T11:54:04
|
|
Trace Tests: Add vsync-limited mode with a GPU timer.
Local testing on Linux shows that ANGLE and native have
the same wall-time, and ANGLE has a 10 ms vs native 6 ms
GPU time.
Bug: angleproject:5183
Change-Id: I26da678b984af916bfb40e1db6416f5df4f85c08
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2480782
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ecbac31c
|
2020-10-16T10:36:06
|
|
Perf Tests: Add offscreen mode.
This lets the trace perf tests run configurable number of frames
within a single swap. The offscreen config is similar to how
gfxbench works. It renders to a user FBO (by overriding calls to
BindFramebuffer) and then composits multiple frames into the real
backbuffer. This allows us to get a perf measurement with less
overhead from composition and display.
Adds emulation for some APIs that operate on Framebuffers like
BindFramebuffer, Invalidate, DrawBuffers and ReadBuffer.
Bug: angleproject:4845
Change-Id: I1044c1d52c82f1c215a68a6c46d74c52ed0f3d2a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2300207
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
2402c336
|
2020-10-16T13:56:08
|
|
Suppress Mac/AMD/GL dEQP failures with standalone mode.
These tests appear to flake based on different batch sizes. Disable them
for now until we have time to investigate. See issue for more details.
Bug: angleproject:5172
Change-Id: I90fff3b3400cbd5a5aa0d5e9a23364320fba7e4d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2480785
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|