Commit Graph

19342 Commits

Author SHA1 Message Date
Mohan Maiya
aa2a558ec2 Vulkan: Add support for setting timestamp surface attribute
On Android the EGL wrapper handles most of the functionality required
by EGL_ANDROID_get_frame_timestamps. However if for some reason the
swapchain is recreated, the timestamp state would be lost resulting in
stuttering.

Introduce EGL_ANGLE_timestamp_surface_attribute extension that adds
support for toggling the EGL_TIMESTAMPS_ANDROID attribute of a surface.
Cache this state and recreate the swapchain accordingly.

Bug: angleproject:7489
Test: EGLSurfaceTest.TimestampSurfaceAttribute*
Test: dEQP-EGL.functional.get_frame_timestamps*
Change-Id: I3660f7137c006d904164d243a682a4ff520eabd8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3753396
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
2022-08-24 00:03:00 +00:00
Yuxin Hu
f10625d3cc Enable Robustness Extension on ARM
These dEQP tests failed due to Robustness was disabled:
dEQP-GLES31.functional.debug.negative_coverage.callbacks.buffer#readn_pixels
dEQP-GLES31.functional.debug.negative_coverage.log.buffer#readn_pixels
dEQP-GLES31.functional.debug.negative_coverage.get_error.buffer#readn_pixels
dEQP-GLES31.functional.debug.error_filters#case_12
dEQP-GLES31.functional.debug.error_groups#case_12

Re-enable the Robustness Extension on ARM to check if
mali driver supports GL_EXT_robustness extension now. If it does
we can enable the robustness feature in ANGLE so that the above
dEQP tests can pass.

Bug: angleproject:7351
Bug: angleproject:4823
Bug: angleproject:2330
Change-Id: Ifce20e410607f2d4b6b3b55235081fef690c983c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3828441
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2022-08-23 23:11:43 +00:00
Roman Lavrov
13456bfc21 Propagate device type in another eglGetPlatformDisplayEXT call.
Same as https://crrev.com/c/3759712 for another test.

Also use !platformSupportsMultithreading() to skip tests.
However, need to skip separately from capture/replay where
multi-threaded tests seem to run into issues.

Bug: angleproject:7494
Bug: angleproject:7423
Change-Id: Ief87b4163aedd26b440987540c06ceb7ae8a575b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3851166
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
2022-08-23 19:36:20 +00:00
Yuly Novikov
f0b4e8b2e7 Fix loading ANGLE libraries on iOS
Previously end2end tests would try to load
libEGL.framework/libEGL.framework instead of libEGL.framework/libEGL

Bug: angleproject:5417
Change-Id: Iccb9ad20df980dfd460219dbcaf9b273aef9c7dc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3851164
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
2022-08-23 18:09:11 +00:00
Yiwei Zhang
41c01134a9 Extend the image test to verify RGBX AHB and GL_RGB upload
This changes updates the RGBXAHBImportThenUpload test to do texture
upload to the right side and adds a new helper to validate the render
result on both sides to check the upload respects the GL_RGB channels.

Bug: b/238460927
Test: ImageTestES3.RGBXAHBImportThenUpload
Change-Id: I61723e7db99dab78b7828b783bb7cdf062f39ad9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3849462
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Yiwei Zhang <zzyiwei@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
2022-08-23 17:48:20 +00:00
Yiwei Zhang
df9468565c Map RGBX AHB to GL_RGBX8_ANGLE and fix the load function
AHARDWAREBUFFER_FORMAT_R8G8B8X8_UNORM was false mapped to GL_RGB8, which
will write back to the backing exteranl storage with 3 channel layout.
Angle actually has ANGLE_rgbx_internal_format to fix the mapping with
GL_RGBX8_ANGLE. However, the load function must align with GL_RGB8 if
the actual storage is 4 channel. This change also fixes that to use
LoadToNative3To4<GLubyte, 0xFF>.

