Log

Author Commit Date CI Message
Jamie Madill 5ec6f8dd 2022-10-10T20:59:42 Capture/Replay: Only inline strings. This will simplify the trace code and the parsing logic. Previously we wrote some integer data in the cpp file, e.g.: const GLenum glDiscardFramebufferEXT_attachments_0[] = {...}; glDiscardFramebufferEXT(..., glDiscardFramebufferEXT_attachments_0); Bug: angleproject:7731 Change-Id: If7924b1bf231f584f4677a438232bedc7ea9bd69 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953338 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Jamie Madill 8403e4c5 2022-10-10T20:59:29 EGL: Resource IDs for Surface, Context and EGL Image. This will make these classes play nicely with resource maps. As these objects are used in a lot of places, and simplified C can't handle unordered_map, it's necessary to index the maps by simple packed IDs in capture/replay code. This indirection will also have increased safety as we validate EGL resource ID handle values before accessing the memory directly. Also hides some of the other EGL capture methods behind helper methods to simplify the C code and hide assignments and other complex maps. Bug: angleproject:7758 Change-Id: Ibc7bb56430d3068bd38877c9dfb011979d4ea234 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3957164 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Sungyong Choi c6390143 2022-10-12T09:57:55 Vulkan: Make compatible with GCC Resolves below warnings occurred with GCC build. 1) deperecated-copy Overriding an assignment operator without a copy constructor caused the deprecated-copy warnings. 2) unused-function 3) parenthesis Warnings occurred due to missing parenthesis around some logical expressions, add them to quiet the warnings. 4) unused variable 5) 'maybe-unused' attribute ignored Introduces 'ANGLE_MAYBE_UNUSED_PRIVATE_FIELD' macro to avoid 'attribute ignored' warning which is only occurred with GCC because GCC doesn't warn about 'unused non static data member' whereas Clang has Wno-unused-private-field. Signed-off-by: Sungyong Choi <sywow.choi@samsung.com> Bug: angleproject:7764 Change-Id: I8e7410a5ed8cb9b8f8b3202073d779fea63d6b75 Reviewed-by: Jeff Vigil <j.vigil@samsung.com> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963830 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 315b07b2 2022-10-19T22:06:44 FrameCapture: Fix UniformBlockBinding Follow up to: https://chromium-review.googlesource.com/c/angle/angle/+/3953334 Test: MEC for Grimvalor and Wild Arena Survivors Bug: angleproject:7731 Change-Id: I2a246c5701aaf42d77fd45487804f0f21562342e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3967870 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll 29624da3 2022-10-20T10:01:03 Roll SwiftShader from fdf41479349b to fa1a1fcf0fd2 (3 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/fdf41479349b..fa1a1fcf0fd2 2022-10-19 sugoi@google.com Fix zlib dependency for Regres 2022-10-19 capn@google.com Store phi variables in a collection of SIMD components 2022-10-19 capn@google.com Limit SPIR-V phi variable lifetimes 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 solti@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: solti@google.com Change-Id: I5b7c3d33a03ca3dc1f1de9c839dc97c5aa6235c7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3967405 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 7b4b56f0 2022-10-19T00:05:22 Vulkan: Missing output mask in GraphicsPipelineDesc Currently, there's some program state used in creating pipelines alongside what's in GraphicsPipelineDesc. This works because the pipeline cache lives in the program executable. With VK_EXT_graphics_pipeline_library however, we could create vertex input and fragment output partial pipelines that are independent from and are shared between multiple programs. To support this, any program state that's necessary for pipeline creation should be part of the GraphicsPipelineDesc structure. This change places the state affecting fragment output in GraphicsPipelineDesc. Bug: angleproject:7369 Change-Id: I2e48fc9da220475e1b2ed376fc947ce13489610e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963652 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Shahbaz Youssefi f0e3d8f9 2022-10-18T13:51:31 Vulkan: Shader component type in GraphicsPipelineDesc Currently, there's some program state used in creating pipelines alongside what's in GraphicsPipelineDesc. This works because the pipeline cache lives in the program executable. With VK_EXT_graphics_pipeline_library however, we could create vertex input and fragment output partial pipelines that are independent from and are shared between multiple programs. To support this, any program state that's necessary for pipeline creation should be part of the GraphicsPipelineDesc structure. This change places the state affecting vertex input in GraphicsPipelineDesc. A follow up change will do the same for state affecting fragment output. Bug: angleproject:7369 Change-Id: Iccf691a1597d786efa1625f7b1c22f906201f2e5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3964751 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Alexey Knyazev d8fe28dd 2022-10-19T00:00:00 Suppress clip distance tests on iOS Bug: angleproject:4452 Bug: angleproject:7768 Change-Id: Iabea037ded6ee3cfa0c325c59099772ac6adbbc6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963134 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Shahbaz Youssefi 025504b9 2022-10-17T17:03:03 Pass worker pools to image load functions In preparation for the ASTC decoder using threaded decoding. Bug: b/250688943 Change-Id: I70d669bcb57b900dbb633304182e174aec362203 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3961339 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Greg Schlomoff <gregschlom@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi b5929ac6 2022-10-17T18:06:32 Move worker pools to Display It doesn't make sense for each context to have its own set of CPU-count workers. This change also facilitates access to the thread pools where gl::Context is not available (but egl::Display is). Bug: b/250688943 Change-Id: I240353abba26c15338d59631b4179a58dfd662f5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3961334 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi fbd7d5fa 2022-10-17T17:20:09 Move thread pool classes to common/ In preparation for access by image_util files. Bug: b/250688943 Change-Id: I24777269a5071eae9a60f939635d01ed7246461f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3961454 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill e495e7fd 2022-10-14T13:52:47 Redo perf and trace test parameters. - Moves common argument parsing code into test_util. - Changes the perf test arg parsing to use the common functions. - Adds new --use-angle and --use-gl parameters to the trace tests. - Also adds new --offscreen and --vsync parameters to the traces. - Removes the now unneeded --enable-all-trace-tests argument. - Both --arg=value and --arg value work in test suites now. Now, instead of using --enable-all-trace-tests you can specify the backend with --use-angle=swiftshader, --offscreen, or combinations of those parameters. The test names are the same as they were before, but only the configured tests will run in a session. We could opt to simplify the test names in later CLs if we want to simplify the test running. Ideally we'd keep the perf reporting the same because then we'd keep the time series the same on the test infra. This also allows us to split up the trace tests into separate targets on the bots, which will better allow us to control the workloads and sampling of the tests. For example: - angle_perftests becomes - angle_perftests (microbenchmarks) - angle_trace_perf_vulkan_tests (traces with vulkan back-end) - angle_trace_perf_native_tests (traces with system GL) Bug: angleproject:7755 Change-Id: I537168f3a6de96425dfda05ed98220eff9b19b76 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956937 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Cody Northrop 03eccad2 2022-10-18T10:39:53 Tests: Add reduced crashing shader test Reduced case of a shader that crashes an app during SPIR-V compile. Test: GLSLTest_ES3.NestedPowFromUniform Bug: b/217922015 Change-Id: I8d0ccd8b2c4f4e8e51ac39c9dbfaafbf48423157 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3965051 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill d6ca85bd 2022-10-18T17:10:41 run_perf_tests.py: Remove unneeded Android args. These only apply to the Chromium Android test runner, which we no longer use for this script. Bug: angleproject:7755 Change-Id: I311ac204e1999a77872a76f6d0b9d149f7ac409e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963651 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Auto-Submit: Jamie Madill <jmadill@chromium.org>
angle-autoroll 9e724d5a 2022-10-19T10:01:22 Roll SwiftShader from 00b601d8ad24 to fdf41479349b (3 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/00b601d8ad24..fdf41479349b 2022-10-18 capn@google.com Move EmitState out of SpirvShader 2022-10-18 capn@google.com Move Reactor code emission from SpirvShader to EmitState 2022-10-18 capn@google.com Detect OpImageWrite in the analysis pass 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 solti@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: solti@google.com Change-Id: I09d2eb81699bcf804c9864d6518f27a4213ee89a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3966249 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Greg Schlomoff 60592f3c 2022-10-13T17:58:18 Reland "Make ANGLE's Worker Pool actually pool the threads." This is a reland of commit 0a4a7ea77661703e467293bc0f6d79c95061fa76 Original change's description: > Make ANGLE's Worker Pool actually pool the threads. > > When starting a lot of short-lived tasks, this increases performance by > over 70 times on my machine. > > Old code, decoding a 16x16 ASTC texture with 8 threads: > *RESULT AstcDecoderPerfTest.cpu_time: run= 2,847,708 ns > *RESULT AstcDecoderPerfTest.wall_time: run= 1,841,014 ns > > New code: > *RESULT AstcDecoderPerfTest.cpu_time: run= 81,602 ns > *RESULT AstcDecoderPerfTest.wall_time: run= 27,088 ns > > Bug: angleproject:7757 > Change-Id: Ib643405675c50b2ed8ccd24d6caa7e57335130e1 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953905 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Greg Schlomoff <gregschlom@google.com> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:7757 Change-Id: Ib06b37c8776dac5a2b1ea67921a9cd8687485ee2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963370 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 53fd00c5 2022-10-10T21:00:02 Add missing function prototypes to ANGLE ext headers. Bug: angleproject:7752 Change-Id: I316e181c61fe1daf3611c58b4db0321678d9eba2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963365 Reviewed-by: Cody Northrop <cnorthrop@google.com>
angle-autoroll 1a9882dd 2022-10-19T07:00:12 Roll Chromium from 2ee62a7f9f78 to c8d10c0b09ab (427 revisions) https://chromium.googlesource.com/chromium/src.git/+log/2ee62a7f9f78..c8d10c0b09ab 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 solti@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: https://chromium.googlesource.com/chromium/src/build.git/+log/2cf254f018..ef3d15e613 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/ca6213a9de..5c1eeb8715 * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/e6caea47f8..888eff8ec2 * buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/1111799723..1f633d41a0 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/20937c1154..50f814ce03 * third_party/android_build_tools/bundletool: IEZQhHFQzO9Ci1QxWZmssKqGmt2r_nCDMKr8t4cKY34C..sSBNyeRs5Px7nKXDLyQpz24T_OV9_rUkzqgXRNEaH0kC * third_party/android_build_tools/lint: -yqfSSiekeQe-1juzudRLkikLNk6_VZyv6tz2_GiDO4C..PgXTfxO_ExRhHwuAVaMUh48zDVj5bqVPSjecGWZ8TQIC * third_party/android_build_tools/manifest_merger: bfhl7B4_T6dP72d1sF-6RSeAQqwlw1qUx-FDEFh3sKIC..lgqr-qkYSNJxPdYaRg1beYU6to-4LBuHBw3WVO7_ancC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..b049f00cff * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/dbaca22bdf..64b6175557 * tools/luci-go: git_revision:9f65ffe719f73af390727d369b342c22fa37ea54..git_revision:0b4ca85948120a9e07c81e06386c031a693724c4 * tools/luci-go: git_revision:9f65ffe719f73af390727d369b342c22fa37ea54..git_revision:0b4ca85948120a9e07c81e06386c031a693724c4 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/bb43a76d63..cac69ccc90 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/0b8f559628..7ab82e1fdc * tools/skia_goldctl/linux: c-P40DdzhvukIRQ1DgesE2cEEU8bTLcd4p_e3LL1--sC..t3TPrZYHYFYj-Uycz4891UuvI29G25cnOuAXx4YKTJEC * tools/skia_goldctl/mac_amd64: OJJWEma6n1Cw5Ja1DQfdwbOFoFVp6071BB8VjklDcyYC..pkodJRDmOHJK-oKhKr3YyRBH-aZDOifqq2f39tyYYkwC * tools/skia_goldctl/mac_arm64: 9sTZ5XDqsy_Dj_v4NU3u4fLI_AGANp-zAJ3sof4rkwQC..MGH9P0-cwU4UFOV-4rkxKLBFEVtXIE8vtynMsKM4O4UC * tools/skia_goldctl/win: wql7tuE1euGE1rj5JPT6w6ev6KYL3hWzY6HggTHgKZ8C..-y4QQFDzRbkTKhmiP7CqEhagCHKtWFdfxwAK6anUvfAC No update to Clang. Bug: None Tbr: solti@google.com Change-Id: Ic159993868c30eff184a2ff02b270562618fa69f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3965056 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Sungyong Choi dc741ad6 2022-09-27T13:42:39 Add cstring header for memcpy and strcmp This patch adds cstring header for memcpy and strcmp Signed-off-by: Sungyong Choi <sywow.choi@samsung.com> Change-Id: I8130010a07d43490417302d0aa5557c3224d56ed Bug: angleproject:7765 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963829 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Alexey Knyazev fec93f40 2022-10-14T00:00:00 GL: Support clip and cull distance extensions Use EXT_clip_cull_distance on OpenGL ES to expose APPLE_clip_distance; use ARB_cull_distance on OpenGL to expose EXT_clip_cull_distance. Added disableClipCullDistance OpenGL workaround. Bug: angleproject:4452 Change-Id: I458cad29c10b9d9193c5233e24bac53361ba104e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956075 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 11f8f537 2022-10-17T16:59:50 Capture/Replay: Improvements to self-test. - print errors in the replay test - catch missing serialization - clean stale json output files before each replay - add flag to show replay stdout - fix help message Bug: angleproject:7731 Change-Id: Ibeb780f417bdbed4b249038920963dd1bd68f4aa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3962248 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill e0d2c7f2 2022-10-18T15:07:25 retrace script: Update trace test suite name. Bug: angleproject:7755 Change-Id: I1322543b199aacb4f083b67f0bc4f8bf93ea65b3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963359 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Roman Lavrov d22edf57 2022-10-18T14:57:55 Perf Tests: fail test on GL_CONTEXT_LOST after glFinish(). Interrupts the test in the case I ran into: ../../src/tests/perf_tests/ANGLEPerfTest.cpp:383: Failure Failed Context lost Warm-up trial took 1.11 seconds. [ FAILED ] TracePerfTest.Run/vulkan_dr_driving, where GetParam() = vulkan_dr_driving (1476 ms) [----------] 1 test from TracePerfTest (1476 ms total) Bug: angleproject:7762 Change-Id: Iaf416dbdaa0eb846b744bdb4d1eb596f0c2bb1a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963360 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Jamie Madill 0d203aef 2022-10-16T10:08:01 EGL: Add ID types for egl::Surface and egl::Image. This is in preparation for using resource maps for Context, Surface and EGLImage. The map change will make it much easier to work with the trace fixture. It will also have a small benefit in safety as we will longer be casting raw pointers for these types. As these objects are used in a lot of places, and simplified C can't handle unordered_map, it's necessary to index the maps by simple packed IDs in capture/replay code. Bug: angleproject:7758 Change-Id: Ib1d19622a4f2a6f0458cc28f5bbe30bb9f349b98 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3957163 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tiago Vignatti 4be8294c 2022-10-06T09:50:28 Tests: Enable EGL_ANGLE_iosurface_client_buffer tests on iOS This enables EGL_ANGLE_iosurface_client_buffer extension tests on iOS platform. A few OpenGLES related tests had to be suppressed though. I'm getting the following: [==========] 96 tests from 1 test suite ran. (960 ms total) [ PASSED ] 66 tests. [ SKIPPED ] 30 tests, listed below: [ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRX8888IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRX8888IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToRG88IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToRG88IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR8IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR8IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES2_Metal [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES3_Metal [ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRA1010102IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRA1010102IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRA1010102IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRA1010102IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToRGBA16FIOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToRGBA16FIOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToRGBA16FIOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToRGBA16FIOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToYUV420IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToYUV420IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToYUV420IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToYUV420IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToP010IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToP010IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToP010IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToP010IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.MakeCurrent/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.MakeCurrent/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRX8888IOSurfaceWithTexBaseMaxLevelSetToZero/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRX8888IOSurfaceWithTexBaseMaxLevelSetToZero/ES2_Metal Test: iPhone 13 and ./iossim -d 'iPhone 13' -c \ '--gtest_filter=\*IOSurfaceClientBufferTest\*' angle_end2end_tests.app Bug: angleproject:5491 Change-Id: Id7c489ae41b11442a2dd06174b2c279894e83401 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3957539 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll cb52a283 2022-10-18T14:59:08 Roll Chromium from 9ac79e275a41 to 2ee62a7f9f78 (131 revisions) https://chromium.googlesource.com/chromium/src.git/+log/9ac79e275a41..2ee62a7f9f78 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 solti@google.com,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 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/58b7594b44..20937c1154 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/89d1071f12..3027824279 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..b049f00cff * third_party/fuchsia-sdk/sdk: version:10.20221017.2.1..version:10.20221018.0.1 No update to Clang. Bug: None Tbr: solti@google.com,ynovikov@google.com Change-Id: Ie26224449309bfe1768dd502fca3da75885a1859 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3962679 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Robert Mader 67915fb4 2022-09-19T15:08:54 Reland "Reland "EGL: Implement EGL_EXT_image_dma_buf_import_modifiers"" This is a reland of commit f53eac299fb2e0083fa386af1f04038b32faebe4 New changes: - Disable the extension on old proprietary Mali drivers Original change's description: > Reland "EGL: Implement EGL_EXT_image_dma_buf_import_modifiers" > > This is a reland of commit 1d8dce2587a23b59f911c801856372996bdb2f64 > > New changes: > - fail softly on buggy drivers (which are part of the CI) > > Original change's description: > > EGL: Implement EGL_EXT_image_dma_buf_import_modifiers > > > > This reverts Ifbb0a182171646df8161f6f42eafe2a476fea6b2 and implements > > the previously missing bits. Inspired by the corresponding Vulkan > > implementation. > > > > The extension is used by an upcoming Exo feature which was successfully > > tested with this patch, see > > https://chromium-review.googlesource.com/c/chromium/src/+/3857556 > > > > Bug: angleproject:7664 > > Change-Id: I951d1a787e1db3a77b19fcea6186b7aa0a29872f > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3904345 > > Reviewed-by: Geoff Lang <geofflang@chromium.org> > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > > Bug: angleproject:7664 > Change-Id: I732fc9dad54366553987104fa035bde2afe08ecd > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3924350 > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:7664 Change-Id: I1f4cf04eb725d789d3dadb35fb6e59b0d3e470a6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3949029 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Jamie Madill bb420af7 2022-10-10T20:59:24 Capture/Replay: Rewrite map buffer calls. This wraps the map calls into simple helper functions that hide the return value assignment, which in turn will simplify C parsing. Allows us to remove storing the mapped buffer ID in the params. Bug: angleproject:7731 Change-Id: I756574cc0fa3d63cce4e0103b8f2861d093de186 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953335 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Christian Dullweber fba70715 2022-10-18T12:53:53 Revert "Make ANGLE's Worker Pool actually pool the threads." This reverts commit 0a4a7ea77661703e467293bc0f6d79c95061fa76. Reason for revert: Suspected to cause flakiness in angle_unittests on https://ci.chromium.org/p/chromium/builders/ci/Linux%20CFI?limit=200 Original change's description: > Make ANGLE's Worker Pool actually pool the threads. > > When starting a lot of short-lived tasks, this increases performance by > over 70 times on my machine. > > Old code, decoding a 16x16 ASTC texture with 8 threads: > *RESULT AstcDecoderPerfTest.cpu_time: run= 2,847,708 ns > *RESULT AstcDecoderPerfTest.wall_time: run= 1,841,014 ns > > New code: > *RESULT AstcDecoderPerfTest.cpu_time: run= 81,602 ns > *RESULT AstcDecoderPerfTest.wall_time: run= 27,088 ns > > Bug: angleproject:7757 > Change-Id: Ib643405675c50b2ed8ccd24d6caa7e57335130e1 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953905 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Greg Schlomoff <gregschlom@google.com> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:7757 Change-Id: I35c721ca770b4a62aa135fd2f80ae597d7ea14fa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3963528 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Christian Dullweber <dullweber@chromium.org>
Jamie Madill 4f85f862 2022-10-10T20:59:19 Capture/Replay: Remove references to uniform block indexes. This removes the references in captured traces to the uniform block index map. Because uniform block indexes use a double indirection, we store them in an unordered map. Moving to plain C precludes all uses for templated types, so we need to funnel the calls through a custom function. Bug: angleproject:7731 Change-Id: I35ae010b880ee669df09d750d5fb26d3baf907cd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953334 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi b521be4c 2022-10-14T23:09:26 Vulkan: Decouple shader-set from pipeline caches In preparation for VK_EXT_graphics_pipeline_library, where different pipeline caches (for the complete pipelines and the shaders subset partial pipelines) may create pipelines from the same shader set, the pipeline caches are pulled out of ShaderProgramHelper. In an upcoming change, ProgramExecutableVk will have more than one GraphicsPipelineCache instance, both creating pipelines through the same ShaderProgramHelper. The pipeline creation methods in ShaderProgramHelper are now const. This means a thread would be able to create pipelines using an object of this class while the main thread creates other pipelines using the same object, but in a different pipeline cache. Bug: angleproject:7369 Change-Id: Ib8a76dedf1105ba9dfcad9e972157c92ba18e349 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956944 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 84156f59 2022-10-18T10:01:09 Roll SwiftShader from 4de33dcbca0e to 00b601d8ad24 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/4de33dcbca0e..00b601d8ad24 2022-10-17 capn@google.com Revert CTS bug workaround 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 solti@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: solti@google.com Change-Id: I3f71064320720ad90743a54c5b38a336942e9db0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3962891 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jiawei Shao e1da4916 2022-10-18T15:29:53 Remove unused enum CacheResult Bug: angleproject:2516 Change-Id: Ib2f4f66279ebb54e05b26559cf5759ca78020f03 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3960887 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jiajia Qin <jiajia.qin@intel.com>
angle-autoroll 7a4bdb0e 2022-10-18T07:00:32 Roll Chromium from 19bc4c33cb49 to 9ac79e275a41 (248 revisions) https://chromium.googlesource.com/chromium/src.git/+log/19bc4c33cb49..9ac79e275a41 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 solti@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: https://chromium.googlesource.com/chromium/src/build.git/+log/869280514d..2cf254f018 * buildtools/linux64: git_revision:b9c6c19be95a3863e02f00f1fe403b2502e345b6..git_revision:57c352b2b03461c24b19c678c61d7aeacc6981f4 * buildtools/mac: git_revision:b9c6c19be95a3863e02f00f1fe403b2502e345b6..git_revision:57c352b2b03461c24b19c678c61d7aeacc6981f4 * buildtools/win: git_revision:b9c6c19be95a3863e02f00f1fe403b2502e345b6..git_revision:57c352b2b03461c24b19c678c61d7aeacc6981f4 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/516c2f5629..58b7594b44 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..98d333e8ae * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/77e64ae61e..dbaca22bdf * third_party/fuchsia-sdk/sdk: version:10.20221017.1.1..version:10.20221017.2.1 * third_party/nasm: https://chromium.googlesource.com/chromium/deps/nasm.git/+log/9215e8e1d0..5fd9246276 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/f6889b3bff..0b8f559628 No update to Clang. Bug: None Tbr: solti@google.com Change-Id: I7215f9a0a288a77edf773d24d2644569a3ae92b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3960885 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Gregg Tavares 968041b5 2022-08-19T12:11:23 Metal: Optimized BufferSubData per device Adds a staging buffer path which means there are 4 paths for bufferSubData. 1. direct copy * get a pointer to the buffer * copy the new data to the buffer * if the buffer is managed, tell metal which part was updated 2. use a shadow copy * copy the data to a shadow copy * copy the entire shadow to a new buffer * start using the new buffer 3. use a new buffer * get a new buffer (or unused) * put the new data in the new buffer * blit any unchanged data from the old buffer to the new buffer * start using the new buffer 4. use a staging buffer * get a staging buffer * put the new data in the staging buffer * blit from the staging buffer to the existing buffer. Further, there are 3 types of memory storage modes. Managed, Staged, Private. Based on the GPU type different storage modes and different paths in different sitatutions are more performant. So, add feature flags to select paths by GPU. Bug: angleproject:7544 Change-Id: I741dd1874201043416374194bd2001ded8dbd9b4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3842641 Reviewed-by: Kyle Piddington <kpiddington@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Quyen Le <lehoangquyen@chromium.org> Commit-Queue: Gregg Tavares <gman@chromium.org>
Jamie Madill 0e0ea026 2022-10-13T18:29:33 Split trace tests out into angle_trace_tests. This makes angle_perftests strictly for microbenchmarks. The trace tests are a better separated target because they are for both gold correctness tests and performance. You can now use the GN arg "build_angle_trace_tests" to control building the trace tests. "build_angle_trace_perf_tests" is still supported for compatibility. Updates the infra scripts to use this new trace tests target. Also updates the build so by default we'll build the trace tests if you check them out, without needing a custom arg. Also updates docs. Bug: angleproject:7755 Change-Id: I2b1ae67799234cc1aefe7cda5f3af945c3f867fd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953340 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 09b079bb 2022-10-14T14:28:10 Vulkan: Move pipeline subset out of pipeline desc This way, the same pipeline desc can be used to query multiple caches with different subsets. This design requires the pipeline cache to be templated, while the previous design required the desc to be copied (so the subset bits would be different). Bug: angleproject:7369 Change-Id: Id3fd92e6f9b059069952ff092a5c867e79287604 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956940 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
angle-autoroll 17844bd4 2022-10-17T18:54:15 Roll Chromium from cd88d0e4d12c to 19bc4c33cb49 (264 revisions) https://chromium.googlesource.com/chromium/src.git/+log/cd88d0e4d12c..19bc4c33cb49 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 solti@google.com,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: https://chromium.googlesource.com/chromium/src/build.git/+log/1d0c54336b..869280514d * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/d153cfe321..ca6213a9de * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/de45756350..e6caea47f8 * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/9572e56a12..685c4ad257 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/5810383480..516c2f5629 * third_party/android_build_tools/lint: DO1bMH_JFEfZXSkAknIs7AfgNh4IwLtJaeMJTdzfuJwC..-yqfSSiekeQe-1juzudRLkikLNk6_VZyv6tz2_GiDO4C * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..98d333e8ae * third_party/fuchsia-sdk/sdk: version:10.20221016.1.1..version:10.20221017.1.1 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/ec52abbb4e..f6889b3bff No update to Clang. Bug: None Tbr: solti@google.com,ynovikov@google.com Change-Id: I20a8d990dff7f0ce2072d8e307a50d569924c039 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3960560 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov b354aa4d 2022-10-17T13:18:17 Skip some end2end tests failing on iOS Bug: angleproject:7756 Change-Id: Ia9a7d9260feb97d094b2e58104d7cdb4a866e5b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3960968 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
angle-autoroll e2477b82 2022-10-17T10:01:51 Roll SwiftShader from ab3cb3f5416b to 4de33dcbca0e (2 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/ab3cb3f5416b..4de33dcbca0e 2022-10-14 capn@google.com Update Marl to e007bd3dd 2022-10-14 sugoi@google.com Run tests using the deqp-stdin-caselist option 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 solti@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: solti@google.com Change-Id: I5d902b1fd91ad750d8d703895f73e75ae903e519 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3958286 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 5901756a 2022-10-17T10:01:58 Roll vulkan-deps from 18608d767af1 to af6c033bca19 (5 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/18608d767af1..af6c033bca19 Changed dependencies: * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/78ce46e479..273665ad0d 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 solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://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: solti@google.com Change-Id: Iba5abc187ae69cd2fdf4cdb8d93c9e9ef2686536 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3958288 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 2afb512b 2022-10-17T07:03:38 Roll Chromium from 0bc5f81b0765 to cd88d0e4d12c (1269 revisions) https://chromium.googlesource.com/chromium/src.git/+log/0bc5f81b0765..cd88d0e4d12c 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 jmadill@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: https://chromium.googlesource.com/chromium/src/build.git/+log/a07961eeea..1d0c54336b * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/24fa2da896..d153cfe321 * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/64d36e572d..de45756350 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/88f6dc3118..5810383480 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/58c69ecc36..89d1071f12 * third_party/android_build_tools: https://chromium.googlesource.com/chromium/src/third_party/android_build_tools/+log/394370865d..4f07dd5cca * third_party/android_build_tools/manifest_merger: bUREd_PkCqlp2ww6zmyOLGf0jhqgbnf6GT4V1xkAZ10C..bfhl7B4_T6dP72d1sF-6RSeAQqwlw1qUx-FDEFh3sKIC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..98d333e8ae * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/2c0a8c736a..77e64ae61e * third_party/fuchsia-sdk/sdk: version:9.20221006.5.1..version:10.20221016.1.1 * third_party/r8/d8: tQcmB4wHWxamdPd8ix5IwMv8eBEbMBeN4vEtGjikDeQC..9PJITrOEIl2U8mvr44d5e9XjOdvzRPuF774VA3jWOsYC * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/d672069387..2619cde247 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/003fad096b..bb43a76d63 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/1d02fed28c..ec52abbb4e * tools/skia_goldctl/linux: N6uCjU9yuRs_YqzOLUOdwHsH-AYHQKQp4gidLlDHDesC..c-P40DdzhvukIRQ1DgesE2cEEU8bTLcd4p_e3LL1--sC * tools/skia_goldctl/mac_amd64: spR3Wh59oLDHcwMl_Aw4KX_h3c0G4xcOxQSi7KM8uNgC..OJJWEma6n1Cw5Ja1DQfdwbOFoFVp6071BB8VjklDcyYC * tools/skia_goldctl/mac_arm64: GBW03jFiyCg47tt4xFsQ4Qql_kYZm-A-ADSEmuqRCRIC..9sTZ5XDqsy_Dj_v4NU3u4fLI_AGANp-zAJ3sof4rkwQC * tools/skia_goldctl/win: UQplRaUw9FHcOfJNcDs_v_q1RgFiRQOm1YPonxadxu0C..wql7tuE1euGE1rj5JPT6w6ev6KYL3hWzY6HggTHgKZ8C Clang version changed llvmorg-16-init-6578-g0d30e92f:llvmorg-16-init-7184-gdeb82d4a Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/d67206938712543ab498dc992ebba3ebf51f182c..2619cde247bf037c2afa19b0913cccddac12ccbd/scripts/update.py Bug: None Tbr: jmadill@google.com Change-Id: I0c93d39875bd3228b2bb2f4dbb05f1f0beee179e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3958285 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi eaa71709 2022-10-14T11:47:07 Vulkan: s/ContextVk/Context in pipeline creation With VK_EXT_graphics_pipeline_library, pipeline creation may happen on a thread. This change prepares the interface such that only a vk::Context is needed, instead of ContextVk. Bug: angleproject:7369 Change-Id: Ib7e9e7e140e27a4af71bffee069c88e3d7f47dfa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956935 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 2265e37b 2022-10-12T09:27:16 Capture/Replay: Auto-generate EGL capture code. Replaces the custom code in the EGL stubs. Skips a few "Get" entry points because this CL doesn't implement pointer capture like we do for all the GL entry points. Includes a new state in the AttributeMap that indicates which type of attribute values we used when initializing the map. Bug: angleproject:4035 Change-Id: I272eac5e4068602ce710ef66c9a1dce5387943a5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3949911 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill 7c4dc253 2022-10-12T08:38:46 Capture/Replay: Clean up EGL capture. This switches the EGL capture types to ANGLE-casted pointers since that's what we receive in the capture layer. Note that even if the capture layer were used as a pure layer, not an EGL implementation, we'd still have these types for state tracking. This also prefixes each EGL class in the entry points with the egl namespace for consistency and for simplifying the ParamType code. Required changing to non-const gl::Context * in a few places. Also changes the gSurfaceMap to be indexed by the raw pointer value, which cleans up the code somewhat. Bug: angleproject:4035 Change-Id: Id800c1ba25e5819ac7ea1df8aab806bc393fe192 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3949910 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Greg Schlomoff 0a4a7ea7 2022-10-13T17:58:18 Make ANGLE's Worker Pool actually pool the threads. When starting a lot of short-lived tasks, this increases performance by over 70 times on my machine. Old code, decoding a 16x16 ASTC texture with 8 threads: *RESULT AstcDecoderPerfTest.cpu_time: run= 2,847,708 ns *RESULT AstcDecoderPerfTest.wall_time: run= 1,841,014 ns New code: *RESULT AstcDecoderPerfTest.cpu_time: run= 81,602 ns *RESULT AstcDecoderPerfTest.wall_time: run= 27,088 ns Bug: angleproject:7757 Change-Id: Ib643405675c50b2ed8ccd24d6caa7e57335130e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953905 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Greg Schlomoff <gregschlom@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao e8f9355c 2022-10-13T16:51:32 Vulkan: Add forceWaitForSubmissionToCompleteForQueryResult flag Add forceWaitForSubmissionToCompleteForQueryResult feature flag and enable it for ARM. Also force host wait if async submission is enabled. Bug: b/253522366 Change-Id: Ie2d7373930f1a2b3fc761d2f8d2df8fa84983c54 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3954044 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 72894f42 2022-10-14T18:27:07 Roll VK-GL-CTS from 7aaf3aef809d to bfc5b6f54270 (11 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/7aaf3aef809d..bfc5b6f54270 2022-10-14 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkansc-cts-1.0.1 into vk-gl-cts/main 2022-10-14 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main 2022-10-14 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main 2022-10-14 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.3.4 into vk-gl-cts/main 2022-10-14 quic_mnetsch@quicinc.com Merge vk-gl-cts/github-main into vk-gl-cts/main 2022-10-14 ziga@lunarg.com Fix uninitialized variable in multisample clear attachments tests 2022-10-14 aitor@lunarg.com Add remaining div by zero tests 2022-10-14 ziga@lunarg.com Add tests with primitive restart with no restart index 2022-10-14 zzoon@igalia.com Add tests for VkImageDrmFormatModifierExplicitCreateInfoEXT 2022-10-14 rgarcia@igalia.com Fix build on main branch 2022-10-14 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.3.4 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 jmadill@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: jmadill@google.com Change-Id: I7935ed36082d8571aa2e29cd7021b31f0b7a513d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956122 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 19fb11b6 2022-10-14T11:12:20 Vulkan: Merge warmed up compute cache into renderer It was done for graphics, but was accidentally missing for compute. Bug: angleproject:5881 Bug: angleproject:7629 Change-Id: I28a4c2e38b07b08e1636b443f2c0963130965ebb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956496 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
angle-autoroll b53970b6 2022-10-14T14:02:57 Roll VK-GL-CTS from f4ed7376e1da to 7aaf3aef809d (1 revision) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/f4ed7376e1da..7aaf3aef809d 2022-10-14 quic_mnetsch@quicinc.com Merge pull request #360 from tomeuv/zlib-uprev 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 jmadill@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: jmadill@google.com Change-Id: Ifc000c175264d2c79d4b530ee1a37c5abfb91f62 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3955960 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill 7d76160b 2022-10-14T09:03:12 Remove GLES 1.0 conformance tests on Win/Intel. Now this test suite is causing timeouts. e.g.: https://ci.chromium.org/ui/p/angle/builders/ci/win-test/2637/overview Bug: angleproject:7750 Change-Id: I62c0ca237d7a0f618823fbe5ff15070c21a9cdd0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956495 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 09a1aec4 2022-10-14T08:59:07 Expand suppression for async timer tests. Flaking on SwiftShader as well. Bug: angleproject:7548 Change-Id: I419c602184c03141c75b21bf3a0b66d8b2a34303 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3956494 Commit-Queue: Jamie Madill <jmadill@chromium.org> Auto-Submit: Jamie Madill <jmadill@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
angle-autoroll 10a0d021 2022-10-14T10:01:22 Roll SwiftShader from 6d0e2d57acf9 to ab3cb3f5416b (3 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/6d0e2d57acf9..ab3cb3f5416b 2022-10-14 sugoi@google.com Move the inner loop out of TestRoutine 2022-10-13 sugoi@google.com Add robustBufferAccess to PipelineCache::SpirvBinaryKey 2022-10-13 sugoi@google.com Add robustBufferAccess as part of PixelProcessor::States 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 jmadill@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: jmadill@google.com Change-Id: Id60e6bc2b8cef992d0e7fd9f7e0abef353fb9dd7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953330 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 3ca4cde7 2022-10-14T10:01:02 Roll vulkan-deps from 3ff9f454761a to 18608d767af1 (7 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/3ff9f454761a..18608d767af1 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/ef6c9714a8..5755de46b0 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/a88144de30..61187c4084 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/2446b5b849..e52fa1cf2d * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/c1afb7e157..78ce46e479 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 jmadill@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: jmadill@google.com Change-Id: I0046836694086151c77796546e3d5afb7e1f3548 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3955383 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 8e644365 2022-10-11T11:47:55 Vulkan: Rearrange state specification for pipeline libraries This change splits pipeline state setup based on whether the complete pipeline is being created or only a subset of it. However, no partial pipelines are yet created, that will be done in a following CL. Bug: angleproject:7369 Change-Id: Ife34c4bc39641ab8f06e7c78502f95a6bc16d15d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3949917 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Shahbaz Youssefi 94b45181 2022-10-12T14:54:14 Vulkan: Rearrange graphics pipeline desc bits In preparation for use of VK_EXT_graphics_pipeline_library, the pipeline state is split in three contiguous regions: - Vertex input - Pre-rasterization and fragment stages ("Shaders" for short) - Fragment output There is some state that affects both Shaders and Fragment output, which is split and placed in between the two. This will allow the hash and compare functions to eventually access each of those pipeline subsets as a contiguous piece of memory. Bug: angleproject:7369 Change-Id: Iedc4cf15ed6c7fed6ba93039889fbf5dd191e041 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3949914 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov 96bbc80b 2022-10-13T15:09:12 Restore default angle_gles1_conformance_tests Win Intel batch size Low batch size suspect for causing blue screen on this platform. Bug: angleproject:7750 Change-Id: I331f3aef22e313e318aeabb84b1277f4bf1678c9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953493 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 0b7f3f5e 2022-10-12T17:47:06 More robustness tests Similar test to what was introduced in https://chromium-review.googlesource.com/c/angle/angle/+/3943534, but for vertex and compute shaders. Bug: angleproject:7629 Change-Id: I743233136125358edb6a15760b1ece63c36d3f85 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3949915 Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
angle-autoroll a0fc6e43 2022-10-13T10:01:50 Roll vulkan-deps from 0386d7db7e59 to 3ff9f454761a (13 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/0386d7db7e59..3ff9f454761a Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/89db4e1caa..ef6c9714a8 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/a3350c0ff0..b53d3a6be3 * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/0df9899602..98f440ce68 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/ae08f71147..a88144de30 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/d05c85054b..c1afb7e157 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 jmadill@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: jmadill@google.com Change-Id: I5b0c4e027ae3fb3ca4c78691b6650c94a93b19e7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3949839 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 8d719a66 2022-10-13T10:01:35 Roll SwiftShader from 48f7cb2ab354 to 6d0e2d57acf9 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/48f7cb2ab354..6d0e2d57acf9 2022-10-12 swiftshader.regress@gmail.com Regres: Update test lists @ 48f7cb2a 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 jmadill@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: jmadill@google.com Change-Id: Ic96a547bf3b34e5c18276db6cd106b9e76834970 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3950348 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll c75adc3c 2022-10-13T07:01:59 Roll Chromium from 2a6c105f6b8f to 0bc5f81b0765 (627 revisions) https://chromium.googlesource.com/chromium/src.git/+log/2a6c105f6b8f..0bc5f81b0765 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 jmadill@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: https://chromium.googlesource.com/chromium/src/build.git/+log/aa1e02dfa7..a07961eeea * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/f4e35bb2e9..24fa2da896 * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/ebf2d34001..64d36e572d * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/849e53c238..9572e56a12 * buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/118a58005a..1111799723 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/27f289c474..88f6dc3118 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/2eecb3e113..58c69ecc36 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..4793433248 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/17cf81d90a..2c0a8c736a * third_party/r8/d8: z23wTHakTR_i93g5BoaHQuO_yWgLT-AAt0fjTqQm_YgC..tQcmB4wHWxamdPd8ix5IwMv8eBEbMBeN4vEtGjikDeQC * tools/luci-go: git_revision:a0624fca6d6e6fc1da6462ce0ee7678d4cc739d8..git_revision:9f65ffe719f73af390727d369b342c22fa37ea54 * tools/luci-go: git_revision:a0624fca6d6e6fc1da6462ce0ee7678d4cc739d8..git_revision:9f65ffe719f73af390727d369b342c22fa37ea54 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/20dd97665a..003fad096b * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/28e985ae84..1d02fed28c * tools/skia_goldctl/linux: vMuEaxuoKcSgIEyacUY5YqByCP4RveJIid7OXrLUZnwC..N6uCjU9yuRs_YqzOLUOdwHsH-AYHQKQp4gidLlDHDesC * tools/skia_goldctl/mac_amd64: OKl2kxI6rF8oLCJQma7QhqQHTC_J3hMRKoAqyW4tqq0C..spR3Wh59oLDHcwMl_Aw4KX_h3c0G4xcOxQSi7KM8uNgC * tools/skia_goldctl/mac_arm64: pZmD81q5BF6lQcwTgrtJre8iXtofPubDLM8624rQKNsC..GBW03jFiyCg47tt4xFsQ4Qql_kYZm-A-ADSEmuqRCRIC * tools/skia_goldctl/win: 3IrV971Fn9UEAXu0UwL8cBBY3L8il5zi4Qjhvfa43TQC..UQplRaUw9FHcOfJNcDs_v_q1RgFiRQOm1YPonxadxu0C No update to Clang. Bug: None Tbr: jmadill@google.com Change-Id: I4df3292490706e24cfd6af757095c724dcad9a3c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3949586 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 460efa21 2022-10-12T10:01:14 Roll SwiftShader from acdfa394561f to 48f7cb2ab354 (5 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/acdfa394561f..48f7cb2ab354 2022-10-11 capn@google.com Unplug SPIR-V instruction profiling support 2022-10-11 capn@google.com Unplug the shader debugging support 2022-10-11 capn@google.com Refactor GroupNonUniformArithmetic handling 2022-10-11 swiftshader.regress@gmail.com Regres: Update test lists @ acdfa394 2022-10-11 sugoi@google.com Recursively update dEQP files when running the daily change in Regres 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 jmadill@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: jmadill@google.com Change-Id: I57ca20176395b9d968ef2fd57915b8969416c37b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3948048 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll 10e45613 2022-10-12T10:01:34 Roll vulkan-deps from 24053e9970b7 to 0386d7db7e59 (4 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/24053e9970b7..0386d7db7e59 Changed dependencies: * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/1cecf91701..a3350c0ff0 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/cb519989cd..ae08f71147 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/7625be6a26..d05c85054b 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 jmadill@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: jmadill@google.com Change-Id: Ia069065d02f7b4b8fc7393a39209e5dcd99a0ef0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3947946 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 0f74cd0b 2022-10-12T08:06:26 Roll Chromium from 475715430cb8 to 2a6c105f6b8f (1733 revisions) https://chromium.googlesource.com/chromium/src.git/+log/475715430cb8..2a6c105f6b8f 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 jmadill@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: https://chromium.googlesource.com/chromium/src/build.git/+log/6b83819915..aa1e02dfa7 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/b47f3d62c4..f4e35bb2e9 * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/eddc4cee09..ebf2d34001 * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/db2a783a7d..849e53c238 * buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/08ebcbe7b6..118a58005a * testing: https://chromium.googlesource.com/chromium/src/testing/+log/cdb43fc0b8..27f289c474 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/11566d5c44..94f1169192 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..0dc9361cea * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/51a6576d1b..17cf81d90a * third_party/fuchsia-sdk/sdk: version:9.20221006.4.1..version:9.20221006.5.1 * third_party/r8/d8: IgKfK01VX-GA1mjxpHqq-7kL9VDb5qlXZnSW0Jtl6cAC..z23wTHakTR_i93g5BoaHQuO_yWgLT-AAt0fjTqQm_YgC * third_party/turbine: RXO2k7-PyXvbDjiK9EjbsheQfxXme2n0ABNX-MxR0JcC..rrpgWQ-uylo8c5IPgUVP464LwcVOmt29MqwsR59O_zkC * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/14ceacc495..d672069387 * tools/luci-go: git_revision:c893d7a542f324fe7c1a63c83e57ccea23631ffe..git_revision:a0624fca6d6e6fc1da6462ce0ee7678d4cc739d8 * tools/luci-go: git_revision:c893d7a542f324fe7c1a63c83e57ccea23631ffe..git_revision:a0624fca6d6e6fc1da6462ce0ee7678d4cc739d8 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/88a9d4ea84..20dd97665a * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/0cbb10ffdf..28e985ae84 * tools/skia_goldctl/linux: pnprsw4_qiLaFOB3waX424Uaz5zX3MSh6Iz5A3OwpR8C..vMuEaxuoKcSgIEyacUY5YqByCP4RveJIid7OXrLUZnwC * tools/skia_goldctl/mac_amd64: qMTthZODlW9LCvkQX3upPhaL6t3VwQcYrs9cDYwP75oC..OKl2kxI6rF8oLCJQma7QhqQHTC_J3hMRKoAqyW4tqq0C * tools/skia_goldctl/mac_arm64: 3NLkdA7AHyUKOEdv0Dc16lTUNJN9FjFkDIzVXthPsDkC..pZmD81q5BF6lQcwTgrtJre8iXtofPubDLM8624rQKNsC * tools/skia_goldctl/win: wEIMZs5miJMkTVDLFMkQjh4dJWrLB4k8VQDU4aUPSwYC..3IrV971Fn9UEAXu0UwL8cBBY3L8il5zi4Qjhvfa43TQC No update to Clang. Bug: None Tbr: jmadill@google.com Change-Id: I2d4ef8f9e2f99b6f5e7286208492239e6e9c352a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3947945 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuxin Hu c22f091d 2022-09-29T18:58:33 Replace Hard-Coded egl image attribs This change is adapted from https://crrev.com/c/3838866 Added two hash maps to track below information: EGLImage* --> EGLint* attrib TextureID --> EGLImage* During the CaptureShareGroupMidExecutionSetup, when we iterate through all the textures the app created, if the texture is bound to External target, we will refer to the hash map TextureID --> EGLImage* to find the EGLImage* pointer, and then use the result as the key to refer to the other hash map EGLImage* --> EGLint* attrib to find the attributes used to create that EGLImage object. We can then use the attributes to populate eglCreateImage or eglCreateImageKHR calls in the trace calls. Bug: angleproject:7570 Change-Id: I729de4ddea59242ccbe6243e036451f290545185 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3928212 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Charlie Lao 1119dfbd 2022-10-03T16:47:29 Vulkan: disable supportsHostQueryReset feature if func is null This is try to clean up a old fix for chromium security bug chromium:1273344 that in some bots we are seeing supportsHostQueryReset feature enabled but vkResetQueryPoolEXT pointer is null. We fixed that in crrev.com/c/3313382 that added a check of vkResetQueryPoolEXT AND supportsHostQueryReset feature flag. This CL disables the feature flag if vkResetQueryPoolEXT pointer is null so that other places we only need to check feature flag. Bug: b/250706693 Change-Id: I2d9f9726f081e21a37bbb0bb205003c390f2d32c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3929236 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com>
Shahbaz Youssefi 135022e4 2022-10-11T00:03:11 Vulkan: Create robust pipelines based on context state Previously, pipelines were made robust based on whether any context in the share group has so far been made robust. This means that pipelines created on non-robust contexts would still be compiled as robust. Inefficiency aside, this was buggy because robustness was not part of the pipeline cache key, so if a pipeline was created as non-robust first, then recreated in a robust context, it would reuse the non-robust variant. With VK_EXT_pipeline_protected_access, a similar situation arises for context protected-ness. However, it is incorrect in that case to create pipelines as protected unnecessarily. This change makes pipeline robustness a part of the pipeline cache key, in preparation for protectedness to be added similarly. Compute programs may now generate multiple pipelines as a result too. Bug: angleproject:7629 Change-Id: Ie95f10eff878f8c8b221c1018da44385c7aad15e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3943534 Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Shahbaz Youssefi 9b5fff82 2022-10-05T21:56:00 Vulkan: Emulate shader stencil export for MSRTT The MSRTT emulation code had one corner case issue that could lead to performance and memory inefficiencies. That is when stencil needs to be unresolved and VK_EXT_shader_stencil_export is not supported. This change adds a path to emulate VK_EXT_shader_stencil_export and removes this inefficiency. This should help Chromium on older Android devices that lack both this and the recent VK_EXT_multisampled_render_to_single_sampled extensions. Chromium frequently breaks the render pass (crbug.com/1336981), which easily leads to this situation. Bug: angleproject:4836 Change-Id: Ifceec43f7f3807b7e32f4b379edcd4351ae76414 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3935892 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Charlie Lao b1d699da 2022-10-04T15:27:51 Vulkan: Don't wait QueueSerial if supportsHostQueryReset enabled In QueryVk::getResult() we are waiting for query's queueSerial to complete, even though QueryHelper::getUint64Result() we are also using VK_QUERY_RESULT_WAIT_BIT to ask vulkan driver to wait for result. Based on the comment, the reason for that queueSerial wait is because "its reset command may not have been performed by the GPU yet.". But if mFeatures.supportsHostQueryReset is enabled, we use vkResetQueryPoolEXT to reset the query, and this host reset is immediate, so there is no need to wait for queueSerial in this case. This CL disables the wait when host reset is enabled and relies on vkGetQueryPoolResults(VK_QUERY_RESULT_WAIT_BIT) to do actual wait. This should help performance on immediate renderer where the query result might be available before renderpass completion. Bug: angleproject:3965 Change-Id: Ibe61c289f1f3d1312e79ac80a2b5de23b90ef87c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3935444 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Ian Elliott <ianelliott@google.com>
Charlie Lao 76f377c5 2022-06-17T16:05:16 Vulkan: Break renderpass when switch from query to non-query getQueryResult will wait for query result to be available, which means a potential CPU bubble if the result is not yet available. On tiler GPUs it will at least wait for renderpass to complete. Usually query enabled draws are very tiny (usually just draw a point to see if it is occluded or not), and query disabled draws are expensive. Some apps do issue a glFlush when switch from query draw to non-query draw, but app like dead_by_daylight does not issue such flush. In order to reduce the bubble, this CL ends renderpass and issue a flush when we switch from query enabled draws to non-query enabled draw so that the result will be available much earlier, this reduce the CPU bubble. This result in dead_by_daylight frame time improves from 5.45ms to 3.5ms (35% improvement). Bug: b/250706693 Change-Id: Ia3a32a9fb336e6f256809b3cad83f61a45415fb1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3931739 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Charlie Lao <cclao@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Brian Sheedy 219af5de 2022-10-11T18:05:47 Revert "Reland "EGL: Implement EGL_EXT_image_dma_buf_import_modifiers"" This reverts commit f53eac299fb2e0083fa386af1f04038b32faebe4. Reason for revert: Suspected of causing problems on kevin devices again. Original change's description: > Reland "EGL: Implement EGL_EXT_image_dma_buf_import_modifiers" > > This is a reland of commit 1d8dce2587a23b59f911c801856372996bdb2f64 > > New changes: > - fail softly on buggy drivers (which are part of the CI) > > Original change's description: > > EGL: Implement EGL_EXT_image_dma_buf_import_modifiers > > > > This reverts Ifbb0a182171646df8161f6f42eafe2a476fea6b2 and implements > > the previously missing bits. Inspired by the corresponding Vulkan > > implementation. > > > > The extension is used by an upcoming Exo feature which was successfully > > tested with this patch, see > > https://chromium-review.googlesource.com/c/chromium/src/+/3857556 > > > > Bug: angleproject:7664 > > Change-Id: I951d1a787e1db3a77b19fcea6186b7aa0a29872f > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3904345 > > Reviewed-by: Geoff Lang <geofflang@chromium.org> > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > > Bug: angleproject:7664 > Change-Id: I732fc9dad54366553987104fa035bde2afe08ecd > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3924350 > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:7664 Change-Id: I2ffc508ea4cc9e95055084fed4f63a52d9afdbd2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3946903 Auto-Submit: Brian Sheedy <bsheedy@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Lubosz Sarnecki a217dd56 2022-10-06T11:25:31 Tests: Add The Witcher: Monster Slayer trace. Test: angle_perftests --gtest_filter="*the_witcher_monster_slayer*" Bug: angleproject:7747 Change-Id: I1851fc00cb665485b6111b4e01b0075d2440e62a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3942649 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Roman Lavrov 6eff905c 2022-10-11T10:08:12 Make Android gold tests populate os and os_version correctly. os = Android os_version = {ro.build.fingerprint} These show up in Skia gold. Currently set to Linux info. Bug: None Change-Id: If2ffe5e8a6620fde9bd0a983f9c0d11ffe6a75c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3946179 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill f8930fd8 2022-10-11T09:20:24 infra: Increase timeout on perf bots. This sets an explicit 3 hour timeout for all bots, and bumps the timeout for the perf bots to 5 hours. Bug: angleproject:7738 Change-Id: I2ed3ce319046ef8a9ec61128f4970c03ec1d2ecf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3945072 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 32908ad5 2022-10-11T10:01:13 Roll vulkan-deps from 1172dba33888 to 24053e9970b7 (6 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/1172dba33888..24053e9970b7 Changed dependencies: * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/6c64537135..cb519989cd * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/96595a7710..7625be6a26 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 jmadill@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: jmadill@google.com Change-Id: I76d603893b611536430cb1fa9b59aef219a86bc9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3944893 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Gert Wollny f2785e41 2022-10-10T08:21:36 capture/replay: validate after resetting unpack alignment Otherwise validation will fail, because we try to validate the temporary set alignment against the alignment that would be active without MEC. Bug: angleproject:7564 Bug: angleproject:7180 Change-Id: I40cac84be122c779b9beba39f155567f9edbee75 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3936631 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Cody Northrop 5bafe449 2022-10-05T20:09:23 FrameCapture: Create default context reset calls Add support for emitting default reset calls for some entrypoints when recording a capture from the beginning. Test: Lineage 2 Revolution MEC Bug: angleproject:7741 Change-Id: I8e4e1184f3e3b68527a65283c459a43d135e95b4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3938442 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi b3b855d2 2022-10-09T21:39:16 Vulkan: Features for two exts - VK_EXT_graphics_pipeline_library - VK_EXT_pipeline_protected_access Bug: angleproject:7369 Bug: angleproject:7714 Change-Id: I42b5b5a2758b32625dc12352d521cfa1dff1aa90 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3939919 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll a8f03d40 2022-10-10T16:58:58 Roll VK-GL-CTS from 3739dbc26ccf to f4ed7376e1da (7 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/3739dbc26ccf..f4ed7376e1da 2022-10-10 ziga@lunarg.com Add imageless framebuffer with different attachments test 2022-10-10 gleese@broadcom.com Add depth range interaction tests 2022-10-10 rgarcia@igalia.com Enable some combined pipeline and image robustness tests 2022-10-10 russellc@nvidia.com Add more VK_EXT_acquire_drm_display tests 2022-10-10 russellc@nvidia.com Add VK_EXT_acquire_drm_display tests 2022-10-10 ziga@lunarg.com Add tests with create pipeline cache flags 2022-10-10 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 jmadill@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: jmadill@google.com Change-Id: I014e5053382dca945511b74676eb6016250733df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3942406 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill 70244096 2022-10-10T10:20:12 Perf Tests: Enable --split-shard-samples on the bots. This should make all sharts run at most one sample for each test. This in turn should mitigate inter-run variance because we'll sample from a wider pool of machines for each test. Bug: angleproject:7738 Change-Id: Ied96235edff81c8ea6f3fb8ac0e4fb21d6254d4e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3942604 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill d0a024f9 2022-10-09T16:47:33 Lower perf tests resource usage further. This reduces the warmup trials from 2->1 and the trial time from 5s -> 4s. Old: (2 warmup + 3 trials) * 5s / trial ~= 25s per sample New: (1 warmup + 3 trials) * 4s / trial ~= 16s per sample The tests should run in about 2/3 the time as it took prior. A future change will likely have to split up the tests so we can run shorter shards in sequential groupings between tests. Bug: angleproject:7738 Change-Id: Ic6c744be838174b61f4eb832189ccad14f89103d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3939917 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 3e25d37f 2022-10-10T10:01:59 Roll SwiftShader from 01fade1fc521 to acdfa394561f (2 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/01fade1fc521..acdfa394561f 2022-10-07 capn@google.com Update Marl to 14549e9d1 2022-10-07 capn@google.com Fix enabling XCB and Wayland WSI builds on Linux 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 jmadill@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: jmadill@google.com Change-Id: I0c69e8d43fbc374435ec17cf70444bfcdaadff4b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3939782 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
George Burgess IV 54d094fe 2022-05-23T13:05:46 angle: fix potential nullptr dereference `checkIsScalarBool` immediately deref's `typedCond`, which may be NULL. Prevent that. Caught by the static analyzer: > device/generic/vulkan-cereal/third-party/angle/src/compiler/translator/ParseContext.cpp:893:9: warning: Called C++ object pointer is null [clang-analyzer-core.CallAndMessage] Bug: b/206470603 Test: None Change-Id: I2c055d637fb3ef254c0cebfae32bfbe17bf850ea Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3935460 Auto-Submit: Greg Schlomoff <gregschlom@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Lubosz Sarnecki 85631d24 2022-10-06T10:13:31 Tests: Add 3D Pool Ball trace. Test: angle_perftests --gtest_filter="*3d_pool_ball*" Bug: angleproject:7742 Change-Id: I92870b928ee66af3eae903d91512b6943b893599 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3932171 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill 1b5cf9f0 2022-10-07T19:02:16 run_perf_tests: Reduce warmup trials from 3 to 2. This is an attempt to reduce utilization on the bots, which are now taking too long and causing errors. Bug: angleproject:7738 Change-Id: I1c576b2d0989240482d332712f7d93841e933902 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3937051 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill f8d393da 2022-10-05T10:09:34 Capture/Replay: Make retrace restore touch output files. This should force a recompile of modified files. Bug: angleproject:7731 Change-Id: I52c607fdda97c09e557a9ac3144fa67de3a17ee7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3937048 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 8bac3563 2022-10-07T17:36:53 infra: Update timeout for perf tests. Changes 200 minutes to 120 minutes. Also applies the timeout to the Pixel 4 perf tests which are now timing out with the latest increase in warmup time. Bug: angleproject:7738 Change-Id: Ib43d61cb218aac24a5d9ae190813256a72b9eccc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3937050 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Tiago Vignatti cad7979e 2022-10-07T11:08:14 Metal: Build fix TextureMtl code Changes introduced in CL https://crrev.com/c/3915180 caused an issue when building Metal with TARGET_OS_SIMULATOR enabled. This fixes that and a minor formatting issue that presubmit hook caught). Test: build ANGLE with Metal renderer enabled on iOS. Bug: angleproject:7573 Change-Id: I08baf64e3d37b97af76e9e04188836ed253d34b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3939217 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Chris Dalton 7c1ddff3 2022-10-06T18:28:45 Include Apple1 in the Metal framebuffer-fetch impl of PLS Framebuffer fetch was mistakenly limited to the Apple2+ GPU families, but Apple1 also supports programmable blending. Bug: angleproject:7279 Change-Id: Ia5a63ac1cb6462a6299db12bfb67fea12f15bb8b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3935458 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Chris Dalton <chris@rive.app>
Jamie Madill b6cc672c 2022-10-06T11:10:42 Perf Tests: Divide test samples between shards. Instead of a single test shard running all samples for a test, we run a single sample on different shards to produce a combined measurement that can account for variance between test machines. Bug: angleproject:7671 Change-Id: I04bbd51de257f2f299783ce3bd65da3d9348c8dc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3937044 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill ad2fbc7d 2022-10-07T14:35:49 Roll third_party/OpenGL-Registry/src/ 11d7b7bae..5bae8738b (5 commits) Also removes our copy of gl.xml now that upstream patches are merged. https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry/+log/11d7b7baebfc..5bae8738b23d $ git log 11d7b7bae..5bae8738b --date=short --no-merges --format='%ad %ae %s' 2022-09-29 sunserega2 [xml] Fixes for defined but unused enum groups (#520) 2022-09-29 julius_hager Added group PixelType to multiple-enums (#529) 2022-09-29 gnl021 EXT_separate_depth_stencil: Explicit unsupported cases (#531) 2022-09-29 jmadill Add enum groups for ANGLE use cases. (#538) 2022-09-29 syoussefi Clarify that PLS doesn't allow leak from outside framebuffer (#540) Created with: roll-dep third_party/OpenGL-Registry/src Bug: angleproject:6461 Change-Id: I6b7d8471144babe5cdd465c64574804f85c9e4f2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3937049 Commit-Queue: Jamie Madill <jmadill@chromium.org> Auto-Submit: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 8d502f2d 2022-10-06T10:20:26 Perf Tests: Simplify merger script. This script contains a lot of logic copied from Chromium scripts that we don't need. This CL removes some of it. Bug: angleproject:7671 Change-Id: I831c2620cf5d5d1325d51605122a6998fcf2d3c9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3937043 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Chih-Hung Hsieh 7072bd9b 2022-02-09T14:43:18 Fix cert-dcl16-c warnings Bug: b/120614316 Test: make tidy-soong_subset Change-Id: Iddde03d9a554b078ef87d3b8d4ab3de78b40a725 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3935459 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Greg Schlomoff <gregschlom@google.com>
Solti 496b3532 2022-10-07T15:49:08 fix typo Bug: None Change-Id: Ieca7fcd5b8172ad16cc73f453f6e2e2f29ae6016 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3939221 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya dbbfdd22 2022-10-06T13:39:20 Vulkan: Bug fix in GL_QCOM_shading_rate Don't initialize "vkCmdSetFragmentShadingRateKHR" before creating VkDevice as it leads to a nullptr assertion in RendererVk::canSupportFragmentShadingRate. Separate out instance and device function pointer initializations. Bug: angleproject:7172 Change-Id: I55b5b41313857a2861a197f17d7f88b71aec907f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3938443 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 0dd4e4e6 2022-10-07T10:01:42 Roll vulkan-deps from 7d797ec7d6bb to 1172dba33888 (4 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/7d797ec7d6bb..1172dba33888 Changed dependencies: * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/a6e6454ef2..1cecf91701 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/cd9b4afed4..6c64537135 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/a02d471126..96595a7710 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 ianelliott@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: ianelliott@google.com Change-Id: I9f4ccd63e2803daf2beb250ae8808640969506cf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3939208 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll fdf4a584 2022-10-07T10:01:18 Roll SwiftShader from 2b155acd6a90 to 01fade1fc521 (3 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/2b155acd6a90..01fade1fc521 2022-10-07 nicolascapens@google.com Merge changes Ie0e663e1,I97918fd5 2022-10-06 sugoi@google.com Regres main.go cleanup 2022-10-06 martin.troiber@gmail.com Fix repeated character 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 ianelliott@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: ianelliott@google.com Change-Id: Id42afc15f6dce0e17bc51de6d070f50b4b0ffe78 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3938759 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 2b3c8aaf 2022-10-07T08:31:21 Roll Chromium from 7903a06a3c9a to 475715430cb8 (558 revisions) https://chromium.googlesource.com/chromium/src.git/+log/7903a06a3c9a..475715430cb8 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 ianelliott@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: https://chromium.googlesource.com/chromium/src/build.git/+log/c34b59a3b6..6b83819915 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/8d901f9a01..b47f3d62c4 * buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/27c4bb6c70..eddc4cee09 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/6ed9a5cc4a..cdb43fc0b8 * third_party/android_build_tools: https://chromium.googlesource.com/chromium/src/third_party/android_build_tools/+log/65b2c6ba64..394370865d * third_party/android_build_tools/manifest_merger: 0cYQOUjN8K9fAtfcm6Vwi30XcO6mPJU_5v4-pUkBg0sC..bUREd_PkCqlp2ww6zmyOLGf0jhqgbnf6GT4V1xkAZ10C * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/c4219fa517..11566d5c44 * third_party/android_platform: https://chromium.googlesource.com/chromium/src/third_party/android_platform/+log/04b33506bf..1bf9b93243 * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/a34cd77b53..3f159e715e * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..6cc3b1e4ab * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/99c8282eb5..51a6576d1b * third_party/fuchsia-sdk/sdk: version:9.20221005.2.1..version:9.20221006.4.1 * third_party/ijar: https://chromium.googlesource.com/chromium/src/third_party/ijar/+log/af7b288c8f..b35e191547 * third_party/r8/d8: C5fVAulygxp-vnd9QQ9555s4drK-wMwSthIIcDX0N-wC..IgKfK01VX-GA1mjxpHqq-7kL9VDb5qlXZnSW0Jtl6cAC * tools/luci-go: git_revision:9b6501cd8b61afbb92c76207dfd2594606a4b4d1..git_revision:c893d7a542f324fe7c1a63c83e57ccea23631ffe * tools/luci-go: git_revision:9b6501cd8b61afbb92c76207dfd2594606a4b4d1..git_revision:c893d7a542f324fe7c1a63c83e57ccea23631ffe * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/186c5f3430..88a9d4ea84 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/5a0113e764..0cbb10ffdf * tools/skia_goldctl/linux: vvnmipanCNz0xZWcZxMxqF8Dm17k5IzoIIuSAxayctEC..pnprsw4_qiLaFOB3waX424Uaz5zX3MSh6Iz5A3OwpR8C * tools/skia_goldctl/mac_amd64: IvvIkJXPEctNxoRBIUUUuHSJN0vsFTR9XgTza8JoCngC..qMTthZODlW9LCvkQX3upPhaL6t3VwQcYrs9cDYwP75oC * tools/skia_goldctl/mac_arm64: PobY7qdsILEzxp0nSF8_mIJNJpPQiFs2mtNqOXLZlAYC..3NLkdA7AHyUKOEdv0Dc16lTUNJN9FjFkDIzVXthPsDkC * tools/skia_goldctl/win: mMto2aiE2BsVX1RoY_FYEPJ7ph496TgwksEHvbcwQJsC..wEIMZs5miJMkTVDLFMkQjh4dJWrLB4k8VQDU4aUPSwYC No update to Clang. Bug: None Tbr: ianelliott@google.com Change-Id: I066bdd85c5bec0e2a3390e9ca0bb6eec807e32ae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3939205 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Dean Jackson 592b60fb 2022-10-06T12:34:48 Remove unnecessary fprintf of Metal shader output type Bug: angleproject:7740 Change-Id: I487913df1d0f29302ac6e955c27ee7cf4f34a73b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3934692 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Amirali Abdolrashidi c19ec948 2022-08-23T10:43:59 Vulkan: Implement imageless framebuffers * Added the attachment image and create info objects to be used for imageless framebuffers created in getFramebuffer(). * New helper class for framebuffers in RenderPassCommandBufferHelper: MaybeImagelessFramebuffer, which includes a framebuffer object, if the framebuffer is imageless, and the image views. This is to make sure that the args for render pass begin info will be correctly set up according to the status of the used framebuffer. * Refactored the collection of attachments in getFramebuffer() into a new function, getAttachmentsAndImagesFromRenderTargets(). It also returns their corresponding ImageHelper* objects used to create the framebuffer (from their image properties). * New struct: RenderTargetInfo; which keeps track of render targets and whether resolve image should be used for the render pass in the form of the enum class RenderTargetImage. * Added a new arg to getFramebuffer(): resolveRenderTargetIn; to use when there is a valid resolveImageViewIn. * Without using the framebuffer cache, we would require to handle the framebuffer destruction by adding it to the garbage instead of releasing it. For example, FramebufferVk::destroy() now adds mCurrentFramebuffer to the garbage. * Added new framebuffer unit tests. * Added tests where two textures with different attributes are bound to the same framebuffer before drawing, one after another. * Added test where a blit occurs from a multisample texture into a non-zero level of a resolve texture, each bound to a separate FBO. * Added a new perf test to compare performance for enabled imageless framebuffers vs disabled. (Credit: cclao) Bug: angleproject:7553 Change-Id: Iacdbd73aaa01cbb0e37abf01ae4892bdfdd4b12f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3827644 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Charlie Lao <cclao@google.com>