Log

Author Commit Date CI Message
Shahbaz Youssefi 157ddfdc 2021-01-06T23:20:36 Build compiler_tests only if GLSL or ESSL build is enabled Most of these tests use TranslatorGLSL or TranslatorESSL (often through ShaderCompileTreeTest). In specialized builds that disable GLSL and ESSL shader generation, disable these unit tests. Bug: chromium:1161513 Change-Id: Ib87e651706f141a41ffdaebfb0cbe5168582e341 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2613202 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Peng Huang acdb63b8 2020-12-23T12:57:08 Remove the checking before accessing to function pointers Bug: angleproject:5490 Bug: chromium:1161513 Change-Id: I96c5c463a9fd5a337d09f6cefe7836ff52bea90f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601071 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Peng Huang <penghuang@chromium.org>
angle-autoroll d0a38010 2021-01-07T10:01:59 Roll vulkan-deps from cbab637962d0 to c493c6112021 (10 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/cbab637962d0..c493c6112021 2021-01-07 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Cross from 7b7a21c4058c to 234c65c0f32c (3 revisions) 2021-01-07 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll glslang from 480f6039e072 to 3de5cfe50ede (1 revision) 2021-01-06 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-Tools from 4cc0932495ec to a7825740f316 (3 revisions) 2021-01-06 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Tools from 4ed1f4fce9e7 to aa005e8bd435 (1 revision) 2021-01-06 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Tools from af3a3d481f6e to 4ed1f4fce9e7 (1 revision) 2021-01-06 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Tools from 94d1a80159e3 to af3a3d481f6e (1 revision) 2021-01-06 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll Vulkan-ValidationLayers from 98382948dfea to cc435b55410a (2 revisions) 2021-01-06 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll glslang from f77085c307fc to 480f6039e072 (1 revision) 2021-01-06 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Tools from 6d05ed8410b4 to 94d1a80159e3 (1 revision) 2021-01-06 chromium-autoroll@skia-public.iam.gserviceaccount.com Roll SPIRV-Tools from 37c03859de9e to 6d05ed8410b4 (1 revision) 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 report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: ianelliott@google.com Change-Id: Ibff53e4a69b1a9291679f352a5fe6e7e8b70de50 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2613796 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll aa5457dd 2021-01-07T10:01:55 Roll SwiftShader from b9e179f1f239 to 7b2f93895418 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/b9e179f1f239..7b2f93895418 2021-01-07 capn@google.com Fix implicit inexact conversion 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 report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: ianelliott@google.com Change-Id: I77ee81cc4f9a8828ef46bf77113fcd6da008dd39 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2613890 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 35b6156b 2021-01-07T07:01:42 Roll Chromium from 38610c881952 to 730c6584bcc6 (444 revisions) https://chromium.googlesource.com/chromium/src.git/+log/38610c881952..730c6584bcc6 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 report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/65cd1b9efa..e4c5e3e1a0 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/3c84fe5c3f..d17dcf3607 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..ae206b8b8d * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/77a111142a..f8570240b7 * tools/skia_goldctl/linux: CQ5a33Wu9Sm6bRTrd26RFsJVr42IoKD4Ediyp7eyuwwC..C_u9-R-I-yQyomb3Y-XIH8Ad3Ya4ZWi2MpPiFTtfHz4C * tools/skia_goldctl/mac: AXBg8ZzAzlIdv0U_KR8dr92w1szmAp-MB0Z9ZYBmFy4C..H_4GgcW8CtnxDnWd7RX17C39CAYzfHUaFR6drL3wWAcC * tools/skia_goldctl/win: slJNuZyzBI9lNI9Uje1a2fiVtubv8LEBgUZLFdHZjssC..FzQDQOcAASIc0LaD9YBjqH2JPm0HbYCE2x0WXw2xpz0C No update to Clang. Bug: angleproject:2926,angleproject:2939,angleproject:3481,angleproject:3741,angleproject:4286,angleproject:4539,angleproject:4569,angleproject:4846 Tbr: ianelliott@google.com Change-Id: Id567e30b16d04e96c869ad3058b03829a9035458 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2614267 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi e2a8a69a 2021-01-04T23:52:02 Vulkan: Move xfb emulation offset calculation to translator A new function is added by the translator to calculate the transform feedback offsets in the emulation path. This function makes the generated code for transform feedback smaller. Bug: angleproject:3606 Change-Id: I01460f907e20e2887cb720bddad96697fdcb0cf3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2607492 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 07d619cb 2021-01-06T11:36:40 Vulkan: Fix missing xfb buffer rebind on new command buffer When a command buffer is ended, bindings are lost. This adds a dirty bit to `mNewGraphicsCommandBufferDirtyBits` to make sure transform feedback buffers are bound again on the new command buffer. Bug: angleproject:5428 Change-Id: I7733c93b1eb5d33a77cbee231a83199be950e19f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611552 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 5e280545 2021-01-06T14:13:29 Move RegenerateStructNames AST transformation to gl/ This AST transformation is used by the chromium validating command decoder on Linux/AMD/GL as well as MacOS. Bug: chromium:1161513 Change-Id: I67e40215ae5576819ba5a58987ceb1776c86c731 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2613195 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi ca94d1da 2021-01-04T21:51:33 Vulkan: Refactor generated code in xfb emulation path The index expression was regenerated for every component written to the output. This change refactors the generated code such that common values are calculated once. This is in preparation for moving some of this code to the translator and reducing the amount of code generated at link time. Bug: angleproject:3606 Change-Id: Ib180d245218f8f6f18c57c0ea092e8c45cbffd1a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2607490 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Yuly Novikov 46d3f02a 2021-01-05T17:56:24 Suppress dEQP.KHR_GLES31/core_vertex_attrib_binding_basicinputcase5 on Vulkan Pixel2 and SwiftShader. Ignore device and vendor in test config if we are running on SwiftShader. Bug: angleproject:5500 Change-Id: Ib07240dfe1c2ae1d6d081ffa389d041d97b22b36 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611309 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
James Darpinian ebf00703 2020-12-29T16:25:54 angle_end2end_tests passes on iOS! Miscellaneous test skips and fixes for iOS. Bug: angleproject:5417 Bug: angleproject:5491 Change-Id: Id0785e6243949fc756e4d7923dbbe77a411052f3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2606656 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Shahbaz Youssefi 2762641a 2021-01-05T23:00:14 Use is_apple instead of is_mac and is_ios everywhere Bug: chromium:1161513 Change-Id: Id7d582f127f4b79ea6fc5b8ad39fff768c45f477 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611312 Reviewed-by: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 1d6329b3 2021-01-06T14:33:26 Update auto-roller docs with vulkan-deps repo. Bug: angleproject:5390 Change-Id: If5edba51b0fdbaee36e0ab31a176f809b1ace38a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2613196 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tim Van Patten 56479b06 2020-12-21T13:03:50 Tests: Add FIFA Mobile trace Test: angle_perftests --gtest_filter=TracePerfTest.Run/*fifa_mobile* Bug: angleproject:4048 Change-Id: I5cc731ada3ddd9adcb247d7c6f8cf5d823bdc2a3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2600098 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Jonah Ryan-Davis 956a358d 2020-12-23T15:43:00 GL: Add function pointers for EXT/NV_framebuffer_blit Allow the GL backend to call BlitFramebuffer through these extensions. Bug: angleproject:5474 Change-Id: Ic19b0535056c3e2b098dedc60e2eb8da5f862433 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2602702 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill dc2cf6fc 2021-01-06T11:35:53 Roll third_party/vulkan-deps/ b08eace32..cbab63796 (17 commits; 1 trivial rolls) https://chromium.googlesource.com/vulkan-deps/+log/b08eace32e9c..cbab637962d0 $ git log b08eace32..cbab63796 --date=short --no-merges --format='%ad %ae %s' 2021-01-06 chromium-autoroll Roll SPIRV-Tools from d630e5f8c10c to 37c03859de9e (1 revision) 2021-01-06 chromium-autoroll Roll Vulkan-ValidationLayers from 2468aa9630c2 to 98382948dfea (1 revision) 2021-01-06 chromium-autoroll Roll SPIRV-Tools from 1bb80d2778a3 to d630e5f8c10c (1 revision) 2021-01-06 chromium-autoroll Roll glslang from 9325cc013e3d to f77085c307fc (1 revision) 2021-01-05 chromium-autoroll Roll Vulkan-ValidationLayers from 57255a663ed9 to 2468aa9630c2 (1 revision) 2021-01-05 chromium-autoroll Roll Vulkan-Loader from 1f0c7868a438 to 9ba835885ffe (1 revision) 2021-01-05 chromium-autoroll Roll Vulkan-ValidationLayers from 56a96658b750 to 57255a663ed9 (3 revisions) 2021-01-05 chromium-autoroll Roll Vulkan-Loader from 294480cb7f3e to 1f0c7868a438 (1 revision) 2021-01-05 chromium-autoroll Roll Vulkan-Tools from 7554321b88ae to 4cc0932495ec (2 revisions) 2021-01-05 chromium-autoroll Roll Vulkan-Loader from 66a23ac8c566 to 294480cb7f3e (1 revision) 2021-01-05 chromium-autoroll Roll Vulkan-Headers from 85470b32ad5d to 9efc4a631161 (1 revision) 2021-01-05 chromium-autoroll Roll Vulkan-ValidationLayers from aa076dae88e2 to 56a96658b750 (25 revisions) 2021-01-05 chromium-autoroll Roll glslang from f426f652299d to 9325cc013e3d (1 revision) 2021-01-05 chromium-autoroll Roll SPIRV-Cross from e50f7d1ce8e1 to 7b7a21c4058c (3 revisions) 2021-01-05 chromium-autoroll Roll SPIRV-Tools from 17ffa89097b2 to 1bb80d2778a3 (1 revision) 2020-12-21 jmadill Rolling 8 dependencies Created with: roll-dep third_party/vulkan-deps Bug: angleproject:5390 Change-Id: I6f4a499099211e8990ed038984f41bc5f881c71f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601340 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill d9669322 2020-12-30T14:33:02 Remove "init" from VaryingPacking. Instead we can pass the pack mode and size to the collectAndPack method. This cleans up the interface and also allows us to merge two separate code blocks in Program and ProgramPipeline. Bug: angleproject:5496 Change-Id: I390b5d2e8a3b033374ccc5a250597be1f03dec96 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2606531 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jamie Madill d33ffb22 2020-12-30T11:14:00 Organize VaryingPacking methods. This clarifies the difference between "collect" and "pack" methods. Previously the naming was overlapping between the two. Also makes the "packUserVaryings" method private. Refactoring change only. Will enable further improvements for capturing varyings with multiple shader stages. Bug: angleproject:5496 Change-Id: I854590ceab39f3a0e7a785516e0d1fd44e4ccc98 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2606529 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 92e7bc89 2020-12-23T15:18:42 Remove ProgramLinkedResources from ProgramExecutable. Instead of storing the entire LinkedResources struct, we can keep it only for the duration of the linking calls. Refactoring change only. It sets the stage for more refactoring. This change also switches the link call to use LinkingState's ProgramLinkedResources directly to avoid the need to copy the varying packing or use a pointer. Bug: angleproject:4514 Bug: angleproject:5496 Change-Id: Iefea3c16a33213dc338cc54efaa7c3064ea6ae08 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601403 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tim Van Patten e09e947d 2020-12-29T18:21:36 Capture/Replay: Don't force built-in attribs to have a location CaptureMidExecutionSetup() hits an assert while capturing "World War Doh": ANGLE : FATAL: FrameCapture.cpp:2876 (CaptureMidExecutionSetup): ! Assert failed [[[...]]] attrib.location != -1 This is due to CaptureMidExecutionSetup() enforcing that all attributes, including built-ins, have a location. However, in the case of "World War Doh", the built-in 'gl_GlobalInvocationID' does not have a location. Moving the assert to after the gl::IsBuiltInName() check allows the capture to complete without hitting any asserts. Bug: angleproject:4048 Test: Capture "World War Doh" Change-Id: Ice96dec629b1477b11a710283c4ec4bf1c95c6e2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2606807 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi bf6cc88a 2021-01-05T22:17:41 Vulkan: Remove duplicate shaderType parameter to SPIR-V transformer The passed-in GlslangSpirvOptions already has the shaderType, so this extra parameter was not necessary. Bug: angleproject:4524 Change-Id: Ibbc7442b3173b26825f3cb9e2365789fade92cfc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611311 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll a8b962b7 2021-01-06T07:01:32 Roll Chromium from 481852c5d89b to 38610c881952 (120 revisions) https://chromium.googlesource.com/chromium/src.git/+log/481852c5d89b..38610c881952 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 report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/505140eae0..65cd1b9efa * testing: https://chromium.googlesource.com/chromium/src/testing/+log/c83cdcc501..3c84fe5c3f * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..6c876045de * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/1c129d6fca..77a111142a No update to Clang. Bug: None Tbr: ianelliott@google.com Change-Id: Ia2de17b882601cc3c149466df58c8537df335e38 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2612765 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 8ef86071 2021-01-06T10:01:55 Roll SwiftShader from ff29e249d317 to b9e179f1f239 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/ff29e249d317..b9e179f1f239 2021-01-05 capn@google.com Clarify 3-level caching of sampling routines 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 report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: ianelliott@google.com Change-Id: I480ec54ea1275dd8f0285dd05aa432dfe30e2219 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2612812 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 382bf288 2020-12-24T23:56:39 Organize AST transforms per backend Most of the AST transforms are written as a workaround to an issue that affects a single backend. This change identifies such transforms and organizes them by backend. They are then only built if the respective backend is. Additionally, about half of the GL transforms are due to mac workarounds, including the large RewriteRowMajorMatrices transform. Mac-specific workarounds are additionally only built on said platform. This change reduces the ANGLE binary size: - 106KB in a Vulkan-only build on Linux - 27KB in a GL-only build on Android (60KB on Linux) Bug: chromium:1084580 Bug: chromium:1161513 Change-Id: I64b334332c0d4f848756c6538af0d8d96864c7e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601346 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Yuly Novikov b590fd1b 2021-01-05T18:53:42 Roll chromium_revision b5dfde1f4d..481852c5d8 (840075:840387) Change log: https://chromium.googlesource.com/chromium/src/+log/b5dfde1f4d..481852c5d8 Full diff: https://chromium.googlesource.com/chromium/src/+/b5dfde1f4d..481852c5d8 Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/dc0b854645..505140eae0 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f7473fcfe3..c83cdcc501 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..6c876045de * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/7316ebd31b..e8d041d679 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/bd7d73d146..1c129d6fca * tools/skia_goldctl/linux: h8KxWs4p5Ox0HAM1_xkOEZT6ctPb1Rfi3qeXr_mmL2YC..CQ5a33Wu9Sm6bRTrd26RFsJVr42IoKD4Ediyp7eyuwwC * tools/skia_goldctl/mac: LNZgcy3MnDuxTfNU14P35CMe60eSA5owlqW81AdRROIC..AXBg8ZzAzlIdv0U_KR8dr92w1szmAp-MB0Z9ZYBmFy4C * tools/skia_goldctl/win: uyDrAODdxxnyC-OmE4swqMJGVNnO4tK6XpC4VfbZf-gC..slJNuZyzBI9lNI9Uje1a2fiVtubv8LEBgUZLFdHZjssC DEPS diff: https://chromium.googlesource.com/chromium/src/+/b5dfde1f4d..481852c5d8/DEPS No update to Clang. TBR=ynovikov@chromium.org, BUG=angleproject:4483 Change-Id: If6d8f6765fa8c886f10b69759d1086925bc87847 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611310 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill e91097bf 2020-12-29T14:05:56 Vulkan: Clean up "actual"/"intended" naming. Clarifies that the GL internal format is an "intended" format and the Vulkan formats are "actual" formats. This makes all the format fields use the same consistent naming pattern. Bug: angleproject:5438 Change-Id: I935a49895109e9e06eae5ef98d5614dfd1128ff8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2605728 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 973bd4ba 2020-12-21T13:45:36 Complete I/O block GLSL tests The tests meant to perform a draw call and validate the correctness of the shaders. Bug: angleproject:3580 Change-Id: I3a008d204ae3d7dceb731ba7a815ab54f38c2920 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2599938 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi aff17499 2020-12-23T14:40:06 Vulkan: Directly capture non-gl_Postion builtins Building on support for transform feedback capture of I/O block members, this change optimizes capture of builtins other than gl_Position by directly decorating members of gl_PerVertex. Most importantly, this allows us to reserve only one varying for transform feedback, instead of as many builtins there could be (up to 4). Bug: angleproject:3606 Change-Id: Ie0957802c657ed6c5aac538d92b860582ed6da45 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601072 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
James Darpinian b6ea6edc 2020-12-29T16:30:29 Remove tabs from volk.c/h WebKit's SVN continues to abhor tabs. Bug: angleproject:3439 Change-Id: Ib97fc97c0eb7401f73ea493a7b679f78afc1a8c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2606658 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
angle-autoroll 07dea837 2021-01-05T07:01:32 Roll Chromium from 094b96f7f336 to b5dfde1f4de5 (71 revisions) https://chromium.googlesource.com/chromium/src.git/+log/094b96f7f336..b5dfde1f4de5 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 report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/46adc39ea7..dc0b854645 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/2f17932ea4..f7473fcfe3 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..3f5c581d3b * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/1283870fa3..7316ebd31b No update to Clang. Bug: None Tbr: ianelliott@google.com Change-Id: Ib53d1864759822c3338b6be8e442f041eb1a8aeb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2610343 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 026a067c 2021-01-04T07:45:32 Roll Chromium from c95903c7ee26 to 094b96f7f336 (125 revisions) https://chromium.googlesource.com/chromium/src.git/+log/c95903c7ee26..094b96f7f336 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 jonahr@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/5e2e476cc1..46adc39ea7 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/84cd1053bd..2f17932ea4 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..3f5c581d3b No update to Clang. Bug: None Tbr: jonahr@google.com Change-Id: I89ba42868c659dcf92312baef029f13fec941489 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2609813 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll bf02c31b 2021-01-01T07:01:32 Roll Chromium from 9642fd0da169 to c95903c7ee26 (32 revisions) https://chromium.googlesource.com/chromium/src.git/+log/9642fd0da169..c95903c7ee26 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 jonahr@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/2f9b06d9ef..5e2e476cc1 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/77dd9d2973..84cd1053bd * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..3f5c581d3b No update to Clang. Bug: None Tbr: jonahr@google.com Change-Id: Ib06c560e55e19f3a088cb20a448e5e2646d938eb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2608526 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 2cbcb18e 2020-12-31T10:01:55 Roll SwiftShader from 1cc5b3357d2f to ff29e249d317 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/1cc5b3357d2f..ff29e249d317 2020-12-30 srisser@google.com Add support for Vulkan12Properties 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 jonahr@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: jonahr@google.com Change-Id: Ieec6bb7458ee0764b75ea507e510a19e04f4dfb9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2607999 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 022b0026 2020-12-31T07:01:32 Roll Chromium from 03e3aa54c18c to 9642fd0da169 (135 revisions) https://chromium.googlesource.com/chromium/src.git/+log/03e3aa54c18c..9642fd0da169 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 jonahr@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/1016d674b3..2f9b06d9ef * testing: https://chromium.googlesource.com/chromium/src/testing/+log/c98004c99f..77dd9d2973 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/ea63baff14..78f99e18e9 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..3f5c581d3b * tools/skia_goldctl/linux: Ac-h0vLh65FkA8CAYh5B6yg9X0l3cJFf5XCZkVByG1AC..h8KxWs4p5Ox0HAM1_xkOEZT6ctPb1Rfi3qeXr_mmL2YC * tools/skia_goldctl/mac: NYEeKAWq6p8n1jHl0h3emCE3hdfWkaYbeoEPrnFO5dEC..LNZgcy3MnDuxTfNU14P35CMe60eSA5owlqW81AdRROIC * tools/skia_goldctl/win: HHMFtoVyIQfQIhJgSOb5RkIHwzApVNZXRtDNjBCx3tEC..uyDrAODdxxnyC-OmE4swqMJGVNnO4tK6XpC4VfbZf-gC No update to Clang. Bug: None Tbr: jonahr@google.com Change-Id: Ia03ced387f7d03292955339b7b8d073877ddb10a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2607780 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Peng Huang 2ec7d750 2020-12-30T10:52:23 Disable null backend on Android This change saves 6.6KB on Android Bug: angleproject:5490 Bug: chromium:1161513 Change-Id: I14636694ed7bff61accfac934fbbf6f619d2f6b0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2606528 Commit-Queue: Peng Huang <penghuang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
James Darpinian 6c608e94 2020-12-29T16:24:08 iOS sRGB mipmap generation is broken too Enable the encodeAndDecodeSRGBForGenerateMipmap workaround for iOS. Bug: angleproject:5417 Change-Id: I39d9e7c371f0ee5ec5119669f3b855251691f9e2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2606657 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Jonah Ryan-Davis fb35201a 2020-12-22T13:14:41 GL: Expose NV_framebuffer_blit for ES2 contexts when available ANGLE_framebuffer_blit is already exposed but has restrictions on scaling/flipping and mismatched color buffer formats. When NV_framebuffer_blit, EXT_framebuffer_blit, or an ES3 context is available we can expose a less restrictive BlitFramebuffer. Bug: angleproject:5474 Bug: chromium:1157057 Change-Id: I916ee39c8d6120216f91461080eb3ee9ca777e29 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601165 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 93839986 2020-12-30T07:00:32 Roll Chromium from aba6331a18cb to 03e3aa54c18c (163 revisions) https://chromium.googlesource.com/chromium/src.git/+log/aba6331a18cb..03e3aa54c18c 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 jonahr@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/7dcf5f0e82..1016d674b3 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/767dddd781..c98004c99f * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..3f5c581d3b No update to Clang. Bug: None Tbr: jonahr@google.com Change-Id: I48bc7af0fc75d2c76ead9205ad34421c239e3b95 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2606402 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Qin Jiajia de62b251 2020-12-29T17:07:06 Make sure the queried resources are active In GLES 3.1 spec, sesion 7.3.1 program interfaces, it says that 'Resources referenced in shader code are considered active unless the compiler and linker can conclusively determine that they have no observable effect on the results produced by the executable code of the program.'. Variables might be considered inactive if they are used only in computations of temporary variables having no effect on any shader output. So we should use atomicCounterIncrement instead of atomicCounter in case the resources are marked as inactive on some platforms. Bug: angleproject:5494 Change-Id: Ic04bd4a2936e97776fc680b5ef8273f0944d7480 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2605917 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
Peng Huang 47ee6a7b 2020-12-23T13:31:23 Add build flags to disable desktop gl backend This change saves about 100KB on Android Bug: angleproject:5490 Change-Id: Ieca0e597423f74a917197f381560af5409a9e874 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601341 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Peng Huang <penghuang@chromium.org>
Jamie Madill 093250e0 2020-12-23T12:07:46 Vulkan: Make shader variable info maps a class. Instead of using a map type directly we abstract the info maps into an encapsulated class. We can enforce a specific API set instead of using the same API as the map class. This also cleans up a few of the APIs related to these maps. This change will allow future changes to the way the variables are stored in the class without drastically changing the interface. Bug: angleproject:3572 Bug: angleproject:4524 Change-Id: Ic1a63e1776c39f49b895a1274bae8282d7a6b9b5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2600080 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Tom Anderson c2847bbc 2020-12-23T15:59:59 [GLX] Don't request exposure events for child windows After [1], Chrome and ANGLE use separate X11 connections, so in order for Chrome to receive exposure events, it must select for them its own connection, which is done in [2]. The events selected by ANGLE's connection are never dispatched, so they queue up indefinitely and leak until the connection is closed (when happens when Chrome closes). This change removes the request to receive exposure events. [1] https://chromium-review.googlesource.com/c/chromium/src/+/2492177 [2] https://chromium-review.googlesource.com/c/chromium/src/+/2602441 Change-Id: Ie47c3700855aeeecc8efa1b379df60c344b1b70a Bug: chromium:1158170 R=jonahr Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2602705 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
angle-autoroll 095fd1d3 2020-12-29T07:01:32 Roll Chromium from e02e8b371308 to aba6331a18cb (134 revisions) https://chromium.googlesource.com/chromium/src.git/+log/e02e8b371308..aba6331a18cb 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 jonahr@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/ffd4756efa..7dcf5f0e82 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/cba08c42d7..767dddd781 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..3f5c581d3b No update to Clang. Bug: None Tbr: jonahr@google.com Change-Id: I1aafc49da55631bc5ade1dc673a5ac50015bc3bf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2605988 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tim Van Patten 220642a9 2020-12-16T21:10:37 Allow Drawing with Immutable Persistent Mapped Buffers From the EXT_buffer_storage overview: The GL_EXT_texture_storage extension added immutable storage for texture objects (and was subsequently incorporated into OpenGL ES 3.0). This extension further applies the concept of immutable storage to buffer objects. [T]his extension introduces the concept of persistent client mappings of buffer objects, which allow clients to retain pointers to a buffer's data store returned as the result of a mapping, and to issue drawing commands while those mappings are in place. The initial implementation of EXT_buffer_storage didn't enable this portion of the extension, so ANGLE is generating errors while attempting to draw with an immutable buffer mapped with the GL_MAP_PERSISTENT_BIT flag. This CL enables that functionality, since apps (e.g., FIFA Soccer) rely on it. Bug: angleproject:5473 Change-Id: Icf1c0597156044a342aac5e4d2abbc29b34f46b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2596957 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
angle-autoroll bc06d145 2020-12-28T07:01:32 Roll Chromium from abaaee149813 to e02e8b371308 (106 revisions) https://chromium.googlesource.com/chromium/src.git/+log/abaaee149813..e02e8b371308 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC ynovikov@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/ff0b5c1349..ffd4756efa * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/ea9f1f7375..2277272f7a * testing: https://chromium.googlesource.com/chromium/src/testing/+log/38dfc9d41a..cba08c42d7 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..3f5c581d3b No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: Idbdd8032cf051b2f5b8f33af16338be8d36b43e4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2604769 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 5e606e5b 2020-12-25T07:24:35 Roll Chromium from 8baa5d6f121f to abaaee149813 (66 revisions) https://chromium.googlesource.com/chromium/src.git/+log/8baa5d6f121f..abaaee149813 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC ynovikov@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/fffb44c47e..ff0b5c1349 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f9f9a7c26e..38dfc9d41a * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..3f5c581d3b No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: Ie88c73237d45dd53a0572fd4148aacbe1ce174c0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2603551 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi c6e63da8 2020-12-24T21:32:42 Suppress IOBlocksSeparate xfb test on AMD/Linux/GL Bug: angleproject:5487 Bug: angleproject:5493 Change-Id: I6e15c35eacafef0ac4b7c7789619470501e31402 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601345 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov 9f0748ea 2020-12-24T16:05:24 Skip TransformFeedbackTestES31.IOBlocks* on Linux AMD Vulkan Bug: angleproject:5493 Change-Id: I5e0b0ec478807ebfe7a0ec114adaba13ea103ea0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601344 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 26c8aaad 2020-12-24T07:01:36 Roll Chromium from 75537d54458b to 8baa5d6f121f (63 revisions) https://chromium.googlesource.com/chromium/src.git/+log/75537d54458b..8baa5d6f121f If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC ynovikov@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/49a440c36a..fffb44c47e * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..3f5c581d3b No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: Ifed577c2fa17724f4629352d68fc555fa7747fb5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2602788 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
James Darpinian cde0e3ab 2020-12-22T16:38:47 Don't use optional BGRA_EXT by default It's not currently exposed on iOS. Bug: angleproject:5417 Change-Id: I2564d3363f8f8bddad4da7d8a9d7dac9bea15897 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2600454 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
James Darpinian 939195a0 2020-12-23T15:12:30 Skip tests using unimplemented features on iOS Bug: angleproject:5485 Change-Id: I3248126060b9957596f65221c60f42f213e9a9dc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601377 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
James Darpinian 7061af26 2020-12-22T10:43:45 Fix BlitFramebuffer issues with large rects on iOS Enable adjustSrcDstRegionBlitFramebuffer workaround on iOS and fix a conflict when it is enabled in combination with clipSrcRegionBlitFramebuffer. Bug: angleproject:5417 Change-Id: I1de0f9f392643fbcf6900bad86d83084cb6d4009 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601106 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Jonah Ryan-Davis 88fec1e8 2020-12-23T11:53:55 Code generation for NV_framebuffer_blit Generate the entry points for NV_framebuffer_blit. Bug: angleproject:5474 Bug: chromium:1157057 Change-Id: Iadffa24ce7368d8ab6c4bf9d5b6c016276e762f5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2602242 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
angle-autoroll dd1ecbc9 2020-12-23T21:25:59 Roll Chromium from a5e4417becc2 to 75537d54458b (114 revisions) https://chromium.googlesource.com/chromium/src.git/+log/a5e4417becc2..75537d54458b If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC ynovikov@google.com,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/d4fcf57b4e..49a440c36a * testing: https://chromium.googlesource.com/chromium/src/testing/+log/36d8b4b883..f9f9a7c26e * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..be9a4317e5 No update to Clang. Bug: angleproject:5390 Tbr: ynovikov@google.com,jmadill@google.com Change-Id: I7ed34cac8bd0d669fdc05aaa5e6f82d177caa9f8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2602626 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tim Van Patten e16ff968 2020-12-23T12:49:58 Android: Update adb install to include -r -d --force-queryable The adb install command is being updated to include the following options: -r: replace existing application -d: allow version code downgrade (debuggable packages only) --force-queryable: mark the ANGLE APK as visible to all other packages This will allow AngleLibraries.apk to install without errors and be loadable for apps targeting SDK >= 30. Bug: b/175800879 Change-Id: I61bb7218b407e54057adbfb5aa3098a96b903f5e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2602241 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
James Darpinian 0dbe7cdd 2020-12-08T12:24:35 iOS testing support angle_white_box_tests build and runs and passes on the iOS simulator with this change. angle_end2end_tests builds and runs but crashes. Bug: angleproject:4256 Bug: angleproject:5417 Change-Id: I8817e46415c4598cbfae49804727a2e9b21baff1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2600361 Commit-Queue: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Shahbaz Youssefi eeb14308 2020-12-23T01:45:35 Vulkan: Support xfb capture of I/O block fields In the emulation path, it's ensured that the generated code references the I/O block field correctly (using the instance name if provided, and without it otherwise). In the extension path, the info map is augmented with an array of xfb decorations for its fields. Then when `OpDecorate %IOBlockId Block` is encountered, the transform feedback decorations on the fields are inserted: OpMemberDecorate %IOBlockId MemberN XfbBuffer buffer OpMemberDecorate %IOBlockId MemberN XfbStride stride OpMemberDecorate %IOBlockId MemberN Offset offset Future work includes removing the duplicate varying added for gl_PointSize and use this mechanism to decorate gl_PerVertex directly. Bug: angleproject:3606 Change-Id: I6fed0b1ee7245fe695337043b40b281fb01a1fb0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2599953 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 8065aa82 2020-12-22T23:38:42 Front-end support for xfb capture of I/O block members Validation and generation of transform feedback varyings that specify an I/O block member are implemented in this change. The GL backend is able to pass the added tests. Bug: angleproject:3606 Change-Id: I66d02bed8ca9161555d0d1e7a32ae9ef4d9e813f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2599952 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jamie Madill c500ee03 2020-12-23T16:46:14 Revert "Changes to build inside a Dawn checkout." This reverts commit 11c31e0a4a73d7d62e765dc7ec400560fbb16b5e. Reason for revert: Broke ANGLE -> Skia roll because of GN error. Bug: angleproject:5489 Original change's description: > Changes to build inside a Dawn checkout. > > Add an "angle_standalone" flag that can be disabled by Dawn. > Put test definitions behind angle_standalone || build_with_chromium. > > Bug: angleproject:5462 > Change-Id: I58c9b18723384334156e2a3dd86ed3f89afcaade > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2587451 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Stephen White <senorblanco@chromium.org> TBR=senorblanco@chromium.org,jmadill@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: angleproject:5462 Change-Id: I4363d1d35b03e00d970e25ddd3d7eac51ad2da2d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2600078 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll d447829c 2020-12-23T07:00:30 Roll Chromium from 78f4bbcd4cb1 to a5e4417becc2 (263 revisions) https://chromium.googlesource.com/chromium/src.git/+log/78f4bbcd4cb1..a5e4417becc2 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC ynovikov@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/b4b7adbdc2..d4fcf57b4e * testing: https://chromium.googlesource.com/chromium/src/testing/+log/9d83fdb696..36d8b4b883 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/3b78ceeade..ea63baff14 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..2752abe7e2 * third_party/libjpeg_turbo: https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git/+log/e9a659a09e..09efc26aff No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: Ic57fe979eda136816aca4bcf9f38eb476e07cb56 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601584 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill b91afcfd 2020-12-11T10:58:54 Bump implementation max textures/images limit to 96. We need the higher limit for tessellation shaders and ES 3.2. Unfortunately this means we are no longer using a packed 64-bit bitset for the active textures and images. We fallback to using std::bitset. Also keeps the 64 texture limit if tessellation is not available. The higher limits was causing timeouts in WebGL tests. Bug: angleproject:3572 Change-Id: I1953955600b56d7c66178bd610de53453151dc8f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2586996 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
James Darpinian c2a620b0 2020-12-22T11:44:32 Fix out of bounds indices in transform feedback test Type confusion on the index buffer. It should be unsigned shorts. Fixes a crash on iOS. Bug: angleproject:4992 Bug: angleproject:5417 Change-Id: I18179a89dd81fff2582636496ea9684e432f4400 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601162 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 5c0ba543 2020-12-22T09:32:42 Roll VK-GL-CTS from 54509765b18d to b29bf0434c16 (15 revisions) Manually update deqp.gni to include new es3cNumberParsingTests files. https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/54509765b18d..b29bf0434c16 2020-12-19 alexander.galazin@arm.com Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master 2020-12-18 alexander.galazin@arm.com Raise min CMake version to 3.10.2 2020-12-18 jeremyg@lunarg.com Fix Renderpass storeOp synchronization hazards 2020-12-18 jeremyg@lunarg.com Fix back-to-back transfer command synchronization hazards 2020-12-18 gleese@broadcom.com Simplify code for subgroup builtin mask tests 2020-12-18 jeremyg@lunarg.com Fix end of Renderpass synchronization hazards 2020-12-18 jeremyg@lunarg.com Fix additional RenderPass loadOp/stencilLoadOp sync hazards. 2020-12-18 jeremyg@lunarg.com Fix RenderPass stencilLoadOp synchronization hazards. 2020-12-18 jeremyg@lunarg.com Fix RenderPass loadOp synchronization hazards. 2020-12-17 mikko.tiusanen@siru.fi Tests for GLES3 number parsing 2020-12-17 mikko.tiusanen@siru.fi Tests for multiple clears within render pass 2020-12-17 rgarcia@igalia.com Enable nullDescriptor for AS ray query tests 2020-12-15 piotr.byszewski@mobica.com Test dynamic indexing of AS 2020-12-15 rgarcia@igalia.com Test dynamic indexing of ray queries 2020-12-13 piotr.byszewski@mobica.com Test procedural geometry with complex BB sets If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC ynovikov@google.com,angle-bots+autoroll-info@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: ynovikov@google.com,angle-bots+autoroll-info@google.com Change-Id: I59e4aabcfbf496d02e18ba7b7aa06391ba90f434 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2600639 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 74788951 2020-12-22T13:11:17 Vulkan: Fix assertion in xfb of indirect calls An assertion was fired which was only valid when emulating transform feedback. The relevant block is conditioned to the respective feature. Bug: angleproject:3571 Change-Id: I287ef6d94c920ccda742e4032bfc389409a38e1f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2599951 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 9d45f527 2020-12-21T14:23:11 Vulkan: GS tests that demonstrate gl_Position bugs Bug: angleproject:5478 Bug: angleproject:5479 Change-Id: If7ae7b6e0960c66dde697726381bc68c6809b3c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2599940 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 00643e7d 2020-07-22T20:58:49 Use Android API to get storage path. This pipes through to a system call via JNI. This will allow Chromium changes to land that were prevented because ANGLE hard-coded some parts of this path. This in turn will allow us to more easily override these paths for changes needed for Android R support. Bug: chromium:1094062 Change-Id: I20d75b8ee40d418ba5c057f618640ef896248299 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2315483 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Shahbaz Youssefi 85707f7f 2020-12-21T14:52:38 Vulkan: Pass in SPIR-V transform options in a struct Clean up change in preparation for changes that add more options. Bug: angleproject:5478 Change-Id: Id35825b337dba153a5c28dfcc311b344ce257f78 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2599941 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
angle-autoroll 41d78ae1 2020-12-22T07:00:34 Roll Chromium from 4545fb53923b to 78f4bbcd4cb1 (198 revisions) https://chromium.googlesource.com/chromium/src.git/+log/4545fb53923b..78f4bbcd4cb1 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC ynovikov@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/34da458aa2..b4b7adbdc2 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/c28f31863b..9d83fdb696 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..8d43e58994 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/d324a17c34..1283870fa3 No update to Clang. Bug: None Tbr: ynovikov@google.com Change-Id: I9782920f655b361fcf171cecd29f06f671fe5d8c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2600183 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Stephen White 11c31e0a 2020-12-21T09:57:58 Changes to build inside a Dawn checkout. Add an "angle_standalone" flag that can be disabled by Dawn. Put test definitions behind angle_standalone || build_with_chromium. Bug: angleproject:5462 Change-Id: I58c9b18723384334156e2a3dd86ed3f89afcaade Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2587451 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Stephen White <senorblanco@chromium.org>
Charlie Lao 0c5a55a5 2020-12-17T14:52:59 Vulkan: MapBufferRange should avoid wait if INVALIDATE_BUFFER is set If glMapBufferRange is called with GL_MAP_INVALIDATE_BUFFER_BIT bit set, caller indicates that it don't care about the previous content. If the buffer is busy, instead of wait for GPU to finish and then map the buffer, we should just allocate a new memory and return it. brawl_stars is hitting this case. With this CL, the frame time is cutting to half on the pixel device. Bug: b/175905404 Change-Id: If1220f07ebf53dd28fe6a4732eaba84e2e57598e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2597784 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Shahbaz Youssefi 4e2b6d6b 2020-12-21T10:48:12 Fix PackedVarying's move constructor The move constructor was calling the move assignment operator, which used std::swap on the members. However, `this` was not constructed, so std::swap was operating on uninitialized values. Caught by UBSAN. Bug: chromium:1159444 Change-Id: I65f2f0affd1461f880c59780f31a368779411f24 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2599936 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 4ebcee3e 2020-12-21T07:00:34 Roll Chromium from af73f1e9f8c8 to 4545fb53923b (180 revisions) https://chromium.googlesource.com/chromium/src.git/+log/af73f1e9f8c8..4545fb53923b 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 cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/68fec68de7..34da458aa2 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/e5bbe1bc6f..c28f31863b * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..8d43e58994 No update to Clang. Bug: None Tbr: cwallez@google.com Change-Id: Ib5357a8c44f44245b5df8e583e8460b9ac84a70f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2597052 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Le Hoang Quyen ed9213bc 2020-12-18T12:12:10 Metal: explicitly convert XFB vertex shader to void function Previously, spirv-cross would automatically do this (converting to void function) if shader writes to XFB buffers, however this behavior is changed in latest spirv-cross version. So the rasterization disable must be explicitly specified via spirv-cross’s options now. Bug: chromium:1159974 Change-Id: I9f34e1cd9d2f1386e8a8d030a800fbd7341eb68f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2596914 Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
jchen10 0322fc1a 2020-12-16T11:02:13 Disable syncFramebufferBindingsOnTexImage on Intel/Win/GL The driver fix is available already. Bug: angleproject:2906 Change-Id: Id607fa5217360afd99e5de0d2e5f35f79615d160 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2594323 Commit-Queue: Jie A Chen <jie.a.chen@intel.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Kenneth Russell 011e0ad1 2020-12-16T17:34:50 Promote RGBA4444 and RGB565 to RGB[A]8 on macOS with AMD GPUs. There are bugs in Apple's OpenGL driver when uploading to textures of these formats via pixel buffer objects. Because automatic graphics switching might activate the AMD GPU at any time, use this workaround on dual-GPU MacBook Pros even if the Intel GPU is active. Fixes the following WebGL 2.0 conformance tests: deqp/functional/gles3/texturespecification/ teximage2d_pbo_2d_00.html teximage2d_pbo_2d_01.html texsubimage2d_pbo_2d_00.html texsubimage2d_pbo_2d_01.html texsubimage2d_pbo_cube_01.html Bug: angleproject:5469 Change-Id: I7d65dc5f664159b4b59d46400a8d9c492f67040b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2595245 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 653f6196 2020-12-14T12:55:55 Import Vulkan DEPS from the new vulkan-deps repo. This will allow the entire set of Vulkan DEPS to be rolled as one. Bug: angleproject:5390 Change-Id: I10ca4f966f986baf3aab7250935802a3ed1065f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2587671 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 0bb22ef2 2020-12-18T10:01:55 Roll SwiftShader from 1ca6504eb7bb to 1cc5b3357d2f (2 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/1ca6504eb7bb..1cc5b3357d2f 2020-12-17 amaiorano@google.com Optimize reciprocal sqrt operation 2020-12-17 amaiorano@google.com Optimize reciprocal operation 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 cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I138802959ca39114cf2d4373171b47b3a1911681 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2598359 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 165c345e 2020-12-18T07:02:04 Roll Chromium from 45e7154d4b07 to af73f1e9f8c8 (218 revisions) https://chromium.googlesource.com/chromium/src.git/+log/45e7154d4b07..af73f1e9f8c8 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 cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/de4c58d749..68fec68de7 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/13342b6ee2..e5bbe1bc6f * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..8d43e58994 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/36810de981..d324a17c34 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/f9059111fd..bd7d73d146 No update to Clang. Bug: angleproject:5390 Tbr: cwallez@google.com Change-Id: I86fb4663eaf9eed3992dcc2721b489d5bbd6add2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2598280 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
jchen10 c0bbe6cf 2020-12-16T11:56:52 Unsuppress TextureCubeTest.CubeMapFBO on Intel/Win/Vulkan This disables forceCpuPathForCubeMapCopy as well Bug: angleproject:2822 Bug: angleproject:3055 Change-Id: Iecb37d0c2d109e319c67310dd64ad8d4bbc14fd8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2594707 Commit-Queue: Jie A Chen <jie.a.chen@intel.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tim Van Patten de703db5 2020-12-16T20:39:59 Fix ValidateBufferStorageEXT() ValidateBufferStorageEXT() has a copy/paste error where the flag GL_MAP_PERSISTENT_BIT_EXT is enabled twice while GL_MAP_COHERENT_BIT_EXT is not enabled at all during parameter checking, causing ANGLE to reject valid calls to glBufferStorageEXT(). Bug: angleproject:5473 Test: BufferStorageTestES3.BufferStorageFlagsPersistentCoherentWrite Change-Id: I05596f54d48118f609ef1c88ca222d9fcdb2dd3a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2596956 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
angle-autoroll 67170564 2020-12-17T20:40:49 Roll Chromium from 0592a5f8d414 to 45e7154d4b07 (750 revisions) https://chromium.googlesource.com/chromium/src.git/+log/0592a5f8d414..45e7154d4b07 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 cwallez@google.com,jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/deb698d48d..de4c58d749 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/6e6d8d1651..13342b6ee2 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/dfe5e0a3af..3b78ceeade * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..5039608d33 * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/9be8079c29..ec1e3f2e46 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/9cb7877086..f9059111fd * tools/skia_goldctl/linux: bTvIvWnbZxg0-7ukJDOeVphyUCuVIkxtui-gilfeBScC..Ac-h0vLh65FkA8CAYh5B6yg9X0l3cJFf5XCZkVByG1AC * tools/skia_goldctl/mac: 6s5TRj110nqaPlBS8YO4HN2dRmhheX7a-pp3YWURcnoC..NYEeKAWq6p8n1jHl0h3emCE3hdfWkaYbeoEPrnFO5dEC * tools/skia_goldctl/win: 4UEZlBTjAOzFCQchRqtALQwJDyYXa9Sj_52oUhXmNkoC..HHMFtoVyIQfQIhJgSOb5RkIHwzApVNZXRtDNjBCx3tEC No update to Clang. Bug: angleproject:5390 Tbr: cwallez@google.com,jmadill@google.com Change-Id: I8affb75cd7a06e38825d305ddbf043788cbe3721 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2597779 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jonah Ryan-Davis 937bc82b 2020-12-17T17:57:50 Revert "GLX: Expose EGL_ANGLE_window_fixed_size" This reverts commit fa9b803e078fb833143df7a2b3f88c8694fa8f2f. Reason for revert: https://bugs.chromium.org/p/chromium/issues/detail?id=1157748 Original change's description: > GLX: Expose EGL_ANGLE_window_fixed_size > > Right now the GLX backend checks for resize on every SwapBuffers > call. If EGL_ANGLE_window_fixed_size is used, it will only resize > when signaled by Chrome. > > Bug: chromium:1132827 > Change-Id: Ia4ddbbbf6dcf13f46ad564208eccc517de8be33c > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2572886 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> TBR=syoussefi@chromium.org,jonahr@google.com,jmadill@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:1132827 Change-Id: I1110c5dd5d806b3c6c59308d4865f0d3aa57fc3f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2595197 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
angle-autoroll 4a8a8470 2020-12-17T10:01:36 Roll glslang from a5be11bd8b3f to 6d5916d4a91e (1 revision) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/a5be11bd8b3f..6d5916d4a91e If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I46f0450f451d441565c70d292bc7d38fbf3711ed Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2596610 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 79f7012f 2020-12-16T10:01:55 Roll SwiftShader from fa44979d90aa to 1ca6504eb7bb (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/fa44979d90aa..1ca6504eb7bb 2020-12-15 amaiorano@google.com Fix ReactorBenchmarks build failure 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 cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I5b1c3a951a05843e44461ba9a30b7585d980864b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2594712 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tim Van Patten 909ea88b 2020-11-20T13:07:53 Reland "Vulkan: Ignore glFlush to reduce vkQueueSubmits in Asphalt 9" This is a reland of 5cf7472dd161bbda329dfc5e4e65bb6ce0c06fbd The ShareGroupVk::mResourceUseLists was not being cleared each call to RendererVk::submitFrame(), so it was growing indefinitely. Each vk::ResourceUseList within it was cleared, so it was holding an essentially "infinite" list of empty lists, but that caused the loop in RendererVk::submitFrame() to take more and more time until the tests timed out. The fix is to do 'resourceUseLists.clear()' once the loop to release all resources has completed, like releaseResourceUsesAndUpdateSerials() does for each individual list. Additionally, ASSERTs are added to guarantee that the lists are empty when the ContextVk and ShareGroupVk are destroyed. Original change's description: > Vulkan: Ignore glFlush to reduce vkQueueSubmits in Asphalt 9 > > Multithreaded apps can use the following pattern: > > glDrawElements() > glFenceSync() > glFlush() > glWaitSync() > > This currently results in a vkQueueSubmit for every glFlush() to ensure > that the work has landed in the command queue in the correct order. > However, ANGLE can instead avoid the vkQueueSubmit during the glFlush() > in this situation by instead flushing the ContextVk's commands and > ending the render pass to ensure the commands are submitted in the > correct order to the renderer. This improves performance for Asphalt 9 > by reducing frame times from 150-200msec to 35-55msec. > > Specifically, ANGLE will call flushCommandsAndEndRenderPass() when > there is a sync object pending a flush or if the ContextVk is currently > shared. > > Additionally, on all devices except Qualcomm, ANGLE can ignore all other > glFlush() calls entirely and return immediately. For Qualcomm devices, > ANGLE is still required to perform a full flush (resulting in a > vkQueueSubmit), since ignoring the glFlush() reduces the Manhattan 3.0 > offscreen score by ~3%. > > Bug: angleproject:5306 > Bug: angleproject:5425 > Change-Id: I9d747caf5bf306166be0fec630a78caf41208c27 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2552718 > Commit-Queue: Tim Van Patten <timvp@google.com> > Reviewed-by: Charlie Lao <cclao@google.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> Bug: angleproject:5306 Bug: angleproject:5425 Bug: angleproject:5470 Change-Id: I14ee424d032f22e5285d67accbec078ad1955dd0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2595811 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Mohan Maiya 33fb6e38 2020-12-16T13:01:52 Vulkan: Unskip tests with passthrough GLSL function The 2 end2end tests added by a62ee4d1 no longer fail with latest Pixel ICDs. Enable those tests as regression checks. Tests: angle_end2end_tests --gtest_filter=*SamplerPassthrough*Vulkan* Bug: angleproject:5457 Change-Id: I53fb06fffa3fc76ef6f9a9e811ef5b833577ed67 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2595389 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Jamie Madill 34383894 2020-12-15T15:06:14 Roll third_party/spirv-cross/src/ f38cbeb81..be527632a (167 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross/+log/f38cbeb814c7..be527632a6c8 $ git log f38cbeb81..be527632a --date=short --no-merges --format='%ad %ae %s' 2020-11-25 comexk spirv_msl: Don't add fixup hooks for builtin variables if they're unused. 2020-11-23 cdavis MSL: Don't mask off inactive bits in ballot masks. 2020-11-20 cdavis MSL: Adjust FragCoord for sample-rate shading. 2020-11-23 post GLSL: Fix buffer_reference with aliased names. 2020-11-23 post GLSL: Emit storage qualifiers for buffer_reference. 2020-11-23 post HLSL: Fix validation with FXC for test. 2020-11-23 post Normalize all internal workaround methods to use spv prefix. 2020-11-21 scribam CMake: Set minimum required version to 3.0 2020-11-18 cdavis MSL: Expand subgroup support. 2020-11-12 git GLSL: Require GL_ARB_vertex_attrib_64bit for double input in pre-4.10 2020-11-14 cdavis MSL: Expose some more features on iOS. 2020-11-11 post MSL: Add missing reference file. 2020-11-11 post Fix switch fallthrough 2020-11-09 git GLSL: Legacy / extension fallbacks for textureSize and texelFetch 2020-10-29 jsikorski MSL: extract global variables from subgroup ballot operations 2020-11-08 post Run format_all.sh. 2020-11-08 post Update texture gather test result. 2020-11-07 git GLSL: Add error checking and extension fallback for textureGather 2020-11-07 git GLSL: Remove unused `lod` argument from legacy_tex_op() 2020-11-05 git GLSL: implement transpose() in GLSL 1.10 / ES 1.00 2020-11-06 git GLSL: Fix round/roundEven for legacy GLSL. 2020-11-05 git GLSL: Fix support for textureLod in legacy vertex shaders 2020-11-06 post MSL: Fix regression in image gather handling. 2020-11-02 cdavis MSL: Support pull-model interpolation on MSL 2.3+. 2020-11-03 git HLSL: Support roundEven() in HLSL SM 4.0 and above 2020-11-03 git HLSL: Add regression test for SM3.0 texture samplers 2020-10-31 git HLSL: Support depth comparison texture sampling in SM 2/3. 2020-11-03 post HLSL: Add option to flatten matrix vertex input semantics. 2020-11-03 post Parser: Don't assume OpTypePointer will always take a SPIRType. 2020-11-02 bill.hollings Syntax and format updates from code review. 2020-11-02 crisserpl2 Updated ref file for subgroups_basicvoteballot.vk.comp 2020-10-31 devsh.graphicsprogramming Fix some bad assumptions about emulating `subgroupBarrier` 2020-10-30 bill.hollings Minor format and typo updates from code review. 2020-10-27 cdavis MSL: Allow Bias and Grad arguments with comparison on Mac in MSL 2.3. 2020-10-30 post GLSL: Fix nonuniformEXT injection. 2020-10-30 atyuwen fixed compile error with -std=c++20 2020-10-30 atyuwen added metal keyworld: "level" (#1501) 2020-10-29 bill.hollings MSL: Support run-time sized image and sampler arrays (GL_EXT_nonuniform_qualifier/SPV_EXT_descriptor_indexing). 2020-10-27 cdavis MSL: Allow framebuffer fetch on Mac in MSL 2.3. 2020-10-27 cdavis MSL: Allow post-depth coverage on Mac in MSL 2.3. 2020-10-27 post Handle case where block is loop header, continue AND break block. 2020-10-14 post GLSL: Support a workaround for loading row-major matrices. 2020-10-20 cdavis MSL: For 2.1+, don't disable rasterization for vertex writes. 2020-10-26 post MSL: Do not use component::x gather for depth2d textures. 2020-10-26 post Update TravisCI python reference. 2020-10-21 cdavis MSL: Cast broadcast booleans to ushort. 2020-10-20 cdavis MSL: Mask ballots passed to Ballot bit ops. 2020-10-20 cdavis MSL: Support vectors with OpGroupNonUniformAllEqual. 2020-10-20 cdavis MSL: Correct definitions of subgroup ballot mask variables. 2020-10-20 cdavis MSL: Don't remove periods from swizzle buffer index exprs. (...) 2020-06-18 post MSL: Deal with loading non-value-type arrays. 2020-06-18 post MSL: Add tests for array copies in and out of buffers. 2020-06-18 post MSL: Improve handling of array types in buffer objects. 2020-06-18 post Clean up some deprecation warnings when building with Makefile. 2020-06-18 post Remove unused member in MSLShaderInput. 2020-06-13 cdavis MSL: Fix up input variables' vector lengths in all stages. 2020-06-16 post HLSL: Fix texProj in legacy HLSL. 2020-06-12 git GLSL: Require GL_ARB_draw_instanced for gl_InstanceID in GLSL < 1.40 2020-06-08 post GLSL: Handle the rest of GL_ARB_sparse_texture_clamp. 2020-06-08 post GLSL: Support uint code for sparse residency query. 2020-06-05 post Refactor texture fetch function generation. 2020-06-06 AlexanderMeissner Fix missing switch cases in Y'CbCr conversion 2020-06-04 post GLSL: Implement sparse feedback. 2020-06-04 post MSL: Remove obsolete MSLVertexAttr members. 2020-06-04 post HLSL: Add native support for 16-bit types. 2020-05-28 bryan.bernhart Prefer set/binding API 2020-05-28 post Document all CLI options. 2020-05-28 post Do not mask writes to remapped variables in all cases. 2020-05-27 bryan.bernhart HLSL: Add option to treat certain SSBO bindings as UAV, even with readonly. 2020-05-25 post Handle physical pointers in reflection API. 2020-05-22 post GLSL: Improve support for GL_ARB_shader_draw_parameters in desktop GLSL. 2020-05-21 dsinclair Roll SPIRV-Tools, SPIRV-Headers and GLSLang. 2020-05-20 dsinclair Roll dependencies 2020-05-20 post GLSL: Add more test shaders for hit attribute types. 2020-05-20 post GLSL: Support ray payloads and hit attributes declared as Block. 2020-05-20 post GLSL: Add some more focused RT test shaders. 2020-05-19 post HLSL: Implement image queries for UAV images. 2020-05-08 post Support gl_InstanceID in RT shaders. 2020-05-06 post MSL: Avoid packed arrays in more cases. 2020-05-06 post Add missing reference files from PR merge. 2020-05-06 lehoangq Fix #1359: MSL: If the packed type is scalar, don't emit "pack_" prefix. 2020-04-30 post MSL: Redirect member indices when buffer has been sorted by Offset. 2020-04-30 cwallez Fix -Wmicrosoft-enum-value 2020-04-28 rharrison Update SPIR-V Headers to 1.5 rev 3 2020-04-27 post Work around odd deadlock in test_shaders.py in --parallel mode. 2020-04-27 post Implement OpAtomicLoad/OpAtomicStore. 2020-04-27 post MSL: Fix case where subpassInput is passed to leaf functions. 2020-04-27 alexis.payen Fixed recursion in combined_decoration_for_member Members in nested structs were not properly iterated on, and as a result, flags like row major for matrices could be not propagated properly. 2020-04-23 dsinclair Roll GLSLang, SPIRV-Tools and SPIRV-Headers. 2020-04-21 post GLSL: Support f16x2 <-> f32 bitcast. 2020-04-21 post Be a bit more careful what nonuniform state is propagated. 2020-04-21 post Handle RayQueryKHR type. 2020-04-21 post Update SPIR-V headers. 2020-04-18 devsh.graphicsprogramming Fix issue #1327 2020-04-21 post HLSL: Add parens in unpackUint2x32 for clarity. 2020-04-21 post HLSL: Only allow 64-bit integers in SM 6.0. 2020-04-21 post Ensure unpack/pack2x32 tests are compatible with test suite. 2020-04-17 bingkan GLSL/HLSL: Support packUint2x32 and unpackUint2x32 2020-04-21 post MSL: Deal correctly with initializers on Private variables. 2020-04-20 post MSL: Support edge case with DX layout in scalar block layout. Created with: roll-dep third_party/spirv-cross/src Bug: angleproject:5390 Change-Id: If2ccfd70739a4377b929813cd819067c4c5aa3a7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2593554 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
jchen10 9bb06f37 2020-12-16T10:24:29 Unsuppress GLSLTest.PointCoordConsistency on Intel/Win/GL The test can pass on 26.20.100.8141 now. Bug: angleproject:2805 Change-Id: I8049c43ed7eca6c2001a8d8745aa6f9c2a2192a5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2594349 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez a19bd601 2020-12-16T13:04:38 Revert "Vulkan: Ignore glFlush to reduce vkQueueSubmits in Asphalt 9" This reverts commit 5cf7472dd161bbda329dfc5e4e65bb6ce0c06fbd. Reason for revert: causes timeouts, see anglebug.com/5470 Original change's description: > Vulkan: Ignore glFlush to reduce vkQueueSubmits in Asphalt 9 > > Multithreaded apps can use the following pattern: > > glDrawElements() > glFenceSync() > glFlush() > glWaitSync() > > This currently results in a vkQueueSubmit for every glFlush() to ensure > that the work has landed in the command queue in the correct order. > However, ANGLE can instead avoid the vkQueueSubmit during the glFlush() > in this situation by instead flushing the ContextVk's commands and > ending the render pass to ensure the commands are submitted in the > correct order to the renderer. This improves performance for Asphalt 9 > by reducing frame times from 150-200msec to 35-55msec. > > Specifically, ANGLE will call flushCommandsAndEndRenderPass() when > there is a sync object pending a flush or if the ContextVk is currently > shared. > > Additionally, on all devices except Qualcomm, ANGLE can ignore all other > glFlush() calls entirely and return immediately. For Qualcomm devices, > ANGLE is still required to perform a full flush (resulting in a > vkQueueSubmit), since ignoring the glFlush() reduces the Manhattan 3.0 > offscreen score by ~3%. > > Bug: angleproject:5306 > Bug: angleproject:5425 > Change-Id: I9d747caf5bf306166be0fec630a78caf41208c27 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2552718 > Commit-Queue: Tim Van Patten <timvp@google.com> > Reviewed-by: Charlie Lao <cclao@google.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> TBR=timvp@google.com,jmadill@chromium.org,cclao@google.com Change-Id: I9886bf901a835d408b6a4b8be7ea408fa2121be0 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:5306 Bug: angleproject:5425 Bug: angleproject:5470 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2595032 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
angle-autoroll 0c87891f 2020-12-16T10:01:37 Roll glslang from c0bcfaf3bae9 to a5be11bd8b3f (2 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/c0bcfaf3bae9..a5be11bd8b3f If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: cwallez@google.com Change-Id: I639bd35c4d16e4e69acf60b70c6649c3dd441a73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2594711 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll e335cc65 2020-12-16T07:00:27 Roll Chromium from 5a03bdd6e398 to 0592a5f8d414 (472 revisions) https://chromium.googlesource.com/chromium/src.git/+log/5a03bdd6e398..0592a5f8d414 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 cwallez@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/3156ee0cf9..deb698d48d * testing: https://chromium.googlesource.com/chromium/src/testing/+log/715d9573da..6e6d8d1651 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..f600415e92 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/b93f034c30..9cb7877086 No update to Clang. Bug: angleproject:5390 Tbr: cwallez@google.com Change-Id: I8dc12fad910dbfcf737fe1f0589a41b065cd3d8f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2594635 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill 328f72ae 2020-12-15T19:25:50 Update VVL directories in Android build. This should fix the duplicate target definition for the layers. Bug: angleproject:5390 Bug: angleproject:5468 Change-Id: Iaafe9e059fee823b2e4b9145ea38dc61b6d767db Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2593565 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Mohan Maiya 98b56e60 2020-12-12T16:28:21 Vulkan: Accumulate internal cache stats in renderer The CacheStats of all internal caches are accumulated by the renderer. In order to see the hit ratios of all caches, the following GN args must be enabled: is_debug = true angle_enable_perf_counter_output = true Bug: angleproject:5447 Test: Manual verification with angle_end2end_tests Change-Id: Iaca3249192e9e4e130d8291b7759c459d79b06ee Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2588430 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tim Van Patten 5cf7472d 2020-11-20T13:07:53 Vulkan: Ignore glFlush to reduce vkQueueSubmits in Asphalt 9 Multithreaded apps can use the following pattern: glDrawElements() glFenceSync() glFlush() glWaitSync() This currently results in a vkQueueSubmit for every glFlush() to ensure that the work has landed in the command queue in the correct order. However, ANGLE can instead avoid the vkQueueSubmit during the glFlush() in this situation by instead flushing the ContextVk's commands and ending the render pass to ensure the commands are submitted in the correct order to the renderer. This improves performance for Asphalt 9 by reducing frame times from 150-200msec to 35-55msec. Specifically, ANGLE will call flushCommandsAndEndRenderPass() when there is a sync object pending a flush or if the ContextVk is currently shared. Additionally, on all devices except Qualcomm, ANGLE can ignore all other glFlush() calls entirely and return immediately. For Qualcomm devices, ANGLE is still required to perform a full flush (resulting in a vkQueueSubmit), since ignoring the glFlush() reduces the Manhattan 3.0 offscreen score by ~3%. Bug: angleproject:5306 Bug: angleproject:5425 Change-Id: I9d747caf5bf306166be0fec630a78caf41208c27 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2552718 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Paul Thomson 4abf3788 2020-12-15T13:44:53 Tests: update WhatsApp trace The WhatsApp trace was previously captured with the GL_NV_shader_noperspective_interpolation extension enabled. This re-capture was made with the extension disabled so the trace can replayed on devices that don't support the extension. Test: angle_perftests --gtest_filter="*whatsapp*" Bug: b/174256233 Change-Id: I9dbf580ed5849b919a72944879be35193632e34a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2593191 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Charlie Lao 64508f44 2020-12-12T18:00:10 Vulkan: Reduce driver uniform data to minimum if specConst is used If specialization constant is used, driver uniform data structure should be reduced to minimum to increase cache locality. Bug: b/175479076 Change-Id: I1fc50666542c6763c60bfe011cde5bc77ccc08e1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2588549 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Charlie Lao <cclao@google.com>
Mohan Maiya 8f9e17d5 2020-12-14T14:11:11 Add EXT_clip_cull_distance extension autogen code Addition of shader autogen code for EXT_clip_cull_distance extension. Bug: angleproject:5458 Change-Id: I299528957c0e747fd84987c420588c314f54aae0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2590989 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 46eaba7f 2020-12-12T10:31:26 Vulkan: Add support for internal cache hit and miss counts Add a CacheStats class that provides cache hit and miss bookkeeping. All internal caches make use of this class to keep track of its stats. This provides a means to profile cache hit ratios a.k.a Vulkan object reuse for any application. Bug: angleproject:5447 Test: Manual verification with angle_end2end_tests Change-Id: I44eeb0c2b9b291ec1cdd156fb2be4a5fe80d2848 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2580111 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Mohan Maiya f32fbb51 2020-12-14T14:42:58 Add EXT_shader_framebuffer_fetch_non_coherent entry points Addition of the entry points for EXT_shader_framebuffer_fetch_non_coherent extension. Bug: angleproject:5454 Change-Id: I2b8ba5141eed61a0c3ba58aeb2eec12a2071e7f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2590991 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Mohan Maiya 9229b805 2020-12-14T14:10:28 Vulkan: Add the tests for EXT_clip_cull_distance Before supporting EXT_clip_cull_distance extension, some tests are added to validate the implementation of EXT_clip_cull_distance extension. These tests are implemented based on the tests for APPLE_clip_distance Bug: angleproject:5458 Tests: angle_end2end_tests --gtest_filter=Clip*DistanceTest* angle_unittests --gtest_filter=*Clip*Distance* Change-Id: I018c72ae8f0aff616c9d2600e63246e9609cf3de Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2585986 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>