Bug: b/238460927
Test: CtsNativeHardwareTestCases#SingleLayer_ColorTest_*_R8G8B8X8_*
Test: ImageTestES3.RGBXAHB* pass without VVL error
Change-Id: Ic5db4cb4adba252949d64e560ff32e492a045912
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3846413
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Lingfeng Yang <lfy@google.com>
2022-08-23 17:38:26 +00:00
angle-autoroll
eab2d546ef Roll vulkan-deps from 186a4d4b9dea to 1b46e43d5ccc (2 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/186a4d4b9dea..1b46e43d5ccc

Changed dependencies:
* vulkan-validation-layers: 40315fa5c0..55f77c5de1

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC ynovikov@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: None
Tbr: ynovikov@google.com
Change-Id: I3d925dd82f280ca7b69d71c544e8aa3a425dfb19
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3849474
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-23 11:33:20 +00:00
angle-autoroll
7131475ee0 Roll Chromium from e1b4daf2a3e7 to 02dbf021e1a1 (568 revisions)
e1b4daf2a3..02dbf021e1

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-angle-autoroll
Please CC ynovikov@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://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

Changed dependencies
* build: facb235241..ba78bc1980
* testing: a30c0d90b3..d315e68997
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..9bfc1aede5
* third_party/depot_tools: 44b73307ee..19b3eb5adb
* third_party/fuchsia-sdk/sdk: version:9.20220821.3.1..version:9.20220822.3.1
* third_party/turbine: RxaW8ZVJZ7rF3dbAGbL1OV6f9ZELjVeiiQbpkDsuxA4C..cMFT-KTiKSkVefC3nASLc0KQv9JrVmwmFUgJlo6jOosC
* tools/clang: bd2da0345a..5f3c54dbcc
* tools/perf: 398778992d..62249027a7
* tools/skia_goldctl/linux: eVmrBHTaHLBRrBHBIagAjRi84M8Pih7goWAjl0ZL9H0C..BcL4zQgD0tZoFzhWm37NnERAPLdbeERfbY_SSBQ3ba4C
* tools/skia_goldctl/mac_amd64: 3fnB8n0m7xQ9X4SWg4rYgZksJ4YFew0fj6ftsyHzbSwC..8DiQ6WFPrEn56-jwyQmU4EMXFvf7_-8SYjVD2hHHmZMC
* tools/skia_goldctl/mac_arm64: J_MizgwQbTOCG1ZKfGQJRXm-F2Ey8P3M7Dl5WxYKEwwC..lJ8l4RCPxwrg_f-Z9Lnu3Ma3uRlbRbAcdQA7xwpIzNUC
* tools/skia_goldctl/win: aYli_YA93vex9TPItiLM1AcLs64FzefvhXxh2aHEvJsC..1l0XEVvr2qVUdGYrjLN9Gkt6qfv8KsXM52B8MKDShmEC
No update to Clang.

Bug: None
Tbr: ynovikov@google.com
Change-Id: I3f559e4bc087b0a90f31e6b8b9a655e7cf9adc27
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3849466
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-23 09:30:40 +00:00
Chris Dalton
6fde3568a1 Spec out the PLS client API
Drafts the additions to the OpenGL ES 3.0 spec for pixel local storage.

Bug: angleproject:7279
Change-Id: Ibc0d227142ac51f5d3820f27c9114779d846ffc2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3824171
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2022-08-23 02:45:09 +00:00
Mohan Maiya
b32091b42a Vulkan: Bug fix related to pre-rotation code
Account for possiblity that the draw and read surfaces are different
when querying pre-rotation information. When updating
mCurrentRotationDrawFramebuffer and mCurrentRotationReadFramebuffer,
make sure to query pre-rotation information from current draw and
read surfaces.

Bug: angleproject:7581
Test: FramebufferTest_ES3.BlitWithDifferentPreRotations*
Change-Id: Ibe7a2450907e53aa5c33e13cff00059ab2f6602e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3836491
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
2022-08-22 23:50:09 +00:00
Shahbaz Youssefi
952d6e8f8b Vulkan: Workaround ARM driver bug with dynamic vertex strides
According to ARM, vkCmdBindVertexBuffers2EXT is broken when more than
one attribute binding is involved.  In this change, the vertex strides
dynamic state is avoided altogether on ARM.

Bug: fuchsia:107106
Change-Id: Ie41fc07037083214d2dc99e4ed062485384911c5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3844640
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
2022-08-22 22:17:01 +00:00
Eddie Hatfield
bd1484f3a4 Temporarily disable shader caching feature
This will be re-enabled when the BlobCache test flakes are resolved.

Bug: angleproject:7036
Change-Id: I38829ffcd5869679bf65017475e8a10d165f369b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3846403
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Lingfeng Yang <lfy@google.com>
2022-08-22 22:01:19 +00:00
angle-autoroll
86a35a4b50 Roll vulkan-deps from d53c356ad7d9 to 186a4d4b9dea (48 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/d53c356ad7d9..186a4d4b9dea

Changed dependencies:
* glslang: adf7bf0113..10423ec659
* spirv-tools: 0a43a84e02..3c1a14b2b6
* vulkan-headers: c896e2f920..715673702f
* vulkan-loader: a0ab2f162e..40faec799c
* vulkan-tools: 497f232680..439026106a
* vulkan-validation-layers: 529a4320d3..40315fa5c0

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC ynovikov@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:7593
Change-Id: I9bfc09ca04025829881af9d03b2073a6f24234c2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3846057
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
2022-08-22 21:44:59 +00:00
Kimmo Kinnunen
e22eb503c8 Metal: Report Metal being available on iOS simulator
Make Metal backend always available on iOS simulator.
Currently the GPU family query is not useful as it
does not return anything that would enable Metal
ANGLE to be used. However, testing on iOS simulator
is still useful.

Bug: angleproject:7591
Change-Id: I0aa881bb7482fc63bbaa08d5efc10920b3c1af43
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3845154
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
2022-08-22 21:32:59 +00:00
angle-autoroll
a8ffbef8c5 Roll VK-GL-CTS from 5a93cd60f33b to 435ebaff9214 (5 revisions)
5a93cd60f3..435ebaff92

2022-08-19 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main
2022-08-18 piotr.byszewski@mobica.com Add coverage for MaxAtomicCounterBufferSize
2022-08-18 piotr.byszewski@mobica.com Check that image*Shadow are not reserved keywords
2022-08-18 piotr.byszewski@mobica.com Fix vkGetPhysicalDeviceProperties2 query
2022-08-18 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,syoussefi@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://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:7592
Change-Id: I87bd89dd6ad63e2fa28ae87cdd4a91555d56e203
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3842857
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2022-08-22 17:50:01 +00:00
Lingfeng Yang
caf2b4279b Vulkan: Add feature to use PASS_THROUGH for EGL_NONE color spaces
This is a temporary solution to fix media tests until ANGLE
also has the ability to query the "preferred color space" from
Surfaces.

Bug: b/235995022
Test: Launch Cuttlefish with this change and the feature enabled
      with aosp/2167231
Test: cts -m CtsMediaCodecTestCases
          -t android.media.codec.cts.EncodeDecodeTest
Test: cts -m CtsMediaCodecTestCases
          -t android.media.codec.cts.DecodeEditEncodeTest
Change-Id: I17d1a2c1701cd1707b34f5bf2f222e9ad57c7a61
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3770291
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Commit-Queue: Jason Macnak <natsu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Lingfeng Yang <lfy@google.com>
2022-08-22 16:47:59 +00:00
Roman Lavrov
f30cfd1809 Perf and gold tests detect test SKIPs from json results.
Make angle_test_util.RunTestSuite() gets and returns json results
(using --isolated-script-test-output).

perf tests has an additional special case
(filed https://anglebug.com/7578):

Previously when metrics were missing it was assumed that this was due to
tests being skipped - which seems to currently be the case except for
the special case of GLMark2Benchmark* tests. Those produce .fps/.score
metrics instead of the metrics expected by this script. This CL keeps
those tests running (once) but then marks them as SKIP in test results
when no metrics are found (which is the behavior before this CL; it
might actually make more sense to count this as PASS because everything
matches our expectations).
We're still running them once, so if they FAIL we'll get notified.

gold tests:

Use json results file instead of checking for '[  SKIPPED ]' in stdout.

Bug: angleproject:7299
Bug: angleproject:7578
Change-Id: Ia751784ad1aa94dc855c8b58ebfe5ba3e06e462f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3826167
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
2022-08-22 14:40:29 +00:00
angle-autoroll
4b4c90efb9 Roll SwiftShader from 1c3dfde53353 to c21aa26e0256 (3 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/1c3dfde53353..c21aa26e0256

2022-08-19 nicolas.capens@gmail.com Simplify clipping of complex polygons
2022-08-19 nicolas.capens@gmail.com Update Vulkan headers to version 1.3.225
2022-08-19 swiftshader.regress@gmail.com Regres: Update test lists @ 1c3dfde5

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-angle-autoroll
Please CC syoussefi@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://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: None
Tbr: syoussefi@google.com
Change-Id: I1c34d56ba212e1ce8f5632cb88474e6d5feeba70
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3842446
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-22 11:06:59 +00:00
angle-autoroll
676bc8ed49 Roll Chromium from 336269709208 to e1b4daf2a3e7 (602 revisions)
3362697092..e1b4daf2a3

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-angle-autoroll
Please CC syoussefi@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://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

Changed dependencies
* build: ca7f2297ff..facb235241
* buildtools: 3a4c85002c..6f3cc96d10
* buildtools/third_party/libc++/trunk: db72216693..c58c612d74
* buildtools/third_party/libc++abi/trunk: d2e4dc7655..6c17e7c636
* buildtools/third_party/libunwind/trunk: f87795ea5b..42aa6de554
* testing: 8fade393ad..a30c0d90b3
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..9bfc1aede5
* third_party/fuchsia-sdk/sdk: version:9.20220817.2.1..version:9.20220821.3.1
* third_party/r8: qvL35O3yU1ZbOWHVZBedmVtdaav1qKquii4RJyUh-PgC..2P7CTTsDUzoP3f8LtGNRdtwC48KAMmV-hPoNhGAwiKMC
* tools/clang: a56fd8b0a2..bd2da0345a
* tools/perf: d2cfb95d99..398778992d
* tools/skia_goldctl/linux: vguZysogLzkycKzCMUUxjQNXAY4wQigIBE83puLd_8YC..eVmrBHTaHLBRrBHBIagAjRi84M8Pih7goWAjl0ZL9H0C
* tools/skia_goldctl/mac_amd64: nmPC1ukuYnMcvcfOIlAG5AbUIL_J9LSUaFkegd6BPF0C..3fnB8n0m7xQ9X4SWg4rYgZksJ4YFew0fj6ftsyHzbSwC
* tools/skia_goldctl/mac_arm64: B2gt4DQ8QHw4DRrXPgm6d05bbWE5-6hNolIlFc8WECIC..J_MizgwQbTOCG1ZKfGQJRXm-F2Ey8P3M7Dl5WxYKEwwC
* tools/skia_goldctl/win: nOvtL4uNJDJw0xbMHz5X0t6RPhp-WQ7eFnxDpCkrmlEC..aYli_YA93vex9TPItiLM1AcLs64FzefvhXxh2aHEvJsC
No update to Clang.

Bug: None
Tbr: syoussefi@google.com
Change-Id: Iedba1328a8534d03ee0154a1a8ac0b4b7c2d6895
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3844859
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-22 08:08:59 +00:00
Shahbaz Youssefi
31ac3fefde Lift suppression of passing test
Bug fixed in
https://chromium-review.googlesource.com/c/angle/angle/+/3835168, but a
suppression for the test landed in the meantime

Bug: angleproject:7583
Change-Id: I14a3e59a6270bfee8288dd733938a18cbf491c20
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3844638
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-08-22 02:19:28 +00:00
Kimmo Kinnunen
b9c3c5d675 Metal: Fix MTLArgumentEncoder leak in InitArgumentBufferEncoder
Patch by David Kilzer <ddkilzer@apple.com>

Metal functions with "new" prefix return objects with refcount +1.
Adopt the ref to the ObjCObj smart pointer.

Bug: angleproject:7577
Change-Id: I57b1ac031aa9cf179288879359d3c88dbd168caa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3834820
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
2022-08-19 23:39:29 +00:00
Shahbaz Youssefi
9a25828113 Fix submit-count perf counter test on ARM
On ARM, the preferSubmitAtFBOBoundary feature causes extra submissions
that need to be taken into account.

Bug: chromium:1337538
Change-Id: Id545ee3e65fc943aff51ea3721e9c19bc0afd4a5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835168
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
2022-08-19 21:09:09 +00:00
Shahbaz Youssefi
4330a827ba Reland "Vulkan: Use VK_EXT_primitive_topology_list_restart"
This reverts commit 29d18b3031.

Reason for revert: Fixed VVL suppressions not working

Original change's description:
> Revert "Vulkan: Use VK_EXT_primitive_topology_list_restart"
>
> This reverts commit e79c9cd630.
>
> Reason for revert: Causing timeouts on some headless tests: anglebug.com/7579
>
> Original change's description:
> > Vulkan: Use VK_EXT_primitive_topology_list_restart
> >
> > From ANGLE's point of view, there is nothing to do with this extension
> > other than enable a feature that silences a validation error.
> >
> > Bug: angleproject:3832
> > Change-Id: I094343d09c322e2848a65a5bc775d0f21388fb46
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3562380
> > Reviewed-by: Jamie Madill <jmadill@chromium.org>
> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> > Reviewed-by: mohan maiya <m.maiya@samsung.com>
>
> Bug: angleproject:3832
> Change-Id: Ifec7c9eaea1d3a949f15e0b6d868742f53cf8377
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3838391
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>

Bug: angleproject:3832
Change-Id: Ia79b1f3b716f0df1991f605704135b4af48fb639
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3841366
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2022-08-19 15:27:46 +00:00
angle-autoroll
b8b44fc85c Roll SwiftShader from ab4bf6ad00d4 to 1c3dfde53353 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/ab4bf6ad00d4..1c3dfde53353

2022-08-18 sugoi@google.com Added missing null pointer check on pDepthStencilResolveAttachment

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-angle-autoroll
Please CC syoussefi@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://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: None
Tbr: syoussefi@google.com
Change-Id: If137f8a9d890bbcd76f4ff3446c78bf7a5bd1fe4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3841615
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-19 11:09:57 +00:00
angle-autoroll
8ef496b155 Roll Chromium from 7f3befa9aba1 to 336269709208 (495 revisions)
7f3befa9ab..3362697092

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-angle-autoroll
Please CC syoussefi@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://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

Changed dependencies
* build: 138d9667f4..ca7f2297ff
* buildtools: 2c110db042..3a4c85002c
* buildtools/third_party/libc++/trunk: 9de2fe0403..db72216693
* buildtools/third_party/libc++abi/trunk: 039323b945..d2e4dc7655
* buildtools/third_party/libunwind/trunk: 12726c93aa..f87795ea5b
* testing: b1f7ac5d7d..8fade393ad
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..72946313ec
* third_party/depot_tools: d14f65eba9..44b73307ee
* third_party/fuchsia-sdk/sdk: version:9.20220817.1.1..version:9.20220817.2.1
* third_party/r8: lAcTGSK3VDSH4DI3H3q0XIg8y0wBVz7IS1Fk_Zbd3iYC..qvL35O3yU1ZbOWHVZBedmVtdaav1qKquii4RJyUh-PgC
* tools/mb: 1d2e3651d3..ad8b831158
* tools/perf: 660d26d81a..d2cfb95d99
* tools/skia_goldctl/linux: ebDbf3X2jdAICDlXMXUr7yp4muhSvYoREDLdZZoJzuAC..vguZysogLzkycKzCMUUxjQNXAY4wQigIBE83puLd_8YC
* tools/skia_goldctl/mac_amd64: yE_XL6pbQ8M0WuI236ObRlkSxu0XMdWs_AnUeo21wa8C..nmPC1ukuYnMcvcfOIlAG5AbUIL_J9LSUaFkegd6BPF0C
* tools/skia_goldctl/mac_arm64: l46gUmkc-2-OsEMo-oEbpXiBAYg48KtXbtF1lyBh0u8C..B2gt4DQ8QHw4DRrXPgm6d05bbWE5-6hNolIlFc8WECIC
* tools/skia_goldctl/win: 58nNno6pNLLSJaZknYmuijuo5gy2tfRBKNI1iCldDlcC..nOvtL4uNJDJw0xbMHz5X0t6RPhp-WQ7eFnxDpCkrmlEC
No update to Clang.

Bug: None
Tbr: syoussefi@google.com
Change-Id: Id2363d794151456c9b3b83165d8a95ed54ad903f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3840202
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-19 09:08:47 +00:00
Faye Zhang
6d153b7d7d Implement BaseInstanceEXT Capture Entry Points
In order to support Capture/Replay of apps that use GL_EXT_base_instance
functions, their GLES EXT Capture functions should be implemented.

Bug: angleproject:7477
Change-Id: Idb96b66ca5a7c96f1883402e62934acc33bd24c0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3749796
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
2022-08-19 02:18:42 +00:00
Shahbaz Youssefi
29d18b3031 Revert "Vulkan: Use VK_EXT_primitive_topology_list_restart"
This reverts commit e79c9cd630.

Reason for revert: Causing timeouts on some headless tests: anglebug.com/7579

Original change's description:
> Vulkan: Use VK_EXT_primitive_topology_list_restart
>
> From ANGLE's point of view, there is nothing to do with this extension
> other than enable a feature that silences a validation error.
>
> Bug: angleproject:3832
> Change-Id: I094343d09c322e2848a65a5bc775d0f21388fb46
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3562380
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: mohan maiya <m.maiya@samsung.com>

Bug: angleproject:3832
Change-Id: Ifec7c9eaea1d3a949f15e0b6d868742f53cf8377
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3838391
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
2022-08-18 19:59:36 +00:00
Yuly Novikov
eb8488e1b3 Skip end2end failures on Pixel 6 Android 13 TP1A.220624.021
Bug: angleproject:7583
Change-Id: Ib9a44c222207b6f2c70733738f1c440c6d6a7ce8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3838857
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>
2022-08-18 17:58:28 +00:00
angle-autoroll
c6c7ff3c45 Roll SwiftShader from 5ac9bd16c803 to ab4bf6ad00d4 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/5ac9bd16c803..ab4bf6ad00d4

2022-08-17 nicolas.capens@gmail.com Ignore VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-angle-autoroll
Please CC syoussefi@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://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: None
Tbr: syoussefi@google.com
Change-Id: Ia5c92f8c541078355f87ae19fc68f88af76f3cdd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3837349
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-18 11:17:23 +00:00
angle-autoroll
f5698a8f6b Roll Chromium from 754ede9fc072 to 7f3befa9aba1 (1095 revisions)
754ede9fc0..7f3befa9ab

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-angle-autoroll
Please CC syoussefi@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://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

Changed dependencies
* build: 8bf02cb228..138d9667f4
* buildtools: 431d9c2d82..2c110db042
* buildtools/third_party/libc++/trunk: 5df82514bc..9de2fe0403
* buildtools/third_party/libunwind/trunk: 030b4ebf32..12726c93aa
* testing: dbe2ab9dc9..b1f7ac5d7d
* third_party/abseil-cpp: d22f28635a..4ef58b7319
* third_party/android_build_tools/manifest_merger: 0WkAedh1tJB8lzisWJRT80UjpacKLltuV7NqP-0tx9gC..CvokX4c6dx7DwQ8VVMQ70CROzyJWg13oOq3feeuTzg8C
* third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..e12cc61cfa
* third_party/depot_tools: 268d645853..d14f65eba9
* third_party/fuchsia-sdk/sdk: version:9.20220812.1.1..version:9.20220817.1.1
* third_party/protobuf: cca1e66cd5..dd32a150e7
* tools/clang: 22963c3e1f..a56fd8b0a2
* tools/mb: 752991ad1e..1d2e3651d3
* tools/perf: ca2df581e4..660d26d81a
No update to Clang.

Bug: None
Tbr: syoussefi@google.com
Change-Id: I51e4e377c35968da25f1300194c51a224eee507a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3837158
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-18 08:10:05 +00:00
Eddie Hatfield
955adb7757 Cache compiled shader
By storing the compiled shader in the blob cache, the time to
recompile the same shader is reduced.

Based on work by <hckim.kim@samsung.com>

Bug: angleproject:7036
Change-Id: I884ae40e715c49a9ccd12903012e8327811e3557
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3808235
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
2022-08-18 05:28:46 +00:00
Yuxin Hu
2965f81b83 Remove suppression of previously crashed deqp test
dEQP-GLES31.functional.shaders.linkage.es31.tessellation.varying.rules#internal_different_precision
was fixed in a recent check-in at https://crrev.com/c/3780874.
Remove the suppression in the test expectation file.

Bug: angleproject:6908
Change-Id: I41025c2555e0c21ff8faaa888842201d26499205
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3828139
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
2022-08-18 03:02:25 +00:00
Sean Risser
266d0a831f Skip glObjectLabel in replay capture
Similar entry points are also skipped, so it's likely the list was just
missing this one.

Bug: angleproject:7567
Change-Id: I1d7e37b35960fd71fdec9143d9193dee6f97e1f1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3824777
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
2022-08-18 02:09:45 +00:00
Geoff Lang
eb535debc7 Don't set the framebuffer read buffer dirty bit on ES2.
glReadBuffer is not added until ES3. Make sure we don't tell the
backend to synchronize the read buffer state unless it's supported.

Bug: chromium:1346132
Change-Id: I9836d6baac5a250c1fddf5d3ec6d395228e118db
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835167
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
2022-08-17 22:45:56 +00:00
Mohan Maiya
7a87e90d03 An inactive but alive thread shouldn't prevent cleanup
1. Acquire EGL global lock before thread cleanup and remove
   all clean up related mutexes

2. Mark contexts that are not current as invalid during terminate

3. During thread exit, if there are other active threads, terminate
   with TerminateReason::InternalCleanup. This gives an opportunity
   for well behaved threads to cleanup up invalid objects.

Bug: angleproject:6723
Bug: angleproject:6798
Test: EGLContextSharingTestNoFixture.InactiveThreadDoesntPreventCleanup*
Change-Id: I418e5f8b486d3d309bd58c4cfb04b7dc1149ffc1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3768667
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
2022-08-17 20:22:05 +00:00
Roman Lavrov
8fe5fd5784 Reland Copy .vpython3 from chromium/src/+/main:.vpython3
As is; looks like failure was caused by just a bad bot.
After https://crrev.com/c/3835165 now tests actually run on this cl,
rather than being no-op.

(except for verify_pep425_tag which doesn't look like something we
want)

As Jamie noted on https://crrev.com/c/2408717 it can't be easily
auto-rolled from the Chromium src/ repo

Swarming switched to vpython3 and can't be hacked back easily
(https://crbug.com/1346781#c24) so it's probably a good time to just
go for this and figure out what is missing or broken (if anything)

Bug: chromium:1346781
Bug: angleproject:7576
Change-Id: Iab6643612d254f9b26e2e935d6b5c96fada895e0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835166
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
2022-08-17 19:52:25 +00:00
Roman Lavrov
0951686d93 Add .vpython .vpython3 to trigger all tests on changes there.
Bug: chromium:1346781
Bug: angleproject:7576
Change-Id: Ic238a95c68cefb5f83b6a8db2ab009ef94ea80c9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835165
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
2022-08-17 18:41:58 +00:00
Brian Sheedy
24012abcb9 Revert "Copy .vpython3 from chromium/src/+/main:.vpython3"
This reverts commit 3b91270fbb.

Reason for revert: Seems to break things.

Original change's description:
> Copy .vpython3 from chromium/src/+/main:.vpython3
>
> (except for verify_pep425_tag which doesn't look like something we
> want)
>
> As Jamie noted on https://crrev.com/c/2408717 it can't be easily
> auto-rolled from the Chromium src/ repo
>
> Swarming switched to vpython3 and can't be hacked back easily
> (https://crbug.com/1346781#c24) so it's probably a good time to just
> go for this and figure out what is missing or broken (if anything)
>
> Bug: chromium:1346781
> Bug: angleproject:7576
> Change-Id: Icf574084b036570412e5c6df2b1f9d19ae35d079
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835164
> Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
> Commit-Queue: Roman Lavrov <romanl@google.com>
> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>

Bug: chromium:1346781
Bug: angleproject:7576
Change-Id: Ie5ba7090f4bcbc8f9fd8ec2d80057b371810c403
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835334
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
Auto-Submit: Brian Sheedy <bsheedy@chromium.org>
2022-08-17 18:08:10 +00:00
Roman Lavrov
3b91270fbb Copy .vpython3 from chromium/src/+/main:.vpython3
(except for verify_pep425_tag which doesn't look like something we
want)

As Jamie noted on https://crrev.com/c/2408717 it can't be easily
auto-rolled from the Chromium src/ repo

Swarming switched to vpython3 and can't be hacked back easily
(https://crbug.com/1346781#c24) so it's probably a good time to just
go for this and figure out what is missing or broken (if anything)

Bug: chromium:1346781
Bug: angleproject:7576
Change-Id: Icf574084b036570412e5c6df2b1f9d19ae35d079
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835164
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
2022-08-17 17:54:05 +00:00
Roman Lavrov
6a8bd8010d Add process_angle_perf_results.py to perf tests data.
analyze step doesn't currently trigger angle_perftests on changes to
process_angle_perf_results.py
Example:
https://crrev.com/c/3835162/2
https://ci.chromium.org/ui/p/angle/builders/try/linux-test/7791/overview
(so I had to https://crrev.com/c/3835162/3)

Bug: chromium:1346781
Change-Id: Id991facedd48036a5c072d910aeb8488712516f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835163
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
2022-08-17 16:26:15 +00:00
angle-autoroll
92e4cd7578 Roll SwiftShader from c61fc9aec162 to 5ac9bd16c803 (3 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/c61fc9aec162..5ac9bd16c803

2022-08-17 swiftshader.regress@gmail.com Regres: Update test lists @ a6c3e363
2022-08-16 sugoi@google.com Update Marl to 2f129cf1b
2022-08-16 sugoi@google.com update-marl: run Gerrit hook on generated CLs

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-angle-autoroll
Please CC syoussefi@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://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: None
Tbr: syoussefi@google.com
Change-Id: If8613966bb3c427e29898cfda4fb315ac9eea5cc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3834831
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-17 12:35:45 +00:00
Shahbaz Youssefi
213a1ee6e6 Vulkan: Enable VK_EXT_primitives_generated_query
Added a test to make sure PGQ works with indirect draws too.

Bug: angleproject:5430
Change-Id: Ic91e11906ca34c4f9a50f3442709e544f7f6744c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3826165
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
2022-08-16 22:50:54 +00:00
Solti
a216cfe8b4 Adding angle_perftests test case names in logcat
Overview:
In logcat, we want to know which test is being executed.
The CL
  1. makes *ANGLEPerfTest* print the test name
  2. wire the trace names in *TracePerfTest* as test names to
     *ANGLEPerfTest*

Local Test:
==== Test 1 ====
 - use this build args: http://go/paste/5111738277036032
 - ```autoninja -C out/Android && ./out/Android/angle_perftests
   --gtest_filter="*angry_birds*" --verbose```
 - Wait for the test to complete, then run ```adb logcat -d | grep
   running```
 - 4 tests were executed:
```
solti@solti:~/angle$ adb logcat -d | grep running
08-11 18:13:49.757  7690  7721 I ANGLE   : running test:
TracePerf_Run/vulkan_angry_birds_2_1500

08-11 18:13:59.914  7690  7721 I ANGLE   : running test:
TracePerf_Run/native_angry_birds_2_1500

08-11 18:14:21.265  7690  7721 I ANGLE   : running test:
TracePerf_Run/vulkan_angry_birds_2_launch

08-11 18:14:48.030  7690  7721 I ANGLE   : running test:
TracePerf_Run/native_angry_birds_2_launch

08-11 18:14:58.296  1525  1525 E JobScheduler.Quota:
<0>com.google.android.apps.docs has 0 EJ quota without running anything
08-11 18:14:58.296  1525  1525 E JobScheduler.Quota:
<0>com.google.android.apps.docs has 0 EJ quota without running anything
08-11 18:14:58.297  1525  1635 E JobScheduler.Quota:
<0>com.google.android.apps.docs has 0 EJ quota without running anything
solti@solti:~/angle$
```

==== Test 2 ====
 - follow
   http://docs/document/d/1W3E7e-YcR5noim_poM0f7Dc0W8AdQDbJ2tFSPXgjpH0?
   resourcekey=0-VmGDLI3x0q4-sdpQ0n8GSA
 - setup out/AndroidPerformance
 - run cmd: ./out/AndroidPerformance/angle_perftests
   --gtest_filter="*angry_birds*" --verbose --local-output
   --verbose-output --shard-timeout 100000 --max-steps-performed 1
 - then, run cmd: ```adb logcat -d | grep running```
 - confirmed the test names are printed
 ```
solti@solti:~/angle$ adb logcat -d | grep running
08-11 18:22:50.698  8496  8525 I ANGLE   : running test:
TracePerf_Run/vulkan_angry_birds_2_1500

08-11 18:22:51.599  8496  8525 I ANGLE   : running test:
TracePerf_Run/native_angry_birds_2_1500

08-11 18:22:51.917  8496  8525 I ANGLE   : running test:
TracePerf_Run/vulkan_angry_birds_2_launch

08-11 18:22:52.362  8496  8525 I ANGLE   : running test:
TracePerf_Run/native_angry_birds_2_launch

solti@solti:~/angle$
 ```

==== Test 3 ====
 - build a Linux build, using the args: http://go/paste/5953043785842688
 - run the same test with cmd: xvfb-run ./out/Debug/angle_perftests
   --gtest_filter="*angry_birds*" --verbose | grep "running test"
 - confirmed the message is printed: http://go/paste/5800151735074816

Bug: angleproject:6353
Change-Id: I6118a75f54b1648923cb5fe541633d7dd52b20bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3817409
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
2022-08-16 21:55:11 +00:00
Roman Lavrov
7c66d77d68 Avoid logging None introduced in https://crrev.com/c/3831885
Currently prints:
Test 5/97: DrawCallPerfBenchmark.Run/gles_null_uniform: None

Wasn't printing anything before, so this CL goes back to that.

Bug: angleproject:7299
Change-Id: I8270129958a93e5c3fbb6cac321fe7e2396a6376
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3834068
Commit-Queue: Roman Lavrov <romanl@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Roman Lavrov <romanl@google.com>
2022-08-16 19:38:19 +00:00
Roman Lavrov
c5efd2b5d0 Improve Ctrl-c handling.
1. Restore original handlers after subprocess terminates. Otherwise the
   installed handlers persist and will swallow sigint outside of
   subprocess invocations.

2. Raise KeyboardInterrupt when subprocesses terminate to interrupt the
   script itself. run_perf_tests.py allows for some subprocess failures
   (--max-errors, with non-zero default). This results in ctrl-c
   interrupting subprocesses but the script just marks the test as FAIL
   and keeps running.

Bug: angleproject:7299
Change-Id: I2917008baa389491c7591596fc14ee139fa6417e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3831887
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
2022-08-16 18:21:18 +00:00
Shahbaz Youssefi
e79c9cd630 Vulkan: Use VK_EXT_primitive_topology_list_restart
From ANGLE's point of view, there is nothing to do with this extension
other than enable a feature that silences a validation error.

Bug: angleproject:3832
Change-Id: I094343d09c322e2848a65a5bc775d0f21388fb46
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3562380
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: mohan maiya <m.maiya@samsung.com>
2022-08-16 17:44:48 +00:00
Solti
428b6788d7 Update CHROMIUM_copy_texture.txt to match the code
[Overview]
The internal format list in the code mismatches the one in the spec txt.
see the link below for the missing formats in the spec txt:
  - http://screen/vDkHo3MFXpE3eQF.png

Therefore the CL is matching the spec txt to the code.

[Test]
CQ DRY RUN completed and passed

Bug: angleproject:4228
Change-Id: Ib66fb00b65ce2164779ca7649ec0652910a8e467
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3830892
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
2022-08-16 17:27:18 +00:00
angle-autoroll
6ee6fac97f Roll SwiftShader from a6c3e363b7a9 to c61fc9aec162 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/a6c3e363b7a9..c61fc9aec162

2022-08-16 syoussefi@google.com Implement VK_EXT_primitive_topology_list_restart

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-angle-autoroll
Please CC syoussefi@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://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: None
Tbr: syoussefi@google.com
Change-Id: I474d18909df96de1936c77411f9d33d237b0f74a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3834265
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-16 16:28:01 +00:00
Roman Lavrov
8878366fc5 Refactor to reduce main loop complexity.
Bug: angleproject:7299
Change-Id: I157e84b7a6718d59eecb00471d4ec7ae5b3317cf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3831885
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
2022-08-16 16:22:01 +00:00
Nicolas Capens
ad6513fe30 Unconditionally enable EGL_ANGLE_iosurface_client_buffer on macOS
EGL_ANGLE_iosurface_client_buffer does not depend on
VK_EXT_external_memory_host. Locked IOSurface memory gets copied to/from
staging images instead of being imported as device visible host memory.

Bug: chromium:1352481
Change-Id: I904e6af53e169ef04446181de91db6f3cdc31530
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3826164
Auto-Submit: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
2022-08-16 15:13:11 +00:00