Log

Author Commit Date CI Message
Manh Nguyen 505b6eb1 2020-06-04T09:11:21 Allow line formats to pass description body's line length check 1. Lines starting with 4 spaces will not be checked for line length 2. Lines with no space in it will not be checked for line length Bug: angleproject:4683 Change-Id: Ic648b8b1084762da208d89ee5fbff2b02b69cf12 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2230899 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Manh Nguyen <nguyenmh@google.com>
Michael Spang 0117ba26 2020-06-03T17:44:39 Re-enable ShouldClearOpaqueFdRGBA8 on Pixel2 Vulkan Bug: angleproject:4630 Change-Id: Ib1e7ecd9bedf6841489f7fb5bba9cae8881aa33e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2229067 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Xiaoxuan Liu 3afad5b7 2020-05-26T16:45:44 Vulkan: Cleanup unused variable in submitFrame() Bug: angleproject:2046 Change-Id: I9cc7c2cbb0bf9535885cc909a046d36691b8fcc8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2230385 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll cabedcaf 2020-06-04T07:01:21 Roll glslang from 78a3c915a1d7 to 232ba0d848d1 (1 revision) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/78a3c915a1d7..232ba0d848d1 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 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 Bug: None Tbr: ynovikov@google.com Change-Id: I9c37a9d48a9f601dadbd891ae09f28c9d3110375 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2230298 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 23d4caea 2020-06-04T07:02:08 Roll Vulkan-ValidationLayers from d43f5107400d to 4685ffce93ad (5 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/d43f5107400d..4685ffce93ad 2020-06-03 tony@lunarg.com tests: Test push descriptor image layout validation 2020-06-03 tony@lunarg.com layers: Allow validation of push descriptors 2020-06-03 s.fricke@samsung.com layers: Label and fix Maintenance1 VUs 2020-06-03 mark@lunarg.com practices: Avoid null pApplicationInfo deref 2020-06-03 christophe@lunarg.com docs: Fix link to LAYER_CONFIGURATION.md, issue #1902 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-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 Bug: None Tbr: ynovikov@google.com Change-Id: Id57b5dd011dca2cb2950187f1894cb0255c676d8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2230358 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 6cd99a0c 2020-06-04T07:01:58 Roll SwiftShader from 3ad285a60d82 to 0711869b5f20 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/3ad285a60d82..0711869b5f20 2020-06-04 ari.suonpaa@siru.fi Add Z mirroring support for image blit. 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 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 Bug: None Tbr: ynovikov@google.com Change-Id: I01a30c9a29e11f19b6b146a57221fcd20258f3a2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2230338 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shahbaz Youssefi 989c790d 2020-06-03T14:32:43 Remove workaround for fixed compiler bug Bug: chromium:951458 Change-Id: If55b10fb2db12fe37b9475d78266b7e6b92fcca7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2227816 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi fabecfa7 2020-06-03T14:29:07 Update and de-duplicate expectations file format comment Bug: angleproject:4675 Change-Id: Ieff7a4eae22a6d802c1fca6010cb74627d6e5777 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2227815 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Maksim Sisov 8ba5cf99 2020-05-28T13:57:07 Add EGL_PLATFORM_ANGLE_NATIVE_PLATFORM_TYPE_ANGLE This CL adds a new attribute that helps to identify lower platform angle should use. We identified several different use cases that ANGLE must comply with when choose a display implementation. Please refer to the Support Matrix for EGL_ANGLE_platform_angle table Bug: chromium:1084458 Change-Id: I6ea3d5081012ddf450f1c641343d1ba1a673483b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2210151 Commit-Queue: Michael Spang <spang@chromium.org> Reviewed-by: Michael Spang <spang@chromium.org>
Jamie Madill 98865915 2020-06-02T14:56:24 No-op incomplete framebuffer invalidation. It's always legal in GL to no-op framebuffer invalidation. When the FBO is incomplete we can't pull RTs safely so no-oping incomplete invalidate calls saves us from fuzzer bugs and crashes. Bug: angleproject:3971 Change-Id: Ide550a22e6c17a28e5042165831dd684567d81fe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2227038 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Kenneth Russell 3ecaa283 2020-05-22T13:52:41 Fix validation of PVRTC compressed texture sizes. The PVRTC format, as pointed out by Le Hoang Quyen and Geoff Lang, uses 4x4 or 8x4 blocks, but due to sampling from adjacent blocks, requires a minimum size of 2x2 blocks per the OpenGL extension: https://www.khronos.org/registry/OpenGL/extensions/IMG/IMG_texture_compression_pvrtc.txt . Thanks to Quyen and Geoff for pointing out the intricacies. Add a helper function to formatutils.cpp which returns the minimum number of blocks (width and height) for a given compressed texture format, and incorporate this into the compressed texture size computation. This patch makes WebKit on ANGLE pass WebGL's PVRTC compressed texture test on iOS hardware. Bug: angleproject:4652 No-Presubmit: True Change-Id: I1046a091321b7948d712d16686ee0cb8795b8c99 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2213676 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang f2d4abb2 2020-05-25T16:10:07 Vulkan: Correct the viewport before intersecting it with the scissor. Eliminate the potential for integer overflow when clippling a large viewport rectangle by first limiting it to the Vulkan viewport size limits. BUG=chromium:1078378 Change-Id: I2648c6136d2d27d67a3fc5dae2de821279d70d81 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2215308 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi b131d25f 2020-06-03T10:53:39 Vulkan: Remove validation error suppressions for VVL bug These warnings were generated due to a validation layer bug, which is presumably fixed now. Bug: angleproject:4572 Bug: angleproject:4577 Bug: angleproject:4578 Bug: angleproject:4579 Bug: angleproject:4580 Bug: angleproject:4583 Change-Id: I8799c4e33bc38f83e0fdd364cf6e7eb607c39890 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2227810 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 8f3aa154 2020-06-03T10:29:21 Vulkan: Remove validation error suppression for fixed issue Bug: angleproject:3450 Change-Id: Ie88aedae6e4573b2c31e389f7d0ff5c8d1059647 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2227856 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Ian Elliott 11d7b952 2020-06-02T16:58:26 Vulkan: Pre-rotate dFdx() & dFdy() for Android Test: angle_deqp_gles3_tests --gtest_filter=dEQP.GLES3/functional_shaders_derivate Test: angle_end2end_tests --gtest_filter=*EGLPreRotationSurfaceTest.OrientedWindow Bug: b/157476241 Change-Id: I7b60b7a33313ba91731755d289792bd0968515c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2222825 Commit-Queue: Ian Elliott <ianelliott@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Manh Nguyen ebc6d0a4 2020-05-27T18:21:30 Presubmit script to enforce commit message formatting 1. The first sentence description should be one line <= 64 characters 2. The description body should be wrapped to <= 71 characters 3. Blank lines between the description and the body, and the body and the meta-tags like Bugs Bug: angleproject:4662 Change-Id: I966c79d96175da9eee92ef6da20db50d488137b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2218696 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Manh Nguyen <nguyenmh@google.com>
angle-autoroll 78eb17fc 2020-06-03T07:01:08 Roll Vulkan-ValidationLayers from 515b4041cc32 to d43f5107400d (1 revision) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/515b4041cc32..d43f5107400d 2020-06-02 s.fricke@samsung.com layers: Add function name prefix to more logs If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-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 Bug: None Tbr: ynovikov@google.com Change-Id: Idc4deba8a183dd983de000b90a33fa240ceb9ed5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2228479 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll f46d37c5 2020-06-03T07:01:24 Roll Vulkan-Tools from 2bc4fcd9eba5 to 322784a873be (1 revision) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/2bc4fcd9eba5..322784a873be 2020-06-02 charles@lunarg.com vulkaninfo: fix indent with for present support If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-tools-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 Bug: None Tbr: ynovikov@google.com Change-Id: Ic784b5999651d0fcb3bc3846321befb54a0bbd78 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2228480 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 68282364 2020-06-03T07:01:58 Roll SwiftShader from 11dd7183c4d2 to 3ad285a60d82 (15 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/11dd7183c4d2..3ad285a60d82 2020-06-02 vantablack@google.com Added reference counting for PipelineLayout objects 2020-06-02 bclayton@google.com libVulkan: Use new marl::Scheduler::Config API. 2020-06-02 bclayton@google.com Kokoro: Test LLVM 10 backend for macos 2020-06-02 bclayton@google.com Merge changes I5eaceebc,I4d78c011,I7d01a3c8 2020-06-02 caio.oliveira@intel.com Update VkStringify for VK_EXT_subgroup_size_control 2020-06-02 caio.oliveira@intel.com Update Vulkan headers to version 1.2.141 2020-06-02 bclayton@google.com SpirvShaderDebugger: Implement Array types 2020-06-02 bclayton@google.com SpirvShaderDebugger: Replace 'builtins' / 'root' with a global scope 2020-06-02 bclayton@google.com SpirvShaderDebugger: Silence release only warning 2020-06-02 bclayton@google.com SpirvShaderDebugger: Handle None sizes for composite types 2020-06-02 bclayton@google.com SpirvShaderDebugger: Handle template types 2020-06-02 bclayton@google.com SpirvShaderDebugger: Don't display SSAs for array types 2020-06-02 bclayton@google.com SpirvShaderDebugger: Don't display SSA values with DebugInfo 2020-06-02 capn@google.com Make ManagedStatic registration thread-safe 2020-06-02 capn@google.com Regres: Test changes from external contributors if reviewed by Googler 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 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 Bug: None Tbr: ynovikov@google.com Change-Id: If4c5997f3544590234efdd860f2b776dd9c276fa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2228481 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 086a0405 2020-06-03T07:01:00 Roll SPIRV-Tools from f050cca7ec47 to 636f449e1529 (1 revision) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/f050cca7ec47..636f449e1529 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-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 Bug: None Tbr: ynovikov@google.com Change-Id: I139bc63fb64adef7de274245c9f82bcf78f6cf74 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2228478 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill 6c158164 2020-05-28T15:19:51 Vulkan: Fix XFB invalid accesses in buffer OOM. This uses the "null" buffer in the Renderer to bind an empty buffer handle so ANGLE can maintain a consistent state. Bug: chromium:1086532 Change-Id: I1912a1d1cb64433a285fcfced80a675619690a0b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219140 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Antonio Maiorano 3c4d7ab0 2020-06-01T17:14:28 Fix copy subtexture to GL_RGB9_E5 in ANGLE/VK When copying via glTexSubImage2D to a non-renderable format, GL_RGB9_E5, ANGLE's TextureVk::copySubTextureImpl will use the read-back and copy method. This path was ignoring the source offset in the source area computation. Fixes the following WebGL tests: conformance2/textures/canvas_sub_rectangle/tex-2d-rgb9_e5-rgb-float.html conformance2/textures/canvas_sub_rectangle/tex-2d-rgb9_e5-rgb-half_float.html Bug: b/157744725 Change-Id: I714f8d3b8f1490edab5e7578445e9623215ce229 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2225611 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Yuly Novikov fcd3140a 2020-06-02T14:52:34 Roll third_party/VK-GL-CTS/src/ 60972ed7f..80dc8399b (67 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS/+log/60972ed7fa8f..80dc8399b063 $ git log 60972ed7f..80dc8399b --date=short --no-merges --format='%ad %ae %s' 2018-03-16 capn Add texture specification test for GL_OES_texture_half_float. 2020-06-01 alexander.galazin Update KC CTS 2020-05-15 rgarcia Add SampleMask write tests 2020-05-29 ynovikov Fix Windows build 2019-03-08 lionel.g.landwerlin Add drm format modifiers tests 2020-05-21 piotr.byszewski Correct few pipeline_barrier tests 2020-05-22 slawomir.cygan Do not use 2D array d/s attachment created from 3D texture 2019-04-03 mika.vainola Update Android API levels and grant permissions 2020-05-18 basni Fix overflow in VK_EXT_subgroup_size_control tests. 2019-11-21 courtneygo Fix uninitialized index array 2020-02-24 jdrouan Add conformance tests for new buffer offset rules 2020-03-03 tomek.bury Improve Wayland protocol version selection. 2020-04-30 tarceri Fix broken layout binding tests 2020-05-06 gleese Remove non-compute variants of common function tests 2020-04-17 Kyle.Griffiths Allow RTZ rounding in spv_assembly*writes_two_buffers* tests 2020-05-04 alexander.galazin Update glslang 2020-05-24 alexander.galazin Force Popen to text mode 2020-05-07 alexander.galazin Ensure alphabetical order of xml attributes 2020-05-24 alexander.galazin Force Popen to text mode 2020-05-06 james.glanville Limit dimensionality of arrays-of-arrays in random SSBO tests 2020-05-07 alexander.galazin Fix Fedora 32 gcc/clang warnings 2020-05-07 alexander.galazin Fix Fedora 32 gcc/clang warnings 2019-11-18 mike.byrne Split spirv_assembly tests workload 2020-05-12 rgarcia Add --deqp-print-validation-errors cmd line option 2020-04-29 rgarcia Test using ViewportIndex from frag shaders only 2020-05-07 ari.suonpaa Test OpArrayLength with stride larger than element size 2020-05-08 bwatling Add an Amber test which uses textureOffset() 2020-05-09 ari.suonpaa Test negative value conversion to b10g11r11 float format. 2020-05-03 tarceri Fix some egl robustness tests 2020-04-28 aleksy.sokolowski Fix epsilon calculation for RGB10_A2 pixel format 2020-05-14 piotr.byszewski Fix warnings found by compiling with MS VC++ 2019 2020-05-13 piotr.byszewski Correct few tests from indirect_dispatch group 2020-05-12 piotr.byszewski Correct sparse_image_format_properties2 tests 2020-05-12 piotr.byszewski Clarify integer formats conversions in blit_image tests 2020-05-11 piotr.byszewski Correct external_memory_host tests 2020-05-11 piotr.byszewski Correct opatomic_storage_buffer_volatile tests 2020-05-15 alexander.galazin Update Vulkan headers 2020-05-13 alexander.galazin Whitelist Vulkan CTS 1.2.2.1 2020-05-07 slawomir.cygan Add missing barrier to HOST in memory_barrier test 2020-05-04 quic_mnetsch Fix wide line rasterization tests 2019-12-04 courtneygo GLES 3.1 negative framebuffer texture2D test fails 2019-12-17 courtneygo OpenGL ES: Use shader storage alignment 2019-07-31 courtneygo Remove illegal parameter use in fbo.completeness 2019-09-11 courtneygo Fix use of invalid HALF_FLOAT enum 2018-08-28 james.hauxwell Fix invalid combinations for texture/copy on ES2 driver 2019-08-28 timvp Use unsized internal format in KHR-GLES2.texture_3d.[copy_sub_image|framebuffer_texture].rgba8 2019-07-30 courtneygo Fix invalid parameter for GLES 2.0 2018-07-13 james.hauxwell Fix invalid combinations for texture/copy on ES2 driver 2019-12-20 courtneygo Migrate deRoundUp32 to deInt32.h 2020-04-22 alex.walters Non-strict line interpolation and rasterization 2020-05-01 zzyiwei Suppress -Werror=array-bounds for latest GCC 2020-03-13 rosen.zhelev Extend Android Hardware Buffer external memory format tests 2020-05-07 alexander.galazin Ensure alphabetical order of xml attributes 2020-05-07 alexander.galazin Ensure alphabetical order of xml attributes 2020-05-04 cwabbott0 fix input dependency for renderpass depth/stencil format tests 2020-04-27 slawomir.cygan Avoid exceeding maxPerStageResources in descriptor_indexing tests 2020-04-27 ari.suonpaa Split subgroupBroadcast tests 2020-04-03 rgarcia Test variableMultisampleRate with non-empty framebuffer 2020-04-29 ari.suonpaa Added a fourth batch of coverage tests found by GraphicsFuzz 2020-04-17 joshua Make ImageSamplingInstance loop over pNexts 2020-02-26 yevhenii.kolesnikov Add tests for usage of pixel storage modes 2020-04-29 luwang Fix of a build failure on QNX 2020-05-05 alexander.galazin Update SPIR-V Tools 2019-08-28 quic_mnetsch Adds geometry shader check for test 2020-04-17 james.glanville Stop 10bit formats requiring GL_SRGB encoding 2017-12-21 mnetsch Fixes pixelformat utils for RGB10_A2 2018-08-31 yabin.zheng Add specific RGB10A2 data for BlendHSLHue and BlendHSLSaturation Created with: roll-dep third_party/VK-GL-CTS/src Bug: angleproject:4675 Change-Id: Id9b92e3ce400bf2c4669be845d3f6b5a12b5886f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2227039 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Mohan Maiya e0b8c74e 2020-06-02T10:42:42 EGL: EGL_CreateSync validation bug fix EGL_CreateSync was calling into ValidateCreateSyncKHR instead of ValidateCreateSync. This ended up returning the incorrect enum for a negative test in deqp. Bug: angleproject:2466 Test: angle_deqp_egl_no_gtest.exe --deqp-case=dEQP-EGL.functional.fence_sync.invalid.create_invalid_type Change-Id: I476d533049c2499705b783293cb6bde311f48a65 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2226932 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Charlie Lao 2611f98b 2020-06-02T09:52:27 Vulkan: Add IMAGE_USE_STORAGE bit only if necessary. The VK_IMAGE_USAGE_STORAGE_BIT has negative performance impact. Right now we needed for overlay widgets. This CL will only add the bit if we actually have widget enabled. Bug: b/157774833 Change-Id: I3027df886c9b34ccfd667152fa4fb090dfadb45b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2225810 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Ian Elliott 1df70f03 2020-06-01T16:32:41 Vulkan: Swap RenderArea coords for pre-rotation Fixes Vulkan validation-layer errors. Found by dEQP tests that use small viewports and/or scissors (see Buganizer bugs for details). Bug: angleproject:4431 Bug: b/157933235 Bug: b/157933198 Change-Id: I83966906d70c30a4b50209cf1a33649bf69e3dd8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2225607 Commit-Queue: Ian Elliott <ianelliott@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Le Hoang Quyen ab372311 2020-05-14T23:27:06 Metal: refactor RenderUtils to split into multiple util classes. This is useful for later modifications where blit/clear could be further categorized based on texture format type (float/integer). Bug: angleproject:2634 Change-Id: I877abd21761af9e91657686a60e189a43a33e3f4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2193195 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 957a2359 2020-06-02T11:09:18 Skip VulkanBarriersPerfBenchmark on NV/Win. This test is failing because our out-of-date Windows 7 NV bots can't create a GLES 3.0 context. Skip this test until the machines are updated. Also updates our wrapper classes to check for an empty handle before calling delete. Prevents a crash trying to call null functions. Bug: chromium:1090139 Change-Id: I0bb58f8bd167691cd241fb0df30cdf4b2f6adf5b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2225447 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll aab54fd0 2020-06-02T07:01:58 Roll SwiftShader from 471c120ac92a to 11dd7183c4d2 (2 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/471c120ac92a..11dd7183c4d2 2020-06-01 capn@google.com Remove generation of OpenCLDebugInfo100.h 2020-06-01 capn@google.com Fix deallocation of uninitialized pointer 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 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 Bug: None Tbr: ynovikov@google.com Change-Id: I72b05c53434de57fc3110de155ec9cbf922809ff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2226132 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll b194892f 2020-06-02T07:01:02 Roll Vulkan-Headers from 09531f27933b to db1a98c6cc43 (1 revision) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/09531f27933b..db1a98c6cc43 2020-06-01 oddhack@sonic.net Update for Vulkan-Docs 1.2.142 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-headers-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 Change-Id: I2856b05ceecc2f233869621e243b4b11e72acccb Bug: None Tbr: ynovikov@google.com Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2226131 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 6cf10840 2020-06-02T07:01:21 Roll glslang from d39b8afc47a1 to 78a3c915a1d7 (6 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/d39b8afc47a1..78a3c915a1d7 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 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 Bug: None Tbr: ynovikov@google.com Change-Id: I8acf30345c583a0512cf9c7016df8239559518cb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2226130 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll f8cc88b1 2020-06-02T07:01:08 Roll Vulkan-ValidationLayers from 500f77901f6d to 515b4041cc32 (4 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/500f77901f6d..515b4041cc32 2020-06-01 mark@lunarg.com chassis: Address non-const refs 2020-06-01 mark@lunarg.com chassis: Properly use vk_safe_struct.cpp without including it 2020-06-01 mark@lunarg.com chassis: Factor out some common parsing functions 2020-06-01 mark@lunarg.com chassis: Load default callbacks earlier in CreateInstance If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-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 Bug: None Tbr: ynovikov@google.com Change-Id: If51ab028be0cf0b3da9f8917676a6800322589fc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2226129 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jiajie Hu 77e5316a 2020-05-28T02:00:29 Pull in Android-only dependencies behind a condition In crrev.com/c/1866080, catapult and android_ndk were added for supporting standalone Android builds, which increased ANGLE's fresh checkout time and disk occupation a lot. For ANGLE embedders, this can be mitigated by putting them behind a condition, where checkout_android is a builtin variable controlled by target_os in the .gclient file. For standalone builds on Linux, Android will be added to target_os by default for compatibility with previous behavior. Bug: None Change-Id: I0b258c6fc7f62ca65e705b8c31c9ace5dffd4030 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2216709 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jiajie Hu <jiajie.hu@intel.com>
Charlie Lao 5891b091 2020-06-01T11:24:37 Vulkan: acquire swapchain image should use COLOR_ATTACHMENT_OUTPUT_BIT The mAcquireImageSemaphore is for achieving the maximum overlap between display engine and rendering engine. We should only need to block when we write to the swapchain image. Work that doesn't touch the visible buffer can proceed. Bug: b/157916459 Change-Id: Ic9a9a1f2a7648ef7f50f99578a0f0d674ae5e66c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2223826 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Antonio Maiorano 1e9097f5 2020-05-29T11:58:10 Enable CopyTextureVariationsTest.CopyTexture on VK These do not fail on SwiftShaderVK. Root problem was fixed at some point so we can re-enable these. Bug: angleproject:4092 Change-Id: I8a0e03eaf438b61d31a2c6461e581445d0378645 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2221424 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Jamie Madill 93577b20 2020-05-28T15:16:46 Vulkan: Move "null" buffer to RendererVk. This will allow the TransformFeedback and other classes to share the same buffer. Also should save a bit of memory. Bug: chromium:1086532 Change-Id: I198170b4e09165a4770b68af6df9aa7b690e8d66 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219138 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Le Hoang Quyen 5e13757b 2020-05-11T00:50:00 Metal: Fix array of structs containing array of samplers bug. Previously ProgramMtl could try to bind fixed slots to samplers based on layout (set=..., binding=...). However, GLSL layout model is different from Metal slots assignment. For example, The following is valid layout in GLSL: - array samplers A[2] is bound to index 0. - array samplers B[2] is bound to index 1. It is invalid to do so in Metal, since A occupies 2 slots, thus samplers B[2] must be bound to slots starting from 2. New binding method: let spirv-cross auto assigns the texture slots and retrieve them after compilation. Incomplete textures moved to ContextMtl using IncompleteTextureSet. New test added: GLSLTest.ArrayOfStructContainingArrayOfSamplers. Bug: angleproject:2634 Change-Id: Ib0edaaf8b20512e1272c37c1d4b16a88a5b35e75 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2193193 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Maksim Sisov 4b2a9cbc 2020-05-21T08:57:02 move duplicated SwapControlData to rendergl_utils. Both DisplayOzone and DisplayGLX have SwapControlData declared and defined. In the future, when both of them will be compiled (DisplayGLX will be required for Ozone/X11), they will result in a compilation error stating about multiple definitions of the struct. Thus, move that rendergl_utils. Bug: chromium:1084458 Change-Id: Ib174d0e8de1ac4773c841fe286175358acb15d79 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2210702 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 6169aca6 2020-06-01T10:45:17 Update dirty bits flow example. Had an incorrect label for the gl::Context and was missing a few edges for new connections. Bug: None Change-Id: I037551f8f0a6559b9c522ae192b1cd93edf9bcf0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2223815 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Philip Lamoureux 9515707b 2020-05-29T11:23:44 Move ShaderVariable utility function from utilities.cpp ShaderVars.cpp. Fixes an implied dependency cycle between translator and angle_common. This will also allow us to be more strict about declaring dependencies on GLSLANG headers. Tested by building and running angle_unit_tests on Linux. Bug: angleproject:4672 Change-Id: I331230d2cf179ccea140ee7a0d5a3c8768c58cb1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2222682 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Mohan Maiya b3693762 2020-05-22T14:44:48 Vulkan: Enhance VulkanBarriersPerfBenchmark 1. Request a GLES3.0 context 2. Create 2 uniform buffers to be used in the new test case 3. Increase the size of the viewport 4. Add a new test case where we issue draw and buffer copy commands. The expectation is that the draw to FBO and the copy between the 2 buffers happen in parallel. Bug: angleproject:4633 Test: angle_perftest --gtest_filter=VulkanBarriersPerfBenchmark.Run/vulkan_buffer_copy Change-Id: I3c5d287c05451f77053962371a96e2de6a8ea00d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2215139 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 2f2595a8 2020-06-01T08:16:09 Roll SPIRV-Tools from 8dfdbeff84f3 to f050cca7ec47 (1 revision) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/8dfdbeff84f3..f050cca7ec47 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-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 Bug: None Tbr: ynovikov@google.com Change-Id: I682a6e599541cc32ff7cbd7d6f509683fef0f598 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2224899 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 6d4675a6 2020-06-01T07:01:13 Roll Vulkan-ValidationLayers from 3c5bad0911e3 to 500f77901f6d (9 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/3c5bad0911e3..500f77901f6d 2020-05-29 s.fricke@samsung.com tests: Add extra VK_EXT_sample_location test 2020-05-29 s.fricke@samsung.com layers: Fix VK_EXT_sample_locations bug 2020-05-29 mark@lunarg.com tests: Added test for VUID-VkFBCreateInfo-pAttachments-00891 2020-05-29 mark@lunarg.com corechecks: Add FB check for depth-stencil 3D image/imageviews 2020-05-29 s.fricke@samsung.com tests: Add VUID 02840 2020-05-29 s.fricke@samsung.com layers: Add VUID 02840 2020-05-29 mark@lunarg.com layers: Clean up some variable name formatting issues 2020-05-29 souravp@nvidia.com tests: Implement test for raytracing VUIDs 2020-05-29 souravp@nvidia.com layers: Raytracing VUIDs If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-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 Bug: None Tbr: ynovikov@google.com Change-Id: I1fce9cae0dcf5c96713b70833dee2c02aab9ae47 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2224610 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Cody Northrop 48102b2b 2020-05-29T10:28:18 Perf: Add Candy Crush trace TBR: jmadill@chromium.org,nguyenmh@google.com,tobine@google.com Test: angle_perftest --gtest_filter="*candy*" Bug: b/150458396 Change-Id: I79c86b8d111ef55528da2ec5f0ac3a39428a1667 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2223658 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop b59db10a 2020-05-28T16:24:11 Perf: Add Subway Surfer trace TBR: jmadill@chromium.org,nguyenmh@google.com,tobine@google.com Test: angle_perftests --gtest_filter="*Trace*" Bug: b/150458446 Change-Id: Ie47dfa7208db0fb1f2449b758df9d2b73bbfe974 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2220766 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Cody Northrop 860af7a2 2020-05-29T15:34:27 Capture/Replay: Use aligned offsets for binary data Traces that populate data by reading from unaligned memory addresses can crash. This CL ensures each offset is 16-byte aligned. TBR: jmadill@chromium.org,nguyenmh@google.com Test: angle_perftests --gtest_filter="*Trace*" Bug: b/150458446 Change-Id: I721999426772fa2f94fe39600d330a15eacc2794 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2222847 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Jamie Madill b947498b 2020-05-28T13:06:13 Vulkan: Clean up VMA wrapper classes. Make these more consistent with the rest of the wrapper classes. Also handle some VkResult errors that were being ignored. Will pave the way for better handling of buffer allocation error conditions. Bug: chromium:1086532 Change-Id: Idc5b3f0e2945b1f44f152d33e8cc572f83a6b658 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219136 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Mohan Maiya <m.maiya@samsung.com>
Jamie Madill 558882a1 2020-05-28T15:26:37 Vulkan: Pass vk::Context to BufferHelper::init. This is necessary so we can initialize a "null" BufferHelper in RendererVk which does not have access to the ContextVk. This in turn will allow us to use a single global "null" Buffer instead of instantiating them all over ANGLE. Also removes a TODO that was sticking in the code. Bug: angleproject:2162 Bug: chromium:1086532 Change-Id: Ica48d5b886e885ebfe0f8e3abfbe8169a8eaa5b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219139 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Le Hoang Quyen c0c938af 2020-05-11T00:50:00 Metal: draw 1 triangle instead of 2 for fullscreen shaders. Reference article in favour of one big triangle instead of 2: https://michaldrobot.com/2014/04/01/gcn-execution-patterns-in-full-screen-passes/ According to this article, the performance could be increased by ~10% for fullscreen shaders. Bug: angleproject:2634 Change-Id: Ia5b04c40f0587e3cb8680c0f30f7b68d9d7a3efe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2193192 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 8470b533 2020-05-28T15:14:38 Set gl::Buffer to zero size when allocations fail. It's undefined what happens if we run into OOM errors when allocating new resources. To guard against fuzzer issues we can set the buffer size internally to zero when an allocation fails. This should prevent GL APIs from reading from the buffer when the contents are internally inconsistent. Bug: chromium:1086532 Change-Id: I9ac4becf977bf0521208b2220caba788c21c93f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219137 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Le Hoang Quyen 3c00eee2 2020-05-11T00:50:00 Metal: Use bit fields for state descriptor caching. This reduces size of state descriptors and increase hashing performance. Bug: angleproject:2634 Change-Id: Ida1a17a4fb30a053dafc82a3f7501b448e16e818 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2192570 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Le Hoang Quyen 3e1e1087 2020-05-11T00:50:00 Metal: Use 2d array for caching index conversion's pipeline state. For index conversion utils, use 2d array for caching compute pipeline state based on DrawElementsType & source offset is aligned or not, instead of using std::map as previously. Also moved default shader's initialization to DisplayMtl. New test added: IndexBufferOffsetTest.DrawAtDifferentOffsetAlignments Bug: angleproject:2634 Change-Id: I1bd77aca88e03229ef8053e32add66733e33b06e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2192569 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Antonio Maiorano 9905f7f5 2020-05-29T11:25:33 Fix CopyTextureTestES3.ES3FloatFormats for VK When enabled, this would crash in debug because mFormat would be nullptr on the target VkTexture, and the ASSERT would access mFormat via getAspectFlags(). Fixed this by only calling getAspectFlags() if mFormat is valid. I'm not sure this was the original reason this test was disabled, but they pass now on SwiftShader. Bug: angleproject:4092 Change-Id: I9b04bbc61dde14f722d3a510f3d38776f4f6c7ac Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2221420 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Maksim Sisov 56a4cc12 2020-05-21T13:17:21 Rename DisplayOzone to DisplayGbm. DisplayOzone doesn't really have anything related to Ozone. Instead, it's the gbm platform that is used there. Thus, rename it to DisplayGbm. Bug: chromium:1084458 Change-Id: I4d974f6afbf0daa28fc3e83943b35814dca203fd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2211763 Reviewed-by: Michael Spang <spang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Ian Elliott 9bb7dd8a 2020-05-28T14:55:06 Create a pre-rotation test for dFdx() & dFdy() This end2end test makes it easier to create/debug pre-rotation support for dFdx() & dFdy(). Bug: b/157476241 Change-Id: I6e6cc3a86c84d252a326a776d6b589662b08d1ec Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2220311 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Ian Elliott <ianelliott@google.com>
Cody Northrop 6185d42e 2020-05-28T15:12:09 Capture/Replay: Update MEC for Subway Surfer Implement some missing entry points, including sync objects. Bug: b/150458446 Bug: angleproject:3662 Change-Id: I0e9e7926e1a13bd9b0e83900ea19d2fbef9a284f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2220312 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Antonio Maiorano 98496cab 2020-05-28T15:02:43 Fix float to int copy in VK backend This fixes WebGL tests on Vulkan (e.g. SwiftShaderVK) that copy from the canvas (GL_RGBA8) to an integer format target texture, such as: conformance2/textures/canvas_sub_rectangle/tex-2d-rg8ui-rg_integer-unsigned_byte.html The sampled normalized value needs to be scaled up by 255. Also fixes angle_end2end test CopyTextureTestES3.ES3UintFormats on Vulkan. Bug: b/156399229 Bug: angleproject:4092 Change-Id: I18d46bc4453fdc500caca96ca3a12fe93290b10c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219142 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Antonio Maiorano <amaiorano@google.com>
angle-autoroll 82848585 2020-05-29T07:01:55 Roll SwiftShader from 9e718f962f87 to 471c120ac92a (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/9e718f962f87..471c120ac92a 2020-05-28 capn@google.com Don't inline rr::Variable methods 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 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 Bug: None Tbr: ynovikov@google.com Change-Id: Ife0c3c9de12c3b5a61ea84d7994c671e7b087367 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2222138 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 666ee1e3 2020-05-29T07:01:08 Roll glslang from e00d27c6d65b to d39b8afc47a1 (2 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/e00d27c6d65b..d39b8afc47a1 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 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 Bug: None Tbr: ynovikov@google.com Change-Id: I48817820afa29f47dd84fa20c85eb2e2215e0e15 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2222136 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll b41baa41 2020-05-29T07:01:11 Roll Vulkan-ValidationLayers from afe55126be2d to 3c5bad0911e3 (2 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/afe55126be2d..3c5bad0911e3 2020-05-28 shannon@lunarg.com build: Update known-good file for 1.2.141 SDK 2020-05-28 s.fricke@samsung.com layers: Label BindBuffer2 VUIDs If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-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 Bug: None Tbr: ynovikov@google.com Change-Id: Idbd085bbfc87bb5163e9fddb40be5f38caf1e80a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2222137 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov 33004b09 2020-05-28T17:22:39 Roll VVL and Headers to v1.2.141 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/424cdd54fe80..afe55126be2d 2020-05-27 shannon@lunarg.com build: Update known-good files for 1.2.141 header 2020-05-27 s.fricke@samsung.com layers: Label 01720 and 01721 2020-05-27 s.fricke@samsung.com layers: Remove CB device tracking 2020-05-27 tony@lunarg.com layers: Temp removal of check for border color feature 2020-05-27 s.fricke@samsung.com layers: Label BindMemory2 VUIDs https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/4c19ae6b95e4..09531f27933b 2020-05-15 oddhack@sonic.net Update for Vulkan-Docs 1.2.141 2020-05-04 devrel@oddhack.org Remove advanced notice of header change 2020-05-04 oddhack@sonic.net Update for Vulkan-Docs 1.2.140 Bug: None Change-Id: I1fa6b821c2b704457a92b0c744a97e546fc5ef81 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2220527 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Charlie Lao 29bb612e 2020-05-28T10:32:26 Add egl::ShareGroup class to abstract the share context group Vulkan backend has a barrier tracker that tracks memory barrier needs of all shared resources. Because the buffer/texture objects are shared resources within a shared group, the tracker can not live in a context. Putting it in a device/renderer requires locks. It fits perfectly in a shareGroup object. The work is already done at API level to handle the mutex lock for shared context access so that no extra lock needs to be taken in the backend. This CL adds egl::ShareGroup class that represents the object that are shared among all share context group. At the front end this usually will include all the shared resource managers (not done in this CL). The ShareGroup object is accessible from gl::State object. This CL also adds ability for backend driver to allocate implementation specific ShareGroupImpl object. Vulkan backend will then use it to keeps the barrier tracker and other things that naturally fits the share group concept. Bug: angleproject:4664 Change-Id: Ifcd975cbdf5130022e21c41397894afc28f572e7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2217252 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Ethan Lee 209cf8fa 2020-05-27T16:23:57 GGP: Check and enable VK_GGP_frame_token Bug: angleproject:4668 Change-Id: I9ecbdf37e206cb6eb93699091bbff70ad898040f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219032 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jonah Ryan-Davis 2383f344 2020-05-28T12:32:21 Port disable_timestamp_queries GPU workaround to ANGLE There is a driver bug in VMWare drivers related to timer queries. This driver is already disabled in Chrome, this CL ports the workaround to ANGLE. Bug: chromium:1075876 Bug: chromium:811661 Change-Id: I87ab28b803191884658d0c1ad4bfdfdd1b727fd0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219420 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Ian Elliott 4d7a3993 2020-05-27T14:08:20 Vulkan: Rotate gl_PointCoord for Android pre-rotation This extends the current y-flip that's done for gl_PointCoord. Now, gl_PointCoord is rotated and then flips both the x and y-axis (similar to gl_FragCoord). The tests used to reproduce the problem and the fix are: angle_deqp_gles2_tests --local-output --gtest_filter=dEQP.GLES2/functional_shaders_builtin_variable_pointcoord* --use-angle=vulkan angle_end2end_tests --local-output --gtest_filter=*GLSLTest.PointCoordConsistency*Vulkan* Bug: b/157476696 Change-Id: Iada8680eda8322f7382ff242e4a9422a66114f07 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2216700 Commit-Queue: Ian Elliott <ianelliott@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 0652d0d6 2020-05-27T12:59:20 Fix non-existent required dependency TARGET module ANGLE has non-existent required: privapp_whitelist_com.android.angle Bug: b/7456955 Test: TH presubmit Change-Id: I828f154d2ff8126de8383ef56216436c29677729 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2218687 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll f7a7fb49 2020-05-28T07:01:07 Roll glslang from 2b0eafb1de5b to e00d27c6d65b (2 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/2b0eafb1de5b..e00d27c6d65b 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 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 Bug: None Tbr: ynovikov@google.com Change-Id: Ie6b4be8440e36975367361ef9b303fa194940388 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219636 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll b9529e3a 2020-05-28T07:01:17 Roll SPIRV-Tools from d3d89bb90cbd to 8dfdbeff84f3 (4 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/d3d89bb90cbd..8dfdbeff84f3 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers from f8bf11a0253a to ac638f181542 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-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 Bug: None Tbr: ynovikov@google.com Change-Id: Ice1d98eea49e2a537ef3d87c6b24bba8609e6f37 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219638 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuly Novikov 6a184fe9 2020-05-27T20:51:52 Fix use_libfuzzer build Broken by https://chromium-review.googlesource.com/c/angle/angle/+/2174719 Failed during roll in https://ci.chromium.org/p/chromium/builders/try/linux-libfuzzer-asan-rel/466117 https://ci.chromium.org/p/chromium/builders/try/win-libfuzzer-asan-rel/437044 Bug: b/154030730 Change-Id: Ia1672b9ae8c86e9da135285101ca2d7f31301c2c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2219044 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Cody Northrop 4bbef996 2020-05-26T15:40:51 docs: Update ANGLE for Android documentation Following up on feedback to minimize GN arg lists. The initial block generates a Debug build with minimum variance from default args. The additional blocks are for different scenarios, like getting maximum performance, and verifying ANGLE runs cleanly with Vulkan in Release. Bug: b/150368485 Bug: angleproject:4347 Change-Id: I4db6c389b9bdaf8124795a3aeeb79590245d1e70 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2216813 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Kenneth Russell c8bfefac 2020-05-22T14:54:47 Emulate unsized depth/stencil textures on ES 3.0 without OES_depth_texture. Use sized internal formats for unsized depth/stencil textures on ES 3.0 devices that don't advertise the GL_OES_depth_texture extension. This CL makes the webgl-depth-texture.html conformance test pass on WebKit's ANGLE backend on iOS. Bug: angleproject:4591 Change-Id: Ifc45e74258ecf2e6433662bb10b081f1f94bded9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2213678 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Tobin Ehlis 02fa7313 2020-05-05T17:01:18 Vulkan:Initial worker thread disabled by default Created new CommandProcessor class that can be run as a worker thread. Running CommandProcessor within RendererVk as a worker thread that takes a CommmandBufferHelper (CBH) ptr as the interface and processes that CBH into a primary command buffer. Main thread has a queue of CBH to draw from. After submitting a CBH to the worker, it pulls next CBH from the queue. Worker thread releases CBH back to the main thread queue when done. Synchronization goes two ways: 1. Work submitted to worker thread is managaed with a mutex and condition variable based around the work queue. 2. Available CBH ptrs for the main thread have a mutex and condition variable that manages the CBH queue. The worker thread is disabled by default, and, when enabled, it will currently behave and perform as the non-threaded code. This is because the kNumCommandBuffers const in ContextVk.h is set to 2. With only 2 command buffers, they will be assigned to the inside and outside RenderPass command buffers respectively. Then, as soon as one is submitted, the main thread will stall waiting for it to be completed and put back into the queue mentioned in #2 above. The next step is to move command submission to the worker thread and update the number of command buffers so that processing/submission will occur in parallel with the main thread. Right now there is a race condition issue when attempting to run in parallel because the main thread updates and submits the same primary command buffers that are used in the worker thread, which is in violation of the Vulkan spec. The follow-on CL will fix this issue as the main thread will only touch SecondaryCommandBuffers and the worker thread will be the only thread touching the primary command buffers. Bug: b/154030730 Change-Id: Ib0c518bbd7ca9a3a7e789f4e1f2f7131ddc0509e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2174719 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tim Van Patten f5dace0f 2020-05-22T19:02:49 Vulkan: Increase GLES support to 3.1 Update getMaxConformantESVersion() to support GLES 3.1. This requires skipping some tests on Nvidia due to XFB failures. dEQP-GLES3.functional.transform_feedback.array_element.interleaved.* dEQP-GLES3.functional.transform_feedback.array_element.separate.* dEQP-GLES3.functional.transform_feedback.array.interleaved.* dEQP-GLES3.functional.transform_feedback.array.separate.* dEQP-GLES3.functional.transform_feedback.random.* Bug: angleproject:3520 Test: CQ Change-Id: I3de0e8f7a9e9c6e800be9eb2c04e713e1f88fc08 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2213810 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Jonah Ryan-Davis eadc387c 2020-04-01T16:53:31 GL: Support GL_OES_texture_cube_map_array in shader translator GL_OES_texture_cube_map_array is core in 3.2. This CL adds support for this extension in the shader translator. Now passes dEQP.KHR_GLES31/core_texture_cube_map_array.*, dEQP.GLES31/functional_fbo_color_texcubearray_*, and dEQP.GLES31/functional_opaque_type_indexing*samplercubearray* with GL backend. Bug: angleproject:3584 Change-Id: I1a8485c7d9d3fffb9b5109d292b35b0c56a3c665 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2133086 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Jonah Ryan-Davis 7fde3673 2020-05-25T15:48:06 GL: Support GL_OES_texture_cube_map_array in frontend/GL backend GL_OES_texture_cube_map_array is core in 3.2. This CL adds the necessary validation for the frontend, as well as support for this extension on the GL backend. The next step is to add the changes to the translator. Bug: angleproject:3584 Change-Id: I751a9c9f71a553b05fdf6673250290806d8cfbff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2215306 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Ian Elliott 901045cc 2020-05-26T10:41:18 Vulkan: Rotate gl_FragCoord for Android pre-rotation This extends the current y-flip that's done for gl_FragCoord. Now, gl_FragCoord is rotated and then flips both the x and y-axis. Bug: angleproject:4643 Bug: b/156395519 Change-Id: Iada8680eda8322f7382ff242e4a9422a66114f05 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2210936 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Ian Elliott <ianelliott@google.com>
Manh Nguyen 218a6835 2020-05-26T13:51:34 Store non-string, non-enum data in binary file. Before, non-string, non-enum data smaller than a size threshold will be inlined in the cpp files. Now, they will be stored in binary file regardless of size. Bug: angleproject:4661 Change-Id: Id71cd22c97d26c9b9afaf5b26f7a327b998cb858 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2216306 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Manh Nguyen <nguyenmh@google.com>
George Burgess IV ca092f01 2020-05-26T11:45:08 translator: explicitly specify underlying types for enums Some of these enums are stored in const structs and such. Since we don't need a full `sizeof(int)` bytes each, don't use it. This shaves 16KB off of libGLESv2.so for eve. Bug: chromium:1084580 Change-Id: Ib6eca49203a74c094661f890e32160974c0c531e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2216431 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll 4a81e3db 2020-05-27T07:01:55 Roll SwiftShader from 79dcb2a5abbd to 9e718f962f87 (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/79dcb2a5abbd..9e718f962f87 2020-05-26 bclayton@google.com Update SPIR-V Tools to 55af3902f 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 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 Bug: None Tbr: ynovikov@google.com Change-Id: Ic2cd3565ff08e1000423ce938c2a45cfd666c2a4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2217453 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll ad1a7ac3 2020-05-27T07:01:17 Roll SPIRV-Tools from 9cb2571a184c to d3d89bb90cbd (2 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/9cb2571a184c..d3d89bb90cbd If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-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 Bug: None Tbr: ynovikov@google.com Change-Id: I8437a2768cd29fdf2045a63717523bccdc1a371b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2217451 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll aabc896c 2020-05-27T07:01:52 Roll Vulkan-Loader from 3e390a159761 to 006586926ade (2 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/3e390a159761..006586926ade 2020-05-26 shannon@lunarg.com Build: Update known-good files for 1.2.141 header 2020-05-26 charles@lunarg.com loader: add per-application override layer settings If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-loader-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 Bug: None Tbr: ynovikov@google.com Change-Id: I4f2da819d41d8695fe2a1835dad4890ca7c72c81 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2217452 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll f9826008 2020-05-27T07:01:01 Roll Vulkan-Tools from 0c4ea014bf28 to 2bc4fcd9eba5 (3 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/0c4ea014bf28..2bc4fcd9eba5 2020-05-27 charles@lunarg.com scripts: Add default arg for kvt_genvk directory 2020-05-26 shannon@lunarg.com build: Update known-good files for 1.2.141 header 2020-05-26 charles@lunarg.com vulkaninfo: use generate_source.py for autogen If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-tools-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 Bug: None Tbr: ynovikov@google.com Change-Id: I45e2074e120db1356b35a7232b8235b1f6865927 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2217330 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 5b4c6273 2020-05-26T23:20:11 Roll Vulkan-ValidationLayers from 6ff146b0bfce to 424cdd54fe80 (12 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/6ff146b0bfce..424cdd54fe80 2020-05-26 ynovikov@chromium.org layers: Fix crash in ValidationStateTracker::PreCallRecordDestroySampler 2020-05-26 s.fricke@samsung.com tests: Add FindSupportedDepthStencilFormat check 2020-05-26 s.fricke@samsung.com layers: Fix False Positive AHB BindBuffer 2020-05-26 mark@lunarg.com tests: Add tests cases for CreateInstance status messages 2020-05-26 mark@lunarg.com tests: Add tests for the layer message filter 2020-05-26 mark@lunarg.com tests: Generalize SetEnvVar for use in any test case 2020-05-26 mark@lunarg.com layers: Update layer settings file for message filtering 2020-05-26 mark@lunarg.com layers: Enable filtering of VUIDs from layer output 2020-05-26 mark@lunarg.com chassis: Add processing for msg id filtering 2020-05-26 mark@lunarg.com chassis: Output status message at CreateInstance-time 2020-05-26 mark@lunarg.com tests: Avoid deprecated ext test false positive 2020-05-26 mark@lunarg.com chassis: Switch enables/disables from struct to array If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-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 Bug: None Tbr: ynovikov@google.com Change-Id: I6eb21f8f66b056c5914346a1ec7cbfdad1b8cb95 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2216763 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Geoff Lang a24be8c3 2020-05-26T16:45:29 Don't allow glReadPixels of depth buffers with ES3.1. The ES3.1 spec does not appear to include these formats as valid glReadPixels formats. Test=KHR-GLES3.packed_pixels.rectangle.depth24_stencil8 BUG=angleproject:3520 Change-Id: I6ccd5a7fc49c2e16885cfaace56efce1d96e937a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2216713 Reviewed-by: Alexis Hétu <sugoi@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
Sunny Sachanandani 3d5f0c82 2020-05-19T20:05:57 Use surface texture offset for clears and blits https://chromium-review.googlesource.com/c/angle/angle/+/2186176 added surface texture offset attributes for D3D11 pbuffer surfaces, but the implementation didn't apply the offset to blits or clears. This CL fixes that and includes a unit test for blit, clear, and draw. Also renames textureOffset to surfaceTextureOffset throughout since it's clearer, and fixes the dcomp surface test to specify the update offset returned by dcomp BeginDraw(). Bug: angleproject:2997 Change-Id: I9298ccf55cbb2d04c3b8f78e12f9d07dc8fa54b5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2210967 Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
George Burgess IV 9dac86c9 2020-05-26T08:58:40 gen_proc_table: generate `const` tables We never mutate these tables; marking them const allows the loader to shuffle them to a place that makes them readonly after they're init'ed. This isn't intended to be a functional change. Bug: chromium:1084580 Change-Id: If3356f6082945ef1109bf08aab94f7bfb606b951 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2216295 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Kenneth Russell 05f11a3b 2020-05-21T14:33:42 Remove requirement of OES_texture_half_float for EXT_color_buffer_half_float. Some OpenGL ES 3.0 devices don't advertise OES_texture_half_float, but do advertise EXT_color_buffer_half_float. For this reason, stop requiring OES_texture_half_float when determining renderability of GL_RGBA16F textures. Bug: angleproject:4649 Change-Id: I657011fcc3bb35909760a57e8ad53cfbbc61c67a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2212434 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Kenneth Russell 68f92942 2020-05-22T18:32:52 Emulate GL_EXT_sRGB on ES 3.0 devices without native support. Translate the extension's internal formats and formats to values valid in core ES 3.0. Bug: angleproject:4655 Change-Id: Ie47d01fb2ebca7bab5058812c9f4217523f784a0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2213262 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 9047ce5b 2020-05-26T11:23:35 Vulkan: Fix bad delete of swapchain. We could end up deleting a dirty pointer if the driver set an output value during a call to vkCreateSwapchainKHR that generates an error. In practice this turned up in some edge cases with SwiftShader. Fix this by using a temporary variable. Bug: chromium:1079475 Change-Id: Ia40e1fac94cbd56fd3bb800a179bb38b7f11fa26 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2216292 Reviewed-by: Nicolas Capens <nicolascapens@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Charlie Lao 30298dc2 2020-05-15T15:21:04 Vulkan: Optimize out barrier needs for transition between shaderReadOnly If we are transition between different kind of shaderReadOnly, there is no actual layout change or accessType change. Instead of always insert a barrier, this will track what shaderStage has made read access and only insert barrier if the read is from new shader stage. The barrier inserted will be always from last non-ShaderReadOnly transition. There is no read to read barrier generated. Bug: angleproject:4550 Change-Id: I4aeb7d4bddf2d072b60839f98e7af1aa23f977b5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2204480 Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Jamie Madill 6de7ee52 2020-05-25T17:00:01 Clean up overlay RenderPass count reporting. This fixes the trace perf test to accurately report how many RPs in each frame. Instead of counting the RPs on a flush we now count only on a swap call. This won't work for offscreen surfaces which is fine - the overlay doesn't really have the same use for offscreen rendering. Also ignores the first frame in graph data so we can ignore the first setup frame in the trace tests. Also skips the redundant extra "flush" call that would generate an empty space in the RP graph. Gives a cleaner measurement for optimizing the XFB RP count. Bug: angleproject:4622 Change-Id: I5762c500cdb216700247095984ae62b4f8741602 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2215309 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Anders Leino 6820f77a 2020-05-22T17:50:03 Fix issue where last 8 bits of D24X8 influence depth calculation. Bug: angleproject:4573 Change-Id: If33737cf6ae660b8df58c06a08df32dade472540 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2211768 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Manh Nguyen 27ceed38 2020-05-25T13:06:53 Fix replay crash when captured sample doesn't create binary data Ensure samples without binary data like hello_triangle can be replayed Bug: angleproject:4658 Change-Id: I6da29a05335abe93666b6c19fa769e84c42a9fa8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2212499 Commit-Queue: Manh Nguyen <nguyenmh@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Maksim Sisov ba4e2b94 2020-05-21T09:40:37 Type cast EGLNativeDisplayType to _XDisplay* in xcb and glx As we are approaching the point when DisplayGLX will be compiled in Ozone/X11 configuration, we need to resolve compilation errors. Ozone has intptr_t EGLNativeDisplayType whereas X11 requires Display* aka _XDisplay*. We've already done so in Chromium, and it's time to do the same cast in angle. Bug: chromium:1084458 Change-Id: I11b5ae2e10bfa316cbaa882be86af6894cfdbbf2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2211761 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll 0638b6b9 2020-05-26T07:01:07 Roll glslang from 2cf9621d6d6f to 2b0eafb1de5b (1 revision) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/2cf9621d6d6f..2b0eafb1de5b 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 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 Bug: None Tbr: ynovikov@google.com Change-Id: I65177bb44f922e0fbafcca007f2455f23f91accf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2215729 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 2a0b70aa 2020-05-26T07:01:17 Roll SPIRV-Tools from b0264b87ffb5 to 9cb2571a184c (2 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/b0264b87ffb5..9cb2571a184c If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-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 Bug: None Tbr: ynovikov@google.com Change-Id: I917a5385d5dad0b821075c31e044939dd9f1c75e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2215730 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll e3abf630 2020-05-26T07:01:55 Roll SwiftShader from cc5cda0f997d to 79dcb2a5abbd (5 revisions) https://swiftshader.googlesource.com/SwiftShader.git/+log/cc5cda0f997d..79dcb2a5abbd 2020-05-26 capn@google.com Document helper invocations being considered active 2020-05-25 capn@google.com Move the Reactor 'Sample' unit test back to the top 2020-05-25 capn@google.com Unconditionally define the RValue copy constructor 2020-05-25 capn@google.com Call non-template base methods through 'this' pointer 2020-05-25 capn@google.com Eliminate the array size from rr::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 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 Bug: None Tbr: ynovikov@google.com Change-Id: I57af2a0d67c3dace1d17c82bc3829095611adfd1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2215731 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jeff Vigil 7ff01bb1 2020-05-21T15:22:53 EGL: Add missing sync entry points Update libEGL.cpp with KHR version of sync entry points Update libEGL.def with sync KHR entry point names Bug: angleproject:4383 Change-Id: Ibda23a9e2ba6c873384238d492f0895b370fd6af Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2212892 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Jonah Ryan-Davis 31fbf981 2020-05-25T15:33:44 GL: Entry points for GL_OES_texture_cube_map_array This extension is made core in GLES3.2. This CL adds the necessary entry points to the frontend. Bug: angleproject:3584 Change-Id: Icaaa0b298898f3360819966a7f67b5feaf05124b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2215305 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 6789018a 2020-05-25T11:54:24 Context: init impl before creating objects. This eliminates a potential invalid access that would turn up in the Vulkan back-end. Also init a couple uninitialized variables. Should fix an ASSERT in the Vulkan back-end when running WebGL tests. Bug: chromium:1085627 Change-Id: I153f8dd83f567345b964b68784940d11712e7804 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2212498 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>