kc3-lang/angle

Branch :


Log

Author Commit Date CI Message
a83c9108 2021-07-29 17:13:41 Vulkan: SPIR-V Gen: Fix nested ternary operators The OpPhi instruction used to implement ternaries referenced to the blocks pregenerated for the true and false cases. However, if there were other code nested inside that could generate blocks (other ternary expressions or short-circuits), that would be wrong. Instead, the last block id is taken every time the true or false case is entirely visited (similar to how it's done in the short-circuit implementation). Bug was caught by the WebGL CTS. Bug: angleproject:4899 Change-Id: I71be86989dfe9596a13940ce657a7e67849e86bf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3061639 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
2b23aae4 2021-07-29 16:39:28 Vulkan: SPIR-V Gen: Support vec(..., mat) Matrices specified in vector constructor arguments were not correctly handled w.r.t to casting (caught by the WebGL CTS). Bug: angleproject:4889 Change-Id: I70253f049a651fc5f439b56d1e4d8f785813b605 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3061638 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
f549594f 2021-07-30 19:15:05 Roll VK-GL-CTS from 571256871c2e to 0eb84cfc3d3f (25 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/571256871c2e..0eb84cfc3d3f 2021-07-29 gleese@broadcom.com Add more tests for YCbCr plane compatibility 2021-07-29 gleese@broadcom.com Remove invalid reserved keywords tests 2021-07-29 rgarcia@igalia.com Test line stipple factor is ignored if not used 2021-07-29 rgarcia@igalia.com Test zero-size unused specialization constants 2021-07-28 slawomir.cygan@intel.com Fix build on CLang failing due to -Wunused-private-field 2021-07-28 venni.ihanakangas@siru.fi SwiftShader script improvements 2021-07-28 alexander.galazin@arm.com Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/master 2021-07-27 alexander.galazin@arm.com Update glslang, SPIR-V Tools, headers 2021-07-27 jason.ekstrand@intel.com Add tests for VK_EXT_shader_atomic_float2 2021-07-27 rgarcia@igalia.com Tests for VK_KHR_present_id and VK_KHR_present_wait 2021-07-27 alexander.galazin@arm.com Update Vulkan headers 2021-07-23 jin.zhou@amd.com Fix uninitialized local variables in generated shader. 2021-07-23 siglesias@igalia.com Fix most dEQP-VK.sparse_resources.shader_intrinsics.* validation errors 2021-07-23 rgarcia@igalia.com Additional dynamic depth bias tests 2021-07-23 rgarcia@igalia.com Test VK_EXT_multi_draw with geometry and tessellation shaders 2021-07-22 gleese@broadcom.com Remove unused test cases from gen-keywords script 2021-07-22 post@arntzen-software.no Test dynamic vertex stride of 0. 2021-07-22 gleese@broadcom.com Add Image Store tests to BGRA images 2021-07-22 piotr.byszewski@mobica.com Test fragment shading rate limits and rates 2021-07-22 siglesias@igalia.com Add more test related to early fragment tests 2021-07-22 alexander.galazin@arm.com Remove replacement of bool32 2021-07-22 alexander.galazin@arm.com Replace DWORD with uint32_t 2021-07-22 siglesias@igalia.com Fix early destruction of VkPipelineLayout 2021-07-22 mikko.tiusanen@siru.fi Reorder vulkan enum elements 2021-07-19 alexander.galazin@arm.com Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/master If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC angle-bots+autoroll-info@google.com,timvp@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/main/autoroll/README.md Bug: None Tbr: angle-bots+autoroll-info@google.com,timvp@google.com Change-Id: I3f0e4dbc7dfd3043f4c2318f56626d6cb3646b9a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3064027 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
aec5e65c 2021-07-28 00:36:12 Get direct-to-Metal backend to run angle_end2end_tests. Cherry-pick nameless struct fix from Apple in https://bugs.webkit.org/show_bug.cgi?id=227482 . Fix SeparateCompoundStructDeclarations pass to stop generating multiple declarations; thanks syoussefi@ for advice. Incorporate additional passes from TranslatorVulkan (MonomorphizeUnsupportedFunctionsInVulkanGLSL, RewriteArrayOfArrayOfOpaqueUniforms, SeparateStructFromUniformDeclarations) needed by RewriteStructSamplers pass in TranslatorMetalDirect. Fixes many assertion failures in GLSL tests. Moved these passes out of tree_ops/vulkan. Thanks again to syoussefi@ for advice and help. Disable a validation check related to the RewritePipelines pass. Skip two tests that were failing for other reasons. With these changes, angle_end2end_tests runs to completion when the direct-to-Metal backend is turned on. There are still ~1300 failures of the ~4000 tests which will be investigated next. Bug: angleproject:5505 Change-Id: Ibca77822543e8e8e8d2a8c862e92cdf74bfa3545 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058524 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
22ae4ce0 2021-07-28 16:06:49 Revert "Disable RunAppAsync and RunAppAsyncRedirectStderrToStdout" This reverts commit f4f866ce289423d691a0edc0d44d13f4de16f897. Reason for revert: These tests should not be disabled. The culprit is fixed per crbug.com/1233361 Original change's description: > Disable RunAppAsync and RunAppAsyncRedirectStderrToStdout > > The tests are blocking the CQ due to flakiness. > > Bug: chromium:1233361 > Change-Id: Ib0283e201c271379364a177bea130d63322eee53 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058233 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bug: chromium:1233361 Change-Id: I24682f74d790d40f58a9526aaaaa842c3df23ec0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058502 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
96ccf3f4 2021-07-29 12:38:21 Translator: Consolidate EvqFragDepth and EvqFragDepthEXT They were the same thing. Fixes SPIR-V generation which only handled EvqFragDepth. Bug: angleproject:4889 Change-Id: Id2c35f4c5a26e43ad16a420cc0306756a1add082 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3059922 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
014460d8 2021-07-30 09:19:50 Rename WebSwapLayerCGL to WebSwapCGLLayer Renaming WebSwapLayerCGL to fix the following MacOS warning: Class WebSwapLayerCGL is implemented in both /System/Library/Frameworks/WebKit.framework/Versions/A/ Frameworks/WebCore.framework/Versions/A/WebCore and .../chromium/src/out/.../Chromium.app/Contents/Frameworks/ Chromium Framework.framework/Versions/.../Libraries/ libGLESv2.dylib One of the two will be used. Which one is undefined. Bug: angleproject:5253 Change-Id: I016e7467994d3ecf7b22750af2606314593dd516 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3062212 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
cad2bcb8 2021-07-27 11:40:25 packed_egl_enums: Add ColorSpace. Add EGL ColorSpace enum consisting of sRGB and Linear entries. Bug: angleproject:5857 Change-Id: I1e30db6fca6ad65db17a6369a26eae886468a85d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3056370 Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
3036e090 2021-07-29 15:55:39 Vulkan: Direct SPIR-V Gen: Support the precise keyword The precise keyword is different in GLSL in that it defines what arithmetic operations _that have led to the value being assigned to a variable_ should be done precisely (i.e. not "contracted"). A tree traverser is implemented that detects precise access chains and applies precise-ness to the right hand side of assignment expressions to said access chains. This is only done if the shader uses the precise keyword in the first place. The algorithm for this is inspired by the implementation in glslang. This change additionally: - Fixes parser to allow precise on function parameters - Fixes GLSL code generation to output precise on struct members and function parameters. Bug: angleproject:4889 Change-Id: Ie3808c3c8c08da308e88af20f5f90379d9d14d47 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3056369 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
8f77e0bc 2021-07-29 15:54:26 Define angle::HashSet potentially using abseil Split change from CL using it for simplicity. Bug: angleproject:4889 Change-Id: Ie3e621dee624020581e9fd7679639332718948f6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3061439 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
71fb0352 2021-07-29 10:01:13 Roll vulkan-deps from ecc420b25566 to 55a0cb8b66ac (8 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/ecc420b25566..55a0cb8b66ac Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/1978c7692f..d433cccb8a * spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/cf653e4ca4..e7b49d7fb5 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/11cd875ed8..983ee2313c * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/a4ee3cacbb..ba8c411641 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 timvp@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/main/autoroll/README.md Bug: None Tbr: timvp@google.com Change-Id: Ida81847ef1271bcdcac1485e40e6e848b6130ff4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3059844 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
b7eec5c6 2021-07-29 10:01:14 Roll SwiftShader from b8bcc42a41e5 to 44660405ea6c (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/b8bcc42a41e5..44660405ea6c 2021-07-28 capn@google.com Initialize llvm::orc::ExecutionSession with default SelfExecutorProcessControl 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 timvp@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/main/autoroll/README.md Bug: None Tbr: timvp@google.com Change-Id: Ieb2440c196b8544dcae8c0965fb8c351ac5dc4bc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3060439 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
e74638fe 2021-07-28 19:03:43 Disable Metal shader cache again in angle_end2end_tests. This hooking was removed in https://chromium-review.googlesource.com/3010486 and sped up local test runs, but seems to have reintroduced flakiness on the Mac AMD Retina bots. Bug: chromium:1233864 Bug: angleproject:5505 Change-Id: I46d95545fbbedc0e881e3a2832a5ac5d5384f405 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3057823 Commit-Queue: ccameron <ccameron@chromium.org> Reviewed-by: ccameron <ccameron@chromium.org>
ae24c9d3 2021-07-19 12:11:41 Remove space from internal debug name strings. This changes will reduce the amount of memory used by labels by removing the in between spaces from internal debug name strings. Bug: chromium:1164111 Change-Id: I0ec657789dade2c3c053966ffccfbd673186fdad Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3039119 Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
b8e8c822 2021-07-27 11:19:59 Suppress Mac 11.4 failures Suppresses several Mac 11.4 AMD failures that were found after we started testing the configuration. Bug: angleproject:6222, angleproject:6223 Change-Id: I4f0f5ac0ab14d2645bb76def3e4ec55d999940fa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3056839 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Brian Sheedy <bsheedy@chromium.org>
8593e0a2 2021-07-28 13:52:06 TestSuite tests: Don't validate stderr until fixed Bug: chromium:1233361 Change-Id: Ibcd66520d7b842211eafb26f9188298c281cbe64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058503 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
b751b185 2021-07-22 22:10:22 infra: Enable gles3.2 deqp tests with direct SPIR-V generation Enabled on Linux/Nvidia, Windows/Nvidia and Pixel4. Bug: angleproject:4889 Change-Id: I3050ed53b48cc114c940486871910a3b9c5adea5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047383 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
630077c5 2021-07-22 22:08:21 infra: Enable gles3.1 deqp tests with direct SPIR-V generation Enabled on Linux/Nvidia, Windows/Nvidia and Pixel4. Bug: angleproject:4889 Change-Id: Id82c909e368cdc189aea2e44f6371a27d8232e37 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047382 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
f4f866ce 2021-07-28 10:55:12 Disable RunAppAsync and RunAppAsyncRedirectStderrToStdout The tests are blocking the CQ due to flakiness. Bug: chromium:1233361 Change-Id: Ib0283e201c271379364a177bea130d63322eee53 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058233 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
111c9a15 2021-07-28 10:01:13 Roll vulkan-deps from 42c7e9bc00c2 to ecc420b25566 (2 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/42c7e9bc00c2..ecc420b25566 Changed dependencies: * glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/9158061398..1978c7692f * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/459cb6009e..8fb97f0282 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 timvp@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/main/autoroll/README.md Bug: None Tbr: timvp@google.com Change-Id: I37235d3641b8c0d02bdd1cd1997c0765eeed861f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3057818 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
c72bb361 2021-07-28 10:01:14 Roll SwiftShader from 915947134128 to b8bcc42a41e5 (2 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/915947134128..b8bcc42a41e5 2021-07-27 capn@google.com Remove -Wno-unused-but-set-variable flag usage 2021-07-26 pkasting@chromium.org Fix some instances of -Wunused-but-set-variable. 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 timvp@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/main/autoroll/README.md Bug: None Tbr: timvp@google.com Change-Id: Ib9f66aa6a4e1970b9115679d94678c5520e9deed Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058731 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
48a61889 2021-07-28 07:00:02 Roll Chromium from f18a56e21b43 to 7ad7eb435b84 (470 revisions) https://chromium.googlesource.com/chromium/src.git/+log/f18a56e21b43..7ad7eb435b84 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 timvp@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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/2e6288eaef..96a4da9412 * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/bfcda91989..24e92c2bee * testing: https://chromium.googlesource.com/chromium/src/testing/+log/ed11dbd7ea..88e2d8b080 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/69fa5ec37a..2a8bb1ca80 * tools/luci-go: git_revision:04c7051e7a02d7000bf28b53a575fea10220b555..git_revision:75ff299b9adf969190cafebe902255856a346f0b * tools/luci-go: git_revision:04c7051e7a02d7000bf28b53a575fea10220b555..git_revision:75ff299b9adf969190cafebe902255856a346f0b * tools/luci-go: git_revision:04c7051e7a02d7000bf28b53a575fea10220b555..git_revision:75ff299b9adf969190cafebe902255856a346f0b * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/a577fc1092..ef691997d9 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/e39d397fb7..b210baf513 * tools/skia_goldctl/linux: kaeAzSau0swqM5_PxvyRfHSMDvXSjyDsqgPiP5rpoYEC..Pc3OHV2QqhJ1IA5WQWr_kZ72iUVitbAX-iQN7j8sfcQC * tools/skia_goldctl/mac: sZ1aXBq0Ae2kaeyAtTGpMuEEGdcqMzga658pAaCAl0IC..KASmGKR0ayqtBOEyjhnO0Bt_YP_U602cxGcJOOjhAPoC * tools/skia_goldctl/win: 67QQ3-xX3VTYrb9YrwUR0VedVqNq7sebZZeHS823QdcC..XfCGeDXrOWGLHwo_HFFlERuqKHW2zZGUGnF1DzCyCP0C No update to Clang. Bug: None Tbr: timvp@google.com Change-Id: Ie43056dba44cde445c38237c6e2aab6740a41922 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3058570 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
7c6da493 2021-07-26 21:24:25 Translator: Make sure built-in variables are consistent Some transformations left the tree in an inconsistent state, for example if it used gl_SampleMask from ES3.1+OES_sample_variables and the transformation added a usage of gl_SampleMask from ES3.2. The offending transformations are fixed and AST validation is improved to catch such errors. Bug: angleproject:4889 Change-Id: I9d9ea5bb43a9408dd4c6dc3e89ec20d60dfeff73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3054613 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
0d06c3cf 2021-07-26 04:30:39 Fix some instances of -Wunused-but-set-variable. Bug: chromium:1203071 Change-Id: I144165ae5ec47aba88658030a6ba3e371bf31ee7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3053616 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
c8c9e15b 2021-07-26 22:51:49 Translator: Fix sizing of tessellation shader arrays If layout(vertices=N) is specified after implicitly sized array declarations, the correct size was not being specified on them. Bug: angleproject:4889 Change-Id: I86ccf45a7f264b493a137b87316eff744079ed6c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3054614 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
bd19620f 2021-07-27 23:45:11 Revert "VulkanExternalHelper: Use VK_KHR_image_format_list extension." This reverts commit 4222d5e5a03f85ca07253d54f3087684fe9447b3. Reason for revert: errors on multiple builders when rolling into Chromium https://chromium-review.googlesource.com/c/chromium/src/+/3057227 e.g. https://ci.chromium.org/ui/p/chromium/builders/try/linux_chromium_asan_rel_ng/924126/overview Original change's description: > VulkanExternalHelper: Use VK_KHR_image_format_list extension. > > To retrieve correct size requirements when the VK_KHR_image_format_list > extension is enabled, it must be used to match VkImages created in > vk_helpers. > > RendererVk: Fully enable VK_KHR_image_format_list. > Enable the extension on non-AMD and non-ARM platforms. > > Bug: angleproject:5281 > Change-Id: I3ca60bf6efcf9d9c10d4d96a3fe91b999eb044f7 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035047 > Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Bug: angleproject:5281, chromium:1233561 Change-Id: I3b15bb2fc2fb779adac8bbf5d805727a25b5795c No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3057071 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
1dd33c05 2021-07-27 21:56:15 Roll vulkan-deps from d85297cbd31b to 42c7e9bc00c2 (37 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/d85297cbd31b..42c7e9bc00c2 Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/cd22336a38..1964799fba * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/d9f8925785..11cd875ed8 * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/872fa25bb6..b8c57b0a09 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/a0c69f0d3a..99a7440204 * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/893fc802e4..459cb6009e 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 timvp@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/main/autoroll/README.md Bug: None Tbr: timvp@google.com Change-Id: Id2402348bcf414ce7bebb8e5c647f0db54537557 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3057520 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
5bda5f91 2021-07-26 20:37:52 Fix some instances of -Wunreachable-code-aggressive. Bug: chromium:1066980 Change-Id: I1e769b78c51d939067e8855beab32ec7c006c00e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3055794 Reviewed-by: Nico Weber <thakis@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org>
4222d5e5 2021-07-16 16:26:17 VulkanExternalHelper: Use VK_KHR_image_format_list extension. To retrieve correct size requirements when the VK_KHR_image_format_list extension is enabled, it must be used to match VkImages created in vk_helpers. RendererVk: Fully enable VK_KHR_image_format_list. Enable the extension on non-AMD and non-ARM platforms. Bug: angleproject:5281 Change-Id: I3ca60bf6efcf9d9c10d4d96a3fe91b999eb044f7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035047 Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Mohan Maiya <m.maiya@samsung.com>
ef406f1b 2021-07-16 12:19:23 FrameCapture: Capture GLES1 matrix stack. Capture the modelview and projection matrix stack. This is required for GLES1 applications that do not reset the stack every frame. Bug: angleproject:6181 Change-Id: I71befc15ca287cf91fcebf9d972c7badaeb23605 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035050 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
edb4a7a8 2021-07-16 12:19:06 GLES1State: Add getMatrixStack function. FrameCapture requires access to the whole matrix stack. This function also exposes stacks that are not currently set. Bug: angleproject:6181 Change-Id: I595feaa0cbd3e5a62e398aa7a0578ecf6425ffe6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035049 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
9b95caf4 2021-07-27 07:01:41 Roll Chromium from 779c0d440060 to f18a56e21b43 (464 revisions) https://chromium.googlesource.com/chromium/src.git/+log/779c0d440060..f18a56e21b43 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 timvp@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/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/958a8ec2c1..2e6288eaef * buildtools/linux64: git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b..git_revision:c0a2d23c21e87f27f5af3e5dc2a99f2ef3480b9e * buildtools/mac: git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b..git_revision:c0a2d23c21e87f27f5af3e5dc2a99f2ef3480b9e * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/e8bf577fbf..bfcda91989 * buildtools/win: git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b..git_revision:c0a2d23c21e87f27f5af3e5dc2a99f2ef3480b9e * testing: https://chromium.googlesource.com/chromium/src/testing/+log/412b2038bc..ed11dbd7ea * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/94ebf0661e..69fa5ec37a * tools/luci-go: git_revision:81e548572494391fa74559e816562d60c767bc69..git_revision:04c7051e7a02d7000bf28b53a575fea10220b555 * tools/luci-go: git_revision:81e548572494391fa74559e816562d60c767bc69..git_revision:04c7051e7a02d7000bf28b53a575fea10220b555 * tools/luci-go: git_revision:81e548572494391fa74559e816562d60c767bc69..git_revision:04c7051e7a02d7000bf28b53a575fea10220b555 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/159bcd47b2..a577fc1092 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/48df54f532..e39d397fb7 Clang version changed llvmorg-13-init-15561-gf98ed74f:llvmorg-13-init-16514-gb1777b04 Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/94ebf0661eb5b6ed2a2cbc46eb7a579a06c040b0..69fa5ec37acc53d9fecfa6fe61ed9993f8f44412/scripts/update.py Bug: None Tbr: timvp@google.com Change-Id: Ia2424c4760473583dbf054535a9cc3b0bdb00a68 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3055648 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
b8d6f8aa 2021-07-22 22:31:29 Translator: Facilitate integration in FireFox Instead of relying on is_apple to build workarounds applied on apple hardware, a new build argument is added for this purpose. This allows FireFox to more easily include these files in their build system (which builds every workaround on every platform). The workarounds are reorganized too and moved from tree_ops/gl/mac to tree_ops/apple. RewriteRowMajorMatrices is moved there too as it's now used by both gl and metal. This workaround is large, and removing it from non-apple builds improves binary size (~40KB on Linux). Bug: angleproject:6188 Change-Id: I8e1dab44d0235bb6b8341d53721bdd0d157d46c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047385 Reviewed-by: Jeff Gilbert <jgilbert@mozilla.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
dbe986d7 2021-07-26 01:43:44 Vulkan: SPIR-V Gen: Fixes to tessellation shader support - TCS barrier() built-in is correctly looked up - Patch decorations are fixed Bug: angleproject:4889 Change-Id: I1befcaca85a965c9d46b1b41ec74597de44bf2b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052687 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
acfd63a4 2021-07-26 01:02:11 Translator: Remove GLSL rules from the ESSL-only symbol table Shaves ~36KB off of ANGLE's binary size on Android. Bug: chromium:1084580 Change-Id: I4711c6bd28437a43b7dc63be4cfcdaed7ae11ba2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052686 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
63fa7080 2021-07-25 23:19:02 Vulkan: SPIR-V Gen: Fix bugs with ES3.1 texture* builtins - Add missing ImageCubeArray capability for image cube arrays - Remove extra Lod image operand for sampler/image buffers Bug: angleproject:4889 Change-Id: I96545092528b7dcecf902561e194b17636217ef4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052683 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
4ff80bb5 2021-07-22 21:52:35 infra: Enable gles3 deqp tests with direct SPIR-V generation Enabled on Linux/Nvidia, Windows/Nvidia and Pixel4. Bug: angleproject:4889 Change-Id: I2462b7fa7801b766f4359103a5253209b7fded28 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047381 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
715bab1f 2021-07-25 23:35:17 Vulkan: SPIR-V Gen: Fixes to geometry shader support - max_vertices=0 is invalid in SPIR-V and is fixed (similarly to anglebug.com/5411) - gl_PrimitiveID used in fragment shaders requires the Geometry capability. Bug: angleproject:4889 Change-Id: If8c6a9d455d0582d61c3c52b5f773bcb5ca64b53 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052684 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
ff7eafb5 2021-07-25 23:05:26 Vulkan: SPIR-V Gen: Fix .length() vs ssbo arrays Bug: angleproject:4889 Change-Id: Ib490a46fabf058064fc1b18d2c084a4bc5f9277d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052682 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
b19fbbda 2021-07-25 21:57:12 Vulkan: SPIR-V Gen: Support multiview Bug: angleproject:4889 Change-Id: Ibe66f53357473dbb4435af58775b524d83ed250b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3052675 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
3bd2273b 2021-07-16 12:33:11 Capture/Replay: Only perform call updates on valid calls. Bug: angleproject:5133 Change-Id: Ib1a6ae1ca9ff9717c4e51f8908f5a4ee132d72ab Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035443 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Gert Wollny <gert.wollny@collabora.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
2ce81817 2021-07-26 07:00:05 Roll Chromium from 172cae01c41b to 779c0d440060 (322 revisions) https://chromium.googlesource.com/chromium/src.git/+log/172cae01c41b..779c0d440060 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/5e09be1ee6..958a8ec2c1 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/47f98e89a3..412b2038bc * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/131233f789..94ebf0661e * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/42bdc1223f..48df54f532 Clang version changed llvmorg-13-init-15163-g98033fdc:llvmorg-13-init-15561-gf98ed74f Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/131233f78952301416fd1599964b58fe4af76285..94ebf0661eb5b6ed2a2cbc46eb7a579a06c040b0/scripts/update.py Bug: None Tbr: jmadill@google.com Change-Id: Id07aacc82c17d56790faec87e042b77db4f39d17 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3053611 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
d67cab22 2021-07-12 13:48:22 Capture/Replay: Handle missing context serialization Some ContextLost* tests do weird things with the context serialization which results in a mis-match of available context serializations. In this case check whether both serializations are missing, if so consider this to be an equal contexts states, otherwise, if only one serialization is available, report failure. While touching this code, also remove an unused parameter from the context serialization compare function. Disable tests that still fail with this change. Bug: angleproject:6157 Change-Id: Iee6cc7d65437112e38919cff59804e2b7f9467da Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3021061 Commit-Queue: Gert Wollny <gert.wollny@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
a5b7655c 2021-07-23 22:46:35 Vulkan: Unsupress fixed test Fix landed in glslang. Bug: angleproject:6178 Change-Id: Ie3d2a9535b4ed0d484c97e08be069ff9e27cdde1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3051313 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
939ea5f4 2021-07-23 15:53:17 Vulkan: SPIR-V Gen: Fixes to tessellation builtins On TCS, TES and FS, gl_PrimitiveID is actually an input. Additionally, `patch` variables (including gl_TessLevel* built-ins) need to be decorated with Patch. Bug: angleproject:4889 Change-Id: I326ec4b0c011fe8eaafbad4f8bcb0f537005f96f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048320 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
9416e84e 2021-07-23 14:53:43 Vulkan: SPIR-V Gen: Add missing DepthReplacing execution mode Shaders writing to gl_FragDepth need this execution mode specified. Bug: angleproject:4889 Change-Id: I315c90f9161f4d3d51b1c856f1364fb26a4bd404 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048317 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
de8dc2c9 2021-07-23 15:45:28 Vulkan: SPIR-V Gen: Support OES_sample_variables Built-ins from this extension are now decorated. Bug: angleproject:4889 Change-Id: I12f80d67e3595f94fc64bdc8cb3031d36b98c279 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048319 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
8bf2e5ec 2021-07-23 16:54:16 Vulkan: SPIR-V Gen: Fix switch with default at the end A minor bug was making a switch with default at the end to jump to the merge block instead of the default block. Bug: angleproject:4889 Change-Id: Ied434fab949b10d45a0db1242c1b8535a5f4f773 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048321 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
82d7d888 2021-07-22 21:46:21 Vulkan: SPIR-V Gen: Fix bugs with texture* builtins With this change, deqp ES3 tests pass. Bug: angleproject:4889 Change-Id: Ica158d4e9012c7bb3e458da62b4a7f92aee5c6de Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047380 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
31bc9226 2021-07-23 15:16:27 Vulkan: SPIR-V Gen: Fix unpack* built-ins The parameter to these built-ins was getting extended to a vector. Bug: angleproject:4889 Change-Id: Idddce008c9b4f6bf9205b1e20f6e89ef657ea3a1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048318 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
24610ba6 2021-07-23 22:46:11 Suppress failing SPIR-V gen tests Bug: angleproject:4889 Change-Id: Ie5a5cb5c8f947e2d90861371893367b9ec341f19 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3051312 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
6b5cec15 2021-07-22 17:01:41 Vulkan: SPIR-V Gen: Fixes to scalar->vector promotion With the ternary operator, the condition may be a bool-in-interface block that needs to be cast. This cast is now part of createConstructorVectorFromScalar so it can't be missed. Bug: angleproject:4889 Change-Id: I0e24cd4127301d33a3ac677ccaf560c4468e0799 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047379 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
d0c03ff4 2021-07-22 14:55:51 Vulkan: SPIR-V Gen: Fix lvalues passed to in/inout parameters In GLSL, these values are semantically copied when passed to a function as an in or inout parameter. For example in: bool f(inout vec4 a, inout vec4 b) { a = vec4(0); return all(equal(a, b)); } var = vec4(1); bool result = f(var, var); result is expected to be false. In SPIR-V, every parameter is semantically passed by "reference". glslang conservatively uses temporaries to pass to functions. An optimization in ANGLE didn't create temporaries for unindexed lvalues, which did not take into account the above fact. This optimization is limited to out parameters now. Bug: angleproject:4889 Change-Id: Ie1b4b1cecba847ba63d5810d01d0856823b89ddc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046103 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
cc69d861 2021-07-22 12:49:39 Vulkan: SPIR-V Gen: Fix textureProj's coordinate adjustment The OpCompositeInsert's parameters were given in the wrong order. Additionally, some instructions were not having RelaxedPrecision applied correctly; this is fixed by deriving the decorations from the type of the argument that's passed in a function instead of the type of the parameter itself. Bug: angleproject:4889 Change-Id: I34a54fcc0ef1699e554f9e1abb94c93a5b34b6d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046102 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
9d23ae62 2021-07-22 12:32:44 Vulkan: SPIR-V Gen: Fix conditionals with pruned blocks Rewored the visitIfElse function to simplify the logic and correctly handle if-else constructs where the true block is pruned. Bug: angleproject:4889 Change-Id: Ib968a2fe65f4b6463158fd76e7d67757115ee832 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046101 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
ad8c3257 2021-07-22 11:40:01 Vulkan: Fix bresenham line emulation in shaders with return RunAtTheEndOfShader should have been used to ensure that the appended code runs at the end of the shader no matter if the shader includes return statements. Bug: angleproject:4889 Bug: angleproject:6206 Change-Id: I848eafdf3c7bc63206a7f82cdf0badad335fa3bc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046100 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
1f72aa14 2021-07-23 17:39:28 Roll Chromium from 208fab302a17 to 172cae01c41b (609 revisions) https://chromium.googlesource.com/chromium/src.git/+log/208fab302a17..172cae01c41b If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/2ef6eae721..5e09be1ee6 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/b8e44ff539..47f98e89a3 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * third_party/r8: gXyBDv_fM87KnLcxvF5AGV5lwnm-JXIALYH8zrzdoaMC..Nu_mvQJe34CotIXadFlA3w732CJ9EvQGuVs4udcZedAC * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/609c3a5216..159bcd47b2 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/7668723204..42bdc1223f No update to Clang. Bug: angleproject:6090 Tbr: jmadill@google.com Change-Id: I75f1c7a574cea4e64c53b531a4953a06b9ebee4a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3049710 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
02c5cdbd 2021-07-21 23:08:17 infra: Enable gles2 deqp tests with direct SPIR-V generation Enabled on Linux/Nvidia, Windows/Nvidia and Pixel4. Bug: angleproject:4889 Change-Id: I50c5e31097bd7e1539caf7b229a249cbfa62b93d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042557 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
fbffcf7b 2021-07-23 14:15:18 dEQP: Suppress two tests with undefined behaviour. dEQP-GLES3.functional.shaders.operator.unary_operator.minus.lowp_uvec4_vertex dEQP-GLES3.functional.shaders.operator.unary_operator.minus.mediump_uvec4_vertex See bug for more details. Bug: angleproject:6214 Change-Id: Ibc69dbcd1524470da620c31d41da20f69dfbaae2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3049254 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
8f6f52b5 2021-07-23 10:14:27 GL: Temporarily disable sync control on all GPUs on Linux This workaround is supposed to be limited to Intel GPUs with a recent mesa version, but due to anglebug.com/6174 is not actually enabled on dual-GPU systems. The workaround is temporarily disabled on all GPUs until said issue is fixed. Bug: chromium:1187475 Bug: angleproject:6174 Change-Id: Ieee430b1e2a04e36d6f8d60cabc9e391f0e49988 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048237 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
348eaf15 2021-07-23 11:26:09 roll_aosp.sh: Add dcheck_always_on = false The GN args 'dcheck_always_on' was recently enabled by default, which resulted in an increase to ANGLE's APK size in AOSP from 16.3MB to 20.6MB. Adding 'dcheck_always_on = false' to roll_aosp.sh to disable the feature reduces the APK back to the original 16.3MB size. Bug: b/189125396 Change-Id: I606c30fe49291fa893228644c4b1fe4dd5fbeabf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048933 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
f18bb9c0 2021-07-23 08:57:19 Roll Chromium DEPS manually. Because the packages list changed, the roll_chromium_deps script was failing. Manually roll and update the failure assertion to make the required action clear. Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/488aac0b88..2ef6eae721 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/8c3404999d..b8e44ff539 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/9211d9e376..368be24f93 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/0ab40df9d1..12d2cf1a46 * third_party/android_sdk: https://chromium.googlesource.com/chromium/src/third_party/android_sdk/+log/76bd51b56b..ff9352c23f * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..10f6e4b89b * third_party/r8: Nu_mvQJe34CotIXadFlA3w732CJ9EvQGuVs4udcZedAC..gXyBDv_fM87KnLcxvF5AGV5lwnm-JXIALYH8zrzdoaMC * tools/luci-go: git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d..git_revision:81e548572494391fa74559e816562d60c767bc69 * tools/luci-go: git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d..git_revision:81e548572494391fa74559e816562d60c767bc69 * tools/luci-go: git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d..git_revision:81e548572494391fa74559e816562d60c767bc69 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/2db94c0aa3..609c3a5216 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/4682254401..7668723204 * tools/skia_goldctl/linux: 4iy6PO3bO0fujafbQ4I4eWhD8ErkBKf5xAnGzPrziIUC..kaeAzSau0swqM5_PxvyRfHSMDvXSjyDsqgPiP5rpoYEC * tools/skia_goldctl/mac: _9rtsnZzHBJ4851DtK33jnz7UzMZ77SqJ9sYpciBwiMC..sZ1aXBq0Ae2kaeyAtTGpMuEEGdcqMzga658pAaCAl0IC * tools/skia_goldctl/win: NsVk6Er035r7JVK4foqbqAksO65XEzgIT9Bjwf0Q1q0C..67QQ3-xX3VTYrb9YrwUR0VedVqNq7sebZZeHS823QdcC No update to Clang. Bug: angleproject:6211 Change-Id: I152572fd15066a100cb5f379f7adbd967dc6eac8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048852 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
62628799 2021-07-21 22:55:22 Vulkan: SPIR-V Gen: Support dEQP A temporary condition for direct SPIR-V generation is added to test expectations while this work is in progress, so test suites can be partially enabled. 32 tests are currently failing. Bug: angleproject:4889 Change-Id: Icf0f6ef80d30fdb7564d8ecf928e67ca58ace86f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042556 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
729cbcf1 2021-07-23 11:18:18 Make Display and X11 available in the same build Chromium can use the 'use_ozone' and 'use_x11' build flags simultaneously, so we need the Vulkan display to still be selectable, even when the 'use_x11' flag is used. This is required to make SwANGLE work with Ozone/Wayland, which is going to use EGL_PLATFORM_VULKAN_DISPLAY_MODE_HEADLESS_ANGLE when SwANGLE is requested. Bug: chromium:1231934 Change-Id: I2ac1d3d9bc231608d7f77e9a2540f4c538840076 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3049351 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
91b35c90 2021-06-30 09:28:17 infra: Add perf results processing script. This script is a modified version of the Chromium script: https://chromium.googlesource.com/chromium/src/+/main/tools/perf/process_perf_results.py The primary change is to add additional build info to the histogram set before upload. This additional info isn't available to the test harness and is required for the perf dashboard upload. We can also use this as a basis for uploading to the Skia perf dashboard. Test: led launch Bug: angleproject:6090 Change-Id: Ie439ed34a24ce66f4b60b947f221e4cb96cf7d25 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2997002 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
2c60b88a 2021-07-23 09:46:37 Make the trybot exclusion filter a proper regex. Bug: angleproject:6212 Change-Id: I20ca648675a5dd4773d1c3e44b251388318197f5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048854 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
646c02b9 2021-07-23 09:29:55 Update angle_assert_always_on condition. A prior CL would miss the standalone case. Bug: chromium:1227171 Change-Id: Ib1c06d0ae7eed0feb082516690b227b964de72b0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048853 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
aed52e67 2021-07-23 08:43:17 Set dcheck_always_on on every ANGLE builder. This GN argument is necessary because some build components reference it directly. Letting it be specified implicitly will caused undesired side-effects. Bug: chromium:1227171 Change-Id: Ib12cc3add58ecc8ae0360f816d30587158d756c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3048850 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
9f7a86a8 2021-07-21 14:54:03 Vulkan: SPIR-V Gen: Fix bugs with matrix ops A number of matrix operations are fixed in this change, such as matrix/scalar, ++matrix etc. This change fixes most of the failing dEQP-GLES2.* tests. The test suite will be enabled once the remaining 32 failures are fixed. Bug: angleproject:4889 Change-Id: I0905dfaeabe50716432ce354b890be35f2a16e59 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042555 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
951b04bb 2021-07-21 12:20:13 Vulkan: SPIR-V Gen: Support scalar constructors In GLSL, the scalar constructor can be given a vector and matrix, in which case the first element is selected. This case was not previously handled. Bug: angleproject:4889 Change-Id: Ibf276883fc7396b750981a4e469ff9b152c6e700 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042554 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
45d4641a 2021-07-21 10:58:29 Vulkan: SPIR-V Gen: Support tessellation shaders Bug: angleproject:4889 Change-Id: I7370e037a82689260e27bfd5e72c5c8c982efa58 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041624 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
7f199d75 2021-07-20 00:11:23 Vulkan: SPIR-V Gen: Support geometry shaders Geometry shader built-ins are implemented. A bug in DeclarePerVertexBlocks is fixed w.r.t to gl_PerVertex arrays and a new AST validation option is added to catch that sort of error. Bug: angleproject:4889 Change-Id: I40b2929e450eac8ae840bbf1a1583e6c4c047c88 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041623 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
05716b9f 2021-07-22 16:01:06 Cleanup license_text to remove missing license files The initial list of files speficied for license_text in generate_android_bp.py included license files that aren't present after issuing: git clean -f -x -d -f While the list will build correctly when rolling ANGLE locally, since roll_aosp.sh doesn't issue a 'git clean', it fails to build on the Android presubmit bots. Bug: b/191882454 Test: git clean -f -x -d -f ; m ANGLE -j50 Change-Id: I31efba1f5030b118838ba1a21501f32200c93db3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046958 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
2ec44d07 2021-07-22 14:15:03 List all license files in Android.bp Update generate_android_bp.py to list all of the license files in external/angle. Bug: b/191882454 Change-Id: Ie13fb9199c7216b5468bf91994526fdcd8552be1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3046509 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
27ccdc85 2021-07-22 13:13:45 Add Chromium perf result processing script. We will override this script in a follow-up CL to meet ANGLE's specific needs. Bug: angleproject:6090 Change-Id: I8d3a326645367e90ae79f49ef15ace700d6af106 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042213 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
20ae10c2 2021-07-22 11:46:40 Enable SwANGLE on all ozone platforms. SwANGLE should be available on all ozone platforms. This will also compile the vulkan backend. Bug: chromium:1227864 Change-Id: I4971e52f45e70fed91567c3d2f369dafe160ff4f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043626 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
b5630d5c 2021-07-19 20:39:02 Capture/Replay: Add textures to resource tracking This CL: - Shifts resource reset tracking to be stored in an array of structs indexed by type. This helps curb the complexity of adding more resource types. - Moves buffer and program tracking to the new layout. - Adds textures to the resource tracker, using new layout. Note that only aspects common to all ResourceIDTypes have been moved to the new layout. Unique pieces of data, like buffer mapping state and GLSync handling, remain in resource tracker alone. Since texture setup is quite involved, this CL takes the approach of having each call applied to two call chains at the same time; SetupReplay calls and ResetReplay calls. ResetReplay ends up with a sequence similar to buffers: ... const GLuint deleteTextures[] = { gTextureMap[1], gTextureMap[2], ... gTextureMap[n]}; glDeleteTextures(<count>, deleteTextures); ... glGenTextures(1, reinterpret_cast<GLuint *>(gReadBuffer)); UpdateTextureID(1, 0); glGenTextures(1, reinterpret_cast<GLuint *>(gReadBuffer)); UpdateTextureID(2, 0); glGenTextures(1, reinterpret_cast<GLuint *>(gReadBuffer)); UpdateTextureID(3, 0); ... glBindTexture(GL_TEXTURE_2D, gTextureMap[1]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, 9729); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_R, 33071); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, 33071); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, 33071); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC, 519); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 0); glTexImage2D(GL_TEXTURE_2D, 0, 6406, 512, 512, 0, GL_ALPHA, GL_UNSIGNED_BYTE, reinterpret_cast<const GLubyte *>(&gBinaryData[183263280])); glBindTexture(GL_TEXTURE_2D, gTextureMap[2]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, 9987); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC, 519); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, 6); glTexStorage2D(GL_TEXTURE_2D, 7, GL_COMPRESSED_SRGB8_ETC2, 64, 64); ... Test: PUBG Mobile MEC Bug: b/180418573 Bug: angleproject:6087 Change-Id: I9f8e151c12aec5b2b7af376b8e0ff644ff9c61c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3016114 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
c408926f 2021-07-22 12:00:59 Revert "EGL: GLES: Implement GL_EXT_protected_textures" This reverts commit 6210a9b34a721df2c84cf69170ad9bf7ba40e4aa. Reason for revert: Suspected for breaking ANGLE->Chrome roller. Bug: angleproject:6204 Original change's description: > EGL: GLES: Implement GL_EXT_protected_textures > > Implement EGL_EXT_protected_content Images > Add protected member to Images and Textures > Add error when creating objects if not supported or > does't match native buffer > When creating siblings pass protected state > Add extension caps > Add Validation > Add GetTexParameter and SetTextparameter > Add protected to Texture and state > Expand tests for images and textures > > Test: angle_end2end_test --gtest_filter=EGLProtectedContentTest > > Bug: angleproject:3965 > Change-Id: I35a89b4e80bba6d9b6831c68e71630eef304dacb > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2802852 > Commit-Queue: Mohan Maiya <m.maiya@samsung.com> > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Bug: angleproject:3965 Change-Id: Ia3ef260a17097b474189ccad5b235a9db99ee00b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043889 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
c5f83c34 2021-07-22 11:56:25 Revert "Vulkan: Suppress VVL errors triggered by external formats" This reverts commit f46df3978ab6102768048a6bf40e6f4989276065. Reason for revert: VVL change rolled into ANGLE + Chrome. Original change's description: > Vulkan: Suppress VVL errors triggered by external formats > > Since several tests are hitting these and it may be a VVL bug, > moving to ignore rather than skips. > > Bug: angleproject:6155 > Bug: angleproject:6168 > Change-Id: I38a5be8d792b8b13a490be895a68349bffe69c6e > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3028809 > Reviewed-by: Tim Van Patten <timvp@google.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Mohan Maiya <m.maiya@samsung.com> > Commit-Queue: Cody Northrop <cnorthrop@google.com> Bug: angleproject:6155 Bug: angleproject:6168 Change-Id: I11696095300c214ca0b68624b0eb6763ba9d31f3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043888 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
03cf7888 2021-07-22 08:32:25 Test Runner: Remove extra quotes from histograms. We were double-quoting the test names. Bug: angleproject:6090 Change-Id: I69ce089ef20068b408de7156bdbade922cdefe95 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043890 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
8ddd1807 2021-07-22 11:14:16 Roll vulkan-deps from 436e27578f75 to d85297cbd31b (10 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/436e27578f75..d85297cbd31b Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/18f3cd6810..cd22336a38 * spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/1d4e3a7e3a..cf653e4ca4 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/033768c24b..d9f8925785 * vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/33a87ce6da..a4ee3cacbb * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/194db6870e..893fc802e4 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Icd49cf0abb072acb3c9bd2c79cfef3a3f8103e23 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3045222 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
e759ff88 2021-07-22 07:02:21 Roll Chromium from f8ef6fcfb849 to 208fab302a17 (1307 revisions) https://chromium.googlesource.com/chromium/src.git/+log/f8ef6fcfb849..208fab302a17 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/fd86d60f33..488aac0b88 * buildtools/linux64: git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b..git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b * buildtools/mac: git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b..git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/7d5c92f6cf..e8bf577fbf * buildtools/win: git_revision:b2d77ab1373192d1532af94b68fb8bab727b0e5b..git_revision:d565aa3e72dd9e81da9595ee8c9d7b24cb45c48b * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f619f21d40..8c3404999d * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/8c49b419c2..0ab40df9d1 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..9ac1fdf373 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/c81b8b948f..131233f789 * tools/luci-go: git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756..git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d * tools/luci-go: git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756..git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d * tools/luci-go: git_revision:175b811c1eebfa8868ab96b58a4dc7b5bcabf756..git_revision:9ee8b1d719c0d3c268e0e19282351ca78024af2d * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/df951e112c..2db94c0aa3 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/49df801dea..4682254401 * tools/skia_goldctl/linux: up6EUcZzuFZnm2JCEV1eW0TwCEAZjPcqtS2CsZN-3qAC..4iy6PO3bO0fujafbQ4I4eWhD8ErkBKf5xAnGzPrziIUC * tools/skia_goldctl/mac: eR_S1Urlw9be4WKiQcXwEcBn9KiDrWknodT82I6vw-kC.._9rtsnZzHBJ4851DtK33jnz7UzMZ77SqJ9sYpciBwiMC * tools/skia_goldctl/win: pLY1rCmGsL8vtV0wWxgqY3sOWkwIxuRh6PMIn_0BDcAC..NsVk6Er035r7JVK4foqbqAksO65XEzgIT9Bjwf0Q1q0C No update to Clang. Bug: angleproject:6090,angleproject:6198 Tbr: jmadill@google.com Change-Id: I30e0cc2e8d8820cca7abb589a35cbca09d325a30 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3045218 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
0e1c90cf 2021-07-21 10:24:26 Translator: Validate function parameter qualifiers This change cleans up a confusion in EvqConst and EvqConstReadOnly, where the former was frequently used instead of the latter for function parameters. The change makes the following renames to make the intent of the relevant qualifiers clearer: EvqIn -> EvqParamIn EvqOut -> EvqParamOut EvqInOut -> EvqParamInOut EvqConstReadOnly -> EvqParamConst Bug: angleproject:4889 Change-Id: Idedd32c08a91de069b91b1657d6b783dddece04a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041622 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
6e261453 2021-07-20 22:34:33 Vulkan: SPIR-V Gen: Fix I/O block arrays Since the qualifier on intermediate nodes are EvqTemporary, the code that autodeduced the block storage of I/O blocks was incorrectly assigning them std140 when an indexed I/O block array was encountered. This resulted in duplicate types in the SPIR-V. This is generally benign (other than creating an unnecessary type) except for gl_PerVertex as it adds BuiltIn decorations. gl_PerVertex may be an array in geometry and tessellation shaders. Bug: angleproject:4889 Change-Id: Iaa8e414ae01a4be127dc52df0e9406546b23d24c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041621 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
d6a7b017 2021-07-21 12:24:52 Roll vulkan-deps from a42815069bad to 436e27578f75 (16 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/a42815069bad..436e27578f75 Changed dependencies: * spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/e51630595f..18f3cd6810 * spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/f084bcfe2b..033768c24b * vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/0193e158bc..872fa25bb6 * vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/99c0b1433a..a0c69f0d3a * vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/d444097efd..194db6870e If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: I802bb8f42ef0c62d8f17b47b6652b22c0d498541 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043744 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
8a737c5d 2021-07-21 16:38:05 Capture/Replay: Update unpack state in Shared MEC The shared context state MEC performed by CaptureSharedContextMidExecutionSetup() needs to include updating the pixel unpack state before capturing texture contents. Otherwise, computeRowPitch() will compute the wrong value, leading to a crash in memcpy() when capturing Pokemon GO. Bug: angleproject:6203 Change-Id: Id1b2d0b4f3bc79e615778ba513f50aabaeb4a56e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3044356 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
f8d277e4 2021-07-21 15:14:16 Document the need for is_component_build = false Setting `is_component_build = false` in the GN args is highly recommended for standalone builds on Windows, to support the common practice of moving libEGL.dll and libGLESv2.dll to an application's directory. It makes them self-contained instead of depending on other DLLs (like e.g. ext-ms-win-kernel32-sidebyside-l1-1-0.dll). One notable exception is that the non-component build still depends on d3dcompiler_47.dll, if the Direct3D backend is being used. Bug: angleproject:6202 Change-Id: Id13e902d3169b37ec00a8065d9063ec7d683134b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3042543 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@google.com>
1a4ac82a 2021-07-21 09:39:46 Vulkan: Disable border color on SwiftShader. A bug with floating point clamping is breaking some tests on SwS. Bug: angleproject:6200 Change-Id: Id608f5610a09e85f1bc41e38f20c6f7f0330f77b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3041741 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
b129170f 2021-07-21 10:01:02 Roll SwiftShader from 7a7993b54e62 to 915947134128 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/7a7993b54e62..915947134128 2021-07-20 mail@eliasnaur.com Add missing dependency for LLVM 10 CMake builds If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: jmadill@google.com Change-Id: Icfed951a2265a1759554ad67685e26e7bd977b2b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3043778 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
f9dbd4ef 2021-03-29 16:31:26 Vulkan: Add Validation checks in FramebufferTextureEXT This change makes FramebufferTextureEXT set a validation error if <level> is not a supported texture level. This change also makes FramebufferTextureEXT set a validation error if <texture> is the name of a buffer texture. Test: KHR-GLES32.core.geometry_shader.layered_fbo.fb_texture_invalid_level_number Test: KHR-GLES32.core.geometry_shader.layered_fbo.fb_texture_argument_refers_to_buffer_texture Bug: angleproject:5579 Change-Id: Iedba8adc8faec02822374c3c1862b7abd031fcc2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2796152 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
e9decf0c 2021-07-19 14:29:21 Vulkan: SPIR-V Gen: Support framebuffer fetch Bug: angleproject:4889 Change-Id: Ia75b45b5d0f6cb3b6ca8a8f8a987bb857e45ad33 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040120 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
a3df80ea 2021-07-19 17:15:13 Translator: Validate AST consistency w.r.t function calls This ensures that tree transformations don't create invalid function calls. Additionally, it's validated that no raw function calls are issued, as that's deprecated. Bug: angleproject:4889 Change-Id: Iabbb493dcc0a5654bbb5f930e402bf3492c89979 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040119 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
05eb0a32 2021-07-19 16:14:34 Translator: Allow subpassLoad in AST in ESSL subpassLoad is available to desktop GLSL, but not GLSL ES. With this change, subpassLoad is made available internally to the AST so that framebuffer fetch's use of this built-in can be simplified. Additionally, this makes the tree more consistent in that there's no function call without a corresponding function declaration. A follow up change will add an AST validation to enforce this. Bug: angleproject:4889 Bug: angleproject:5454 Change-Id: I3fa502dc4b29eab7f34940466e283cffd218d746 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040118 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
6210a9b3 2021-03-25 15:43:06 EGL: GLES: Implement GL_EXT_protected_textures Implement EGL_EXT_protected_content Images Add protected member to Images and Textures Add error when creating objects if not supported or does't match native buffer When creating siblings pass protected state Add extension caps Add Validation Add GetTexParameter and SetTextparameter Add protected to Texture and state Expand tests for images and textures Test: angle_end2end_test --gtest_filter=EGLProtectedContentTest Bug: angleproject:3965 Change-Id: I35a89b4e80bba6d9b6831c68e71630eef304dacb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2802852 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
d2b659f9 2021-03-25 15:40:58 EGL: implement EGL_EXT_protected_content Context Add Validation check to Contexts and Surfaces Add Vulkan protected memory features and properties Add protected member to Surfaces and Contexts Implement hasProtectedContent in Vulkan Add QueueFamily helper, extent DeviceQueueMap Protected Swapchains always on for Android Add EGLProtectedContentTest Test: angle_end2end_test --gtest_filter=EGLProtectedContentTest Bug: angleproject:3965 Change-Id: I9352b1e594f71bb4e89cee7137a468940d186b1b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2800413 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
a8807cbf 2021-07-17 00:00:27 Vulkan: SPIR-V Gen: Support interpolateAt* The interpolateAt* builtins take their first argument as a pointer, so only the OpAccessChain result should be given to the corresponding SPIR-V instruction. A test is written in this change to handle interpolateAt* when given a swizzled lvalue, which is not representable in SPIR-V. This can be supported by having the AST transform: interpolateAtX(value.zy) to: interpolateAtX(value).zy which can be done right when the function is parsed and the AST node for it is created (by taking the swizzle out of the parameter and applying it to the node). However, swizzled lvalues as parameter to interpolateAt* is only allowed in desktop GLSL, and so the test is disabled. From the GLSL ES3.2 spec: > Component selection operators (e.g. .xy) may not be used when > specifying interpolant. Bug: angleproject:4889 Change-Id: I043969f22011e6171c7ae225ded3a5013e8cfa4e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3035588 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
fd0579ac 2021-07-20 09:46:27 trigger.py: Add -realm to swarming args. This should fix recent permissions changes. Bug: chromium:1231092 Change-Id: Ie9b39449c861f3ab774334c4d392d1700c638ea9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040565 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Andrii Shyshkalov <tandrii@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
7108f83c 2021-07-20 13:16:44 GCC: Remove double declaration of ContextSet After the CL https://chromium-review.googlesource.com/c/angle/angle/+/2965780 the build with GCC failed with error: /third_party/angle/src/libANGLE/Display.h:325:37: error: declaration of 'typedef class std::__1::set<gl::Context*> egl::Display::ContextSet' changes meaning of 'ContextSet' [-fpermissive] /third_party/angle/src/libANGLE/Display.h:75:7: note: 'ContextSet' declared here as 'using ContextSet = class std::__1::set<gl::Context*>' To fix the error the double declaration of ContextSet is removed. Bug: angleproject:5878, chromium:819294 Change-Id: Id9e52061af53ea18dd5d13b960daaa67a14f61ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3038804 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
e635f6c2 2021-07-20 08:41:07 Add -Wno-implicit-fallthrough to GLES 1 CTS. Bug: angleproject:6198 Bug: chromium:995993 Change-Id: Ib8eb640d567c63d85645f64cc870a286227fb9c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040160 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
afda22b0 2021-07-19 16:46:50 Define ANGLE_IS_64_BIT_CPU in common/platform.h. This is more reliable and reduces reliance on build flags. Vendoring into Firefox, it's not trivial to replicate build flags, but C++-native checks always work. Bug: angleproject:6186 Change-Id: Idafd4ef1954efbfa79eae86cddfaa8f2e3992296 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3036589 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>