|
d24398b3
|
2021-02-25T15:07:00
|
|
gl.xml: Annotate glDiscardFramebufferEXT with param groups.
Remove tests from expectations list, as it now passes on SwiftShader for
ES2 and ES3.
Bug: angleproject:4401
Change-Id: If05b16e40632154a0ba2c22f1c3bf29e12113389
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2720259
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
77637f2d
|
2021-02-19T15:18:52
|
|
Vulkan: Generate xfb support code in SPIR-V for emulation path
This change moves the code generation at link time from source code to
SPIR-V. As a result, transform feedback extension and emulation paths
are more similarly handled before SPIR-V transformation (they both store
information identically in the ShaderInterfaceVariableInfoMap).
This change gets rid of the @@ XFB-OUT @@ marker. With no source code
generation at link time, shader compilation can be moved to
glCompileShader time.
Bug: angleproject:4888
Change-Id: I8cdb89c22b57ce48cf5d226b8e41622d9d550d46
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2713269
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
d3cde02d
|
2021-02-24T16:50:35
|
|
Cleanup EGLMakeCurrentPerfTest instantiation
Bug: angleproject:2735, chromium:1180570
Change-Id: Iddf97121c36a0e27bda5676212690574efe8a83d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2716613
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
ba233b6a
|
2021-02-25T13:44:32
|
|
Suppress 1 VulkanExternalImageTest on Linux AMD Vulkan
VulkanExternalImageTest.TextureFormatCompatChromiumMutableNoStorageFd
Bug: angleproject:5682
Change-Id: Id2aa15f4943f9132d133eeb540e35e405896a3b6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2718530
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
46a955f8
|
2021-02-25T16:06:05
|
|
gen_vk_internal_shaders: Don't include full path on Python 3.4+.
Since Python 3.4 `__file__` represents an absolute file path:
https://docs.python.org/3.4/whatsnew/3.4.html#other-language-changes
We only want the basename in the generated scripts.
Bug: angleproject:5516
Change-Id: Ia4009419ef627aa1ce12f9a944539c054edc3a6b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2720260
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
9b1c569b
|
2021-02-24T11:32:39
|
|
Vulkan: Handle vertex count and primitive mode error cases in TS
When handling tessellation shaders these 2 requirements need to be met -
1. TCS - vertex count should be declared at least once
2. TES - primitive mode should be declared at least once
After translating TCS/TES check whether these requirements are met
and error out if they are not.
Bug: angleproject:5557
Test: dEQP-GLES31 -
functional.shaders.linkage.es31.tessellation.varying.rules.unspecified_*
KHR-GLES32 -
core.tessellation_shader.compilation_and_linking_errors.te_lacking_primitive_mode_declaration
Change-Id: I727d548ad446646bbece1fb78197639537b5f395
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2714465
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
550f2a3e
|
2021-02-24T09:49:42
|
|
Vulkan: Shader support for EXT_shader_framebuffer_fetch_non_coherent
Translator can accept gl_LastFragData and 'inout' variable to gain
access to framebuffer attachment data. The Vulkan translator replaces
it with the SubpassInput type variable. Note that this works only for
the noncoherent version of the extension.
Bug: angleproject:5454
Test: *EXTShaderFramebufferFetchNoncoherent*.*
Change-Id: I392f84ee3ad3eb9fbd09d0b7ff83731a9a3f33f6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2598060
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
3013f27c
|
2021-02-23T22:37:42
|
|
Vulkan: Fix missing visibility barrier for glReadPixels
glReadPixels uses a temporary buffer for readback and was missing an
onBufferTransferWrite() call.
Bug: angleproject:5669
Change-Id: I3c6daba176e332711fa1ab51e279526717486dd0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2717005
Reviewed-by: Jie A Chen <jie.a.chen@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4a24786e
|
2021-02-23T23:32:48
|
|
Vulkan: Fix PBO read pixels with unaligned output pitch
Vulkan takes the output pitch in texels instead of bytes in
VkBufferImageCopy::bufferRowLength. This means that it's impossible to
use vkCmdCopyImageToBuffer when the pitch is not a multiple of texel
size. This change makes sure the fallback path is taken.
Bug: angleproject:5667
Change-Id: I3f2ef312bb8288de8ca3c6730d85a3c14858812e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2717006
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
999da35e
|
2021-02-18T17:29:20
|
|
Vulkan: Optimize glMemoryBarrier more
The implementation assumed that the X_BARRIER_BIT bits implied two
barriers; write->X and X->write. However, they only imply write->X,
with the exception of SHADER_IMAGE_ACCESS_BARRIER_BIT and
SHADER_STORAGE_BARRIER_BIT which handle X->write for images and buffers
respectively.
As a result, the other bits no longer set the MEMORY_BARRIER dirty bit
as they don't guard against X->write usage.
Bug: angleproject:5070
Change-Id: Id23904c455a5f56dc45fc6832a74fdfbba6a4827
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2705702
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7ff605a5
|
2021-02-23T21:45:40
|
|
Capture/Replay: Fix compressed texture level caching
Before this commit, the following sequence would cause an assert:
glCompressedTexImage2D(GL_TEXTURE_2D, 0,
GL_COMPRESSED_RGBA_ASTC_8x8, ...);
glCompressedTexImage2D(GL_TEXTURE_2D, 1,
GL_COMPRESSED_RGBA_ASTC_8x8, ...);
This is due to code we added that clears the compressed texture cache
when it detects we already have an entry for the texture level. This is
allowed in GL, to respecify a texture level by simply calling
glCompressedTexImage on it again.
The problem is we would clear the entire texture from the cache, not
just the level being respecified.
Test: Recapture Asphalt 8
Bug: angleproject:5678
Change-Id: I473d6ea1cb8823bfec680ddd78c3457b93ecc431
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2716639
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
a833f200
|
2021-02-23T17:23:31
|
|
Docs: Update ANGLE trace creation steps
Bug: angleproject:5677
Change-Id: I76ff3991f2124b27cd5c0cd9bad3754ae875cfc4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2717102
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Paul Thomson <paulthomson@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
6623a70f
|
2021-02-19T17:28:10
|
|
Stubs for OpenCL entry points.
Bug: angleproject:5653
Change-Id: I7ec9692a47be2556fef5bdd7630b422cc2d369b9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2708343
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
4a782eaf
|
2021-02-11T16:13:33
|
|
Remove redundant (c) from license headers.
According to the Chromium C++ style guide, there must be no `(c)` after
`Copyright`.
Bug: angleproject:5516
Change-Id: Id5b170b99a1aaf95ab7fabb35ed644b99b756ce1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2690948
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
d81e5d17
|
2021-02-18T16:02:35
|
|
Add a test for sample after deferred clear
To ensure that deferred clears are flushed before sampling.
Bug: angleproject:5070
Change-Id: I72bfef752074eb1e722c669edaa2d0b5ddfd20b8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2705027
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
39d7fc18
|
2021-02-17T00:18:41
|
|
Vulkan: Don't break the render pass on dispatch calls
The only reason a dispatch call may need to break the render pass
implicitly is for read-after-writes where the write originates from the
render pass but is not through a storage buffer/image. There are only
two such scenrios possible:
- Framebuffer attachment write -> texture sample
- Transform feedback write -> ubo read
All other uses of the buffers and textures that require breaking the
render pass are handled by `glMemoryBarrier`.
Bug: angleproject:5070
Change-Id: I92b50d69d8782097ee8ff477ac57da6209c326a1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2698998
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
5d7f4e80
|
2021-02-18T17:06:12
|
|
Remove incorrect memory barrier tests
The tests were written with the assumption that the X_BARRIER_BIT
implied two barriers, write->X and X->write. However, they only imply
write->X, with the exception of SHADER_IMAGE_ACCESS_BARRIER_BIT and
SHADER_STORAGE_BARRIER_BIT which handle X->write for images and buffers
respectively.
Bug: angleproject:5070
Change-Id: Ic9bfac997d0663b70f1d40baca6c111a4dc300c9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2705701
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
016c5ff0
|
2021-02-23T11:34:30
|
|
Roll VK-GL-CTS from 1a524349f06b to 9cdde06fb38a (1 revision)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/1a524349f06b..9cdde06fb38a
2021-02-23 alexander.galazin@arm.com Merge pull request #241 from enunes/gles2-EXT_texture_rg
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll
Please CC ynovikov@google.com,angle-bots+autoroll-info@google.com on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
Bug: angleproject:5674
Tbr: ynovikov@google.com,angle-bots+autoroll-info@google.com
Change-Id: Ie6e73c958321b224de7338c1bd5c3e7c719accb1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2714485
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
df0a92e6
|
2021-02-22T06:39:32
|
|
Assert valid when using SPIR-V ids
Useful for debugging when an uninitialized id is used in the SPIR-V
transformer.
Bug: angleproject:4888
Change-Id: If446187a8a27a06f5958d5df5bc00d02e98d20e3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2713268
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1330aa2c
|
2021-02-12T15:21:31
|
|
capture_replay_tests: Fix repository path retrieval.
Use relation to retrieve angle repository path.
The previous way of detecting the root repository folder failed to
detect a correct path if the angle directory was in a path that
contained the string angle.
e.g. `/home/user/code/angle/angle`
Other paths that would fail with the current implementation:
`/home/user/my-angle-workspace/angle`
`/home/tangled/workspace/angle/`
`/home/user/code/angle-android`
This way the path is constructed with the known relation of the script
path inside the repository. Another advantage of this way is that the
`angle` repository could be checked out with a different name.
The disadvantage of this method is that whenever the script was moved,
the relative path must be updated.
Bug: angleproject:5645
Change-Id: I9a56aeba449b248273087382adceb0d6fba5a494
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2715323
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
37752956
|
2021-02-11T16:12:48
|
|
Generators: Use fixed year in license headers.
Remove dynamic year generation from generator scripts, as required by
the Chromium C++ style guide.
The dynamic year values were replaced by the current year at the time
the file was created according to git log. The code to dynamically
generate the year was removed.
This patch also refreshes generated files and hashes.
Bug: angleproject:5516
Change-Id: I735028bccb5c83217e92c380538f1abf0a906b2c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2690950
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
1a70e5a0
|
2021-02-22T06:38:18
|
|
Add const to optional parameters of SPIR-V instruction builders
Bug: angleproject:4888
Change-Id: I70274042794a7d56db48490d9e3930e1eace02bf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2713267
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c2d14d03
|
2021-02-18T13:55:23
|
|
Vulkan: Refactor prerotation out of SPIR-V transformer
The SPIR-V transformer performs multiple transformations in one pass.
This is part of a series of refactoring changes that detangle these
transformations and encapsulate them, while allowing the transformation
to remain single-pass.
Bug: angleproject:4888
Change-Id: Ia971da6d814b5d7c4f51132fe63b58675163c15f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2705026
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
4a95488c
|
2021-02-18T12:21:26
|
|
Vulkan: Refactor xfb codegen out of SPIR-V transformer
The SPIR-V transformer performs multiple transformations in one pass.
This is part of a series of refactoring changes that detangle these
transformations and encapsulate them, while allowing the transformation
to remain single-pass.
Bug: angleproject:4888
Change-Id: I3e3164803863c4d477364f5b2ed0679ed501ea3c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2705025
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2be24692
|
2021-02-21T21:14:35
|
|
Skip more flaky crashing dEQP tests on Nexus 5X
Bug: angleproject:5665
Change-Id: I29f7cdd39c13d105c52ab0803e6241205fc743fd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2710908
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
6eb7ae4f
|
2021-02-21T19:43:44
|
|
Suppress 2 failing dEQP GLES3 tests on Mac AMD Metal
Bug: angleproject:5666
Change-Id: Ie4b62868ebca6806bb40f78ce49f1fbf70f96fcf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2710907
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
bd9a3b29
|
2021-02-18T11:52:39
|
|
Vulkan: Refactor varying precision fix out of SPIR-V transformer
The SPIR-V transformer performs multiple transformations in one pass.
This is part of a series of refactoring changes that detangle these
transformations and encapsulate them, while allowing the transformation
to remain single-pass.
Bug: angleproject:4888
Change-Id: I587d601e02164c1372a09565d1713aac27cfbebb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2705024
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
454194e4
|
2021-02-17T23:14:30
|
|
Vulkan: Refactor inactive varying removal out of SPIR-V transformer
The SPIR-V transformer performs multiple transformations in one pass.
This is part of a series of refactoring changes that detangle these
transformations and encapsulate them, while allowing the transformation
to remain single-pass.
Bug: angleproject:4888
Change-Id: Ifd52be302c25392d3e8fc1c589795c113e44d354
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2703792
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c342647f
|
2021-02-17T22:46:09
|
|
Vulkan: Refactor gl_PerVertex trimming out of SPIR-V transformer
The SPIR-V transformer performs multiple transformations in one pass.
This is part of a series of refactoring changes that detangle these
transformations and encapsulate them, while allowing the transformation
to remain single-pass.
Bug: angleproject:4888
Change-Id: I41ba9165336487819dcf915af0d1ed868f73f724
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2703791
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8f65bb39
|
2021-02-17T17:11:44
|
|
Vulkan: Typed return value in SPIR-V transformer transform funcs
Use an enum class instead of a bool for readability.
Bug: angleproject:4888
Change-Id: I5fddec4ccc1cb7e28940c0566979f5fd5e051d60
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2702652
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
6e8cdd39
|
2021-02-17T00:17:17
|
|
Vulkan: Don't break the render pass on indirect calls
The render pass is now only broken if the indirect buffer was used as
transform feedback. Any other write to the indirect buffer is
synchronized with `glMemoryBarrier`.
Bug: angleproject:5070
Change-Id: I67868ae9a8f08e1ab186440a3cbdc7439c66808e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2698996
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
c03a4235
|
2021-02-20T16:14:37
|
|
Suppress UNINSTANTIATED_PARAMETERIZED_TEST failures on Nexus 5X
GTest complains that we don't run some tests on GLES backend.
Bug: chromium:1180570
Change-Id: I9427ac25c3b6f06f3c042caa3c0afc7000cf1599
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2710783
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
5c931b61
|
2021-02-20T13:18:32
|
|
Skip more flaky crashing dEQP tests on Nexus 5X
Bug: angleproject:5665
Change-Id: I17da18f451c90a767ac957ea03e1ce0eb38302d8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2710623
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
d3d30921
|
2021-02-17T16:33:20
|
|
Vulkan: Refactor ID-discovery out of SPIR-V transformer
The SPIR-V transformer performs multiple transformations in one pass.
This is the first of a series of refactoring changes that detangle these
transformations and encapsulate them, while allowing the transformation
to remain single-pass.
Bug: angleproject:4888
Change-Id: I327f693d99496a0b89028abe627119e4a2b07c42
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2702651
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
be943b3b
|
2021-02-19T15:23:54
|
|
Skip flaky crashing dEQP tests on Nexus 5X
Bug: angleproject:5665
Change-Id: Ifccd1d11edcbdfc57765144ba5dc65d12de53af2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2705766
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e96d1744
|
2021-02-12T14:14:02
|
|
Vulkan: Optimize glMemoryBarrier
Previous to this change, glMemoryBarrier was processed as it is issued.
This made it impossible to know whether a draw call would follow or a
dispatch call, and what resources it would use. The render pass was
conservatively broken due to this limitation. To address this
limitation, handling of glMemoryBarrier is deferred until the next
draw or dispatch call.
Note that glMemoryBarrier acts as two barriers:
- An execution+memory barrier: shader writes are made visible to
subsequent accesses
- Another execution barrier: shader accesses are finished before
subsequent writes
An important observation is that for most resources, ANGLE actually
necessarily has to issue memory barriers automatically to conform with
Vulkan. In terms of memory barrier thus, ANGLE already does the right
thing except for when there's no binding change. This means WaW hazards
(i.e. storage buffer and image writes) with no binding change require a
memory barrier as a result of glMemoryBarrier. In all other cases, it's
enough for glMemoryBarrier to break the render pass if necessary and
ensure that corresponding bindings are marked dirty (for the execution
or memory barriers to happen automatically later).
Bug: angleproject:5070
Change-Id: Ide359c43362f8a78805ecf797a91de7aa79221f9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2693473
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
6af603e1
|
2021-02-19T11:56:34
|
|
Vulkan: Secondary sort shader enums by name.
This preserves the primary sort by bits. If bits are equal we then
sort by name to produce a more stable sort.
Bug: angleproject:5653
Change-Id: I4cdbc21094fcbd1bb7ad17e124074949bdbf0439
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2704825
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4b608a6c
|
2021-02-17T22:14:18
|
|
Tests: Add Messenger Lite trace
Test: angle_perftests --gtest_filter="*messenger_lite*"
Bug: b/180562361
Bug: angleproject:5659
Bug: angleproject:5663
Change-Id: I9938b925962ea13fd626f2b82676655d07d78c0d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2703733
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
4afd0f27
|
2021-02-17T13:35:57
|
|
Vulkan: Add VK_KHR_image_format_list support to initExternal
The code for initializing a VkImage with VK_KHR_image_format_list
extension support is now internal to initExternal. Also provides a flag
to inform callers when VK_KHR_image_format_list support is enabled.
Bug: angleproject:5520
Change-Id: Ie2ade93d1403ab3f9cbcf7d80684bbca201d5d8d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2702159
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
f18b92ad
|
2021-02-17T19:40:53
|
|
testing: Mark uninstantiated GL & EGL test suites
googletest CL 315255779 causes test binaries to fail when they include
test suites / parametrized tests that are not instantiated, and when
they include empty test suites.
This CL uses the GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST() macro
to annotate the suites / tests that are causing test failures. This is
necessary to get googletest rolled past CL 315255779.
Bug: chromium:1163396
Change-Id: I05c0619186ffc265b8e32e8b69d6680a6acdbb48
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2701292
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
dceb2412
|
2021-02-18T16:44:37
|
|
Roll VK-GL-CTS from eab348e95425 to beffa5287574 (5 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/eab348e95425..beffa5287574
2021-02-18 alexander.galazin@arm.com Support GL 4.5 in the Built-in Constant Tests
2021-02-18 ari.suonpaa@siru.fi Add tests for mixing matrix packing in nested structs
2021-02-18 gleese@broadcom.com Extend CopyImage tests to test astc_sliced_3d
2021-02-18 mika.vainola@siru.fi Fix undefined behavior in FloatToHalf
2021-02-18 mikko.tiusanen@siru.fi Add tests for all ES 3.0 internal formats
Bug: angleproject:5661
Bug: angleproject:5662
Change-Id: Iab7a28e17523e0b69fb76fbd6281423db63569fe
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2703517
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
9d83517b
|
2021-02-17T23:20:03
|
|
Tests: Add AliExpress trace
Test: angle_perftests --gtest_filter="*aliexpress*"
TBR: jmadill@google.com,timvp@google.com
Bug: b/180565449
Bug: angleproject:5660
Change-Id: I61ac0e7dbfbe6fd23c71b63fa6f8c00b20a94006
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2703735
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
fd132e4e
|
2021-02-18T18:21:32
|
|
testing: Mark uninstantiated perftests
googletest CL 315255779 causes test binaries to fail when they include
test suites / parametrized tests that are not instantiated, and when
they include empty test suites.
This CL uses the GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST() macro
to annotate the suites / tests that are causing test failures. This is
necessary to get googletest rolled past CL 315255779.
Bug: chromium:1163396
Change-Id: I13ffa09c4263a6dc8baf1749c3df5d2c54904e68
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2704800
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
95584459
|
2021-02-18T09:32:16
|
|
Revert "Workaround for Mac Intel drawArraysInstanced with first > 0"
This reverts commit 027bc47ca5b7b291fbda907173eefa05ad3d45a8.
Reason for revert: InstancingTests fail on Mac FYI Release (Intel UHD 630), see https://ci.chromium.org/ui/p/chromium/builders/ci/Mac%20FYI%20Release%20(Intel%20UHD%20630)/1729/overview
Original change's description:
> Workaround for Mac Intel drawArraysInstanced with first > 0
>
> Workaround by forcefully set instanced arrays (divisor > 0)
> as streaming attributes and apply extra offset at front. Recover
> those attribute bindings when first == 0 and other draw calls
> (drawElementsInstanced)
>
> Bug: chromium:1144207, chromium:1144247, chromium:1144373
> Change-Id: Ie7836cc71b45a290513f34f90d49bd15b14ddba8
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2661095
> Commit-Queue: Shrek Shao <shrekshao@google.com>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Bug: chromium:1144207
Bug: chromium:1144247
Bug: chromium:1144373
Change-Id: Ia4a6026a8c446490346b373c33fe2b1724c1761f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2704052
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
2d3402eb
|
2021-02-18T09:05:02
|
|
Revert "EGL: Merge DisplayAndroid into DisplayEGL."
This reverts commit 2cb6671534ddc6efe9664a2fb30be2b2fb13c8ef.
Reason for revert: Make DisplayGbm fail to compile. See: https://ci.chromium.org/ui/p/chromium/builders/try/linux-chromeos-compile-dbg/636833/overview
Original change's description:
> EGL: Merge DisplayAndroid into DisplayEGL.
>
> These two classes have a lot of duplicated code for no reason.
>
> Bug: angleproject:5563
> Change-Id: Ia9d8efeb50f3e52ffb1df6a6e462efdb20fd4a9a
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2636678
> Commit-Queue: Geoff Lang <geofflang@chromium.org>
> Reviewed-by: Peng Huang <penghuang@chromium.org>
> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Bug: angleproject:5563
Change-Id: Ic39071130727b37cc2a168d4b8e3c50f3e7184a5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2704051
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
027bc47c
|
2021-01-29T18:02:21
|
|
Workaround for Mac Intel drawArraysInstanced with first > 0
Workaround by forcefully set instanced arrays (divisor > 0)
as streaming attributes and apply extra offset at front. Recover
those attribute bindings when first == 0 and other draw calls
(drawElementsInstanced)
Bug: chromium:1144207, chromium:1144247, chromium:1144373
Change-Id: Ie7836cc71b45a290513f34f90d49bd15b14ddba8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2661095
Commit-Queue: Shrek Shao <shrekshao@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
bd276beb
|
2021-02-12T10:58:43
|
|
Vulkan: Don't wait on unflushed sync objects without a Context
The app "Car Parking Multiplayer" issues a ClientWaitSync() command
without having already flushed the sync object and without an active
context. We should return TIMEOUT immediately rather than attempting to
wait on the sync object, since we can't flush it and it'll never be
signalled.
Bug: angleproject:5613
Bug: angleproject:5656
Test: MultithreadingTest.NoFlushNoContextReturnsTimeout
Change-Id: Ieaf675ca9144f9c851c73b9ca399daaf4ed1cd0f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2693375
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
7e990ef4
|
2021-02-16T18:15:43
|
|
Clean ups to generate_entry_points.
Switches to Python 3 support. Made a change to run_code_generation to
support this. Affects several generators. Also updates the generator
to make a few other small cleanups.
Bug: angleproject:5653
Change-Id: I045173c9ca85947c4eac22285701032c09f4c8d0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2699187
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
51c5137a
|
2021-01-05T16:58:50
|
|
Capture/Replay: Add texture buffer support
Test: Fortnite MEC
Bug: b/180418810
Bug: angleproject:5658
Change-Id: I2025f0b88f7488a827159029e6d04a4cf4e9a1b8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611558
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
7ae8531b
|
2021-02-17T15:20:07
|
|
Vulkan: Fix crash with 0-sized element buffer
VertexArray::syncState syncs all dirty bits, including
DIRTY_BIT_ELEMENT_ARRAY_BUFFER even for draw calls that don't use this
buffer, such as glDrawArrays. If the element buffer is given 0 size,
this caused a crash in the Vulkan backend.
Bug: chromium:1172577
Change-Id: I02d78c9660c07b896f7403867b648901478251fe
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2701831
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
436b43a6
|
2021-02-16T14:28:06
|
|
Add comprehensive memory barrier tests
Optimizing glMemoryBarrier can get very tricky. This change adds tests
for every glMemoryBarrier bit in different scenarios for a total of
about 1500 tests. With the current implementation, there are no syncval
errors running these tests.
Bug: angleproject:5070
Change-Id: I5358bfeed84f586a67c90ba5ab0fe624db6820b5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2698288
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
907a3cee
|
2021-02-17T08:07:45
|
|
Vulkan: Add support for EXT_shader_framebuffer_fetch_non_coherent
EXT_shader_framebuffer_fetch_non_coherent is implemented using subpass
input attachments. The extension will be enabled in a follow up change
that adds required changes to the Vulkan translator.
Bug: angleproject:5454
Test: FramebufferFetchNonCoherentES31.*Vulkan
Change-Id: Ic73c66a476c4a21db5269431166a198841f1dc0c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2598059
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d6e0b0ca
|
2021-02-17T15:59:52
|
|
Remove a debugging code in renderergl_utils.cpp
Bug: chromium:1171371
Change-Id: I7cf00edbc337150e40e7afb4f6c5fc88862f0734
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2700332
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Peng Huang <penghuang@chromium.org>
|
|
2cb66715
|
2021-01-19T12:42:38
|
|
EGL: Merge DisplayAndroid into DisplayEGL.
These two classes have a lot of duplicated code for no reason.
Bug: angleproject:5563
Change-Id: Ia9d8efeb50f3e52ffb1df6a6e462efdb20fd4a9a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2636678
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Peng Huang <penghuang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
82337b00
|
2021-02-17T16:47:48
|
|
Add suppressions for failing tests on Linux Nvidia GL
The following failing without a clear reason (asides from PartitionAlloc
changes in Chromium maybe). This CL suppresses them while we find what
the issue is.
TBR=syoussefi@chromium.org
Bug: angleproject:5651
Change-Id: I6cba67351dfba37fd6d86a07ac748b7998665361
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2700511
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
e99828e4
|
2021-02-16T19:13:44
|
|
Remove DllMain() from static angle library
Bug: chromium:1179061
Change-Id: I89167eb9c6ed244072e00500b47c7df83ac2e80d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2699188
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Peng Huang <penghuang@chromium.org>
|
|
64b5b3d3
|
2021-02-12T17:31:58
|
|
Vulkan: Further restrict enabling LINE_RASTERIZATION_MODE_BRESENHAM
The app "Car Parking Multiplayer" enables GL_SAMPLE_ALPHA_TO_COVERAGE,
which leads to a VVL error when LINE_RASTERIZATION_MODE_BRESENHAM is
also enabled:
VUID-VkGraphicsPipelineCreateInfo-lineRasterizationMode-02766:
The Vulkan spec states: If the lineRasterizationMode member of a
VkPipelineRasterizationLineStateCreateInfoEXT structure included in the
pNext chain of pRasterizationState is
VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT or
VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT and if rasterization
is enabled, then the alphaToCoverageEnable, alphaToOneEnable, and
sampleShadingEnable members of pMultisampleState must all be VK_FALSE.
This CL adds the additional checking to
GraphicsPipelineDesc::initializePipeline() to ensure those conditions
are met before setting lineRasterizationMode to
VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT.
Bug: angleproject:5613
Test: StateChangeTest.AlphaToCoverageEnable
Change-Id: Ie2286078f6916c01a19ae6f932321a86619bd4e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2694094
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
0fa6c307
|
2021-02-04T11:23:06
|
|
Enable ES 3.2 in ANGLE's loader
Test: Capture and replay ES 3.2 apps
Bug: angleproject:5652
Change-Id: I2dac84d3cf6534ee1b10889ba1312ae247ae8f62
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2698391
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
c7ae5d28
|
2021-02-17T15:57:37
|
|
Suppress ClearThenMaskedClearFramebufferTest on Linux AMD VK
The test has been failing on that configuration since it was introduced.
TBR=syoussefi@chromium.org
Bug: angleproject:5655
Change-Id: If852bcd574fa0cd4018220b7d6749b95a717a7c9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2698117
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
3c28b2a0
|
2021-02-10T16:49:32
|
|
Vulkan: Remove render pass check from setupDraw()
... and move it to handleDirtyGraphicsRenderPass.
Bug: angleproject:5528
Change-Id: I416b2fedb1cd924d04fa739aecb65193fd845f6b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2686441
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e8c0aa81
|
2021-01-26T23:40:36
|
|
Vulkan: Clean up transform feedback extension pause/resume
1. The xfb counter buffer barrier issued was wrong, following a typo in
the spec. This barrier is now correctly issued using the usual
barrier APIs.
2. A mechanism was added to automatically pause/resume transform
feedback when a program pipeline needs to be rebound. This is
incorrect as it misses the xfb counter buffer barrier. The render
pass is broken instead if transform feedback is active/unpaused and
the program pipeline is changed.
3. The transform feedback counter buffers are now disposed of when
transform feedback is ended. This avoids an unnecessary barrier that
this change would have otherwise incurred (and hence render pass
break) in Manhattan which repurposes the same transform feedback
object.
Bug: angleproject:5528
Change-Id: I1ffe8b4b8975645ba43afd70e9cdbb0765529da5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2651647
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
60b03e62
|
2021-02-16T14:31:19
|
|
Create getRotatedExtents() and related methods
Created:
- WindowsSurfaceVk::getRotatedWidth()
- WindowsSurfaceVk::getRotatedHeight()
- RenderTarget::getRotatedExtents()
- ImageHelper::getRotatedExtents()
- ImageHelper::getRotatedLevelExtents2D()
Note: The FramebufferVk class doesn't use any of these methods
Bug: b/175793022
Change-Id: I64395688bfdb172d32853763743fc5f266a6b792
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2686102
Commit-Queue: Ian Elliott <ianelliott@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
741f4039
|
2021-02-16T17:00:31
|
|
Fix spelling in capture owners
Bug: None
TBR: geofflang@chromium.org
Change-Id: I60fd6bc18d8c86087d7640eb1145d575c4008edb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2697986
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
2b69462e
|
2021-02-12T15:55:00
|
|
Vulkan: Consolidate image format list initialization code
HardwareBufferImageSiblingVkAndroid, RenderbufferVk, SurfaceVk
and TextureVk all had similar code to initialize VkImage with
VK_KHR_image_format_list extension support. Consolidate all of
them into a helper.
Bug: angleproject:5520
Change-Id: Ib7ac582a35a26c0da15879e688bcaf0c2a92ea87
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2692641
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
|
|
d7037aa2
|
2021-02-11T14:35:30
|
|
Vulkan: noop glMemoryBarrier(CLIENT_MAPPED_BUFFER_BARRIER_BIT_EXT)
CLIENT_MAPPED_BUFFER_BARRIER_BIT_EXT requires a memory barrier: shader
buffer write -> host read. According to the spec, the data is only
available after a call to glFinish or wait on sync:
> The application must call MemoryBarrier with the
> CLIENT_MAPPED_BUFFER_BARRIER_BIT_EXT set and then call FenceSync with
> SYNC_GPU_COMMANDS_COMPLETE (or Finish). Then the CPU will see the
> writes after the sync is complete.
When a buffer is written to by the GPU, ANGLE calls
onHostVisibleBufferWrite(), which ensures a "memory write -> host read"
barrier is issued at the end of the command buffer.
Additionally, persistently mapped buffers use
VK_MEMORY_PROPERTY_HOST_COHERENT_BIT, so there's no need for a call to
vkInvalidateMappedMemoryRanges.
As a result, there's nothing necessary in ANGLE to do for this barrier
bit. Note that should persistenly mapped buffers start using
non-coherent memory, this barrier should imply a call to
vkInvalidateMappedMemoryRanges for the persistently mapped buffers.
Bug: angleproject:5070
Change-Id: Iaeae019dadfa659a47d2dac41c0c09f1c15e584b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2689380
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
79ae52dd
|
2021-02-11T14:18:41
|
|
Vulkan: Fix missing visibility barrier for host-visible buffer writes
See https://chromium-review.googlesource.com/c/angle/angle/+/1661252 for
context. This was accidentally broken during the command graph rework.
This will eventually be validated by syncval. See
https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/2329.
Bug: angleproject:5070
Change-Id: Ic16fa900e554d46e54b42fc3fbe0f96d5327fa0f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2689379
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
30622479
|
2021-02-16T12:33:40
|
|
Vulkan: Fix crash with deferred clears and MSRTT
The following scenario was mishandled:
- MSRTT draw with an unresolve operation (i.e. has two subpasses)
- Deferred clear
- Flush deferred clear with MSRTT framebuffer not needing unresolve
(i.e. has one subpass)
Bug: chromium:1178693
Change-Id: If3548e99897d698d61dfafbe9f86193723d06e5a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2697648
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e153063d
|
2021-02-16T18:34:25
|
|
Add timvp to ANGLE, vulkan and capture owners.
Bug: None
Change-Id: Ic23994efa3f4184c471eb21e7f3bb039f6b45057
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2697947
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
9c450bee
|
2021-02-12T14:23:42
|
|
Use the default build target vulkan_memory_allocator
Bug: chromium:1170339
Change-Id: I00c868e205a16a889e193383c35b2ed42d8a61ef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2693028
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
91b6c3b1
|
2021-02-16T11:14:18
|
|
Revert "Link angle_util statically into angle_system_info_test"
This reverts commit 804226dffd9b35f88c4a64672fea2cd29c2bc6e8.
Reason for revert: breaks compilation on android-archive-dbg.
See https://ci.chromium.org/ui/p/chromium/builders/ci/android-archive-dbg/7802/overview (seems the egl symbols can't be found?)
Original change's description:
> Link angle_util statically into angle_system_info_test
>
> Otherwise ANativeActivity_onCreate is not found in component build.
>
> Bug: angleproject:4483
> Change-Id: Ic4a9f66e5b7d150a3740529f866de9995550ea68
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2689370
> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
TBR=ynovikov@chromium.org,jmadill@chromium.org
# Not skipping CQ checks because original CL landed > 1 day ago.
TBR=ynovikov@chromium.org
Bug: angleproject:4483
Change-Id: I7f16f77979f7d8b1e5e5f61e48b379b910f3a743
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2697067
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
65f2f302
|
2021-02-16T12:59:57
|
|
Suppress Bus Simulator Indonesia on Linux AMD GLES too.
Bug: angleproject:5629
TBR=ynovikov@chromium.org
Change-Id: Iafae8a8022b1c3de7b6ff52be9889ba96a1fc865
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2697069
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
21cced7f
|
2021-02-16T12:20:34
|
|
Fix suppression for a SimpleStateChangeTestES31 on Linux AMD
It should be suppressed on Desktop GL and not GLES
TBR=syoussefi@chromium.org
Bug: angleproject:5649
Change-Id: I9752e0219e39cc9a8f3c1b90e15525d7e0384a91
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2697068
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
ca6573eb
|
2021-02-13T21:21:26
|
|
Vulkan: Fix dirty bit bug when closing RP in setupDraw()
Bug: angleproject:5644
Change-Id: I2e1fa8c4db8eba1beb74c83dcb24cbe2e70ddca6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2694076
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
14ec0d2c
|
2021-02-15T17:14:08
|
|
Suppress a SimpleStateChangeTestES31 on Linux AMD GLES
SimpleStateChangeTestES31.DrawThenSampleWithCompute was failing
since it was introduced.
TBR=syoussefi@chromium.org
Bug: angleproject:5649
Change-Id: I46f531724bd4f12c760675de5038f2345eb21aac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2692816
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
031dd5c5
|
2021-02-11T14:56:43
|
|
Vulkan: Add fast path for pack buffer copies
When vkCmdCopyImageToBuffer is possible, it is used to implement
glReadPixels with PBO instead of a CPU readback.
A few tests are added to verify synchronization between pack/unpack and
compute shader writes.
Bug: angleproject:5070
Change-Id: Ia5da0feb31348f6b52d164b973ff95e2a0510582
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2691466
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2b15062b
|
2021-02-11T12:52:39
|
|
Allow more formats as texture attachments in GLES 1
This change allows all formats in the GLES 1.1 spec, table 3.4
to be used as a texture attachment.
Also normalize values passed into glColorPointer if the format
is of type GL_UNSIGNED_BYTE.
These changes are needed for the android app, Kick the Buddy
to render correctly.
Bug: angleproject:5599
Tests: *DrawTextureTest.ColorArrayDifferentTypes*
*FramebufferObjectTest.TextureObjectDifferentFormats*
Change-Id: Ie9d27fc24d94106651262cf9b2080dd3f05af1c5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2690920
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
545d0051
|
2021-02-11T13:59:08
|
|
Add a number of glMemoryBarrier tests
Bug: angleproject:5070
Change-Id: I835a4e936cb50d3f4b1187bebbe1d1adc49d0b52
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2689366
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
19e4cf86
|
2021-02-09T21:49:42
|
|
Capture/Replay: Some fixes for capturing WebGL
Bug: angleproject:5635
Change-Id: I756471fbad34660c494fb7f9ba1144accd5c08b2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2686119
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
3500b434
|
2021-02-13T09:14:08
|
|
Update assert in BitSetArray::Iterator::prepareCopy
Prior to a mutation of the bitset, mCurrentIterator would have been
from mParent but post-mutation subsequent iterators are obtained
from mParentCopy. Assert that the end() markers for both containers
are the same.
Bug: angleproject:3877
Change-Id: Ia29abd2acc0014522ef5856a88d8ec227cf9f19d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2693813
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
12990d73
|
2021-02-11T11:37:03
|
|
GetBitSet now uses BitSetArray instead of IterableBitSet
Remove the now unused IterableBitSet class.
Bug: angleproject:3877
Change-Id: I161e5d062c8183e30a7eb9040f3018116fe6e69e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2683494
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
dfd2a881
|
2021-02-11T11:26:18
|
|
Add more functionality to BitSetArray class
Add support for more unary and binary operators.
In order to support setLaterBit and resetLaterBit in
BitSetArray::Iterator there were 2 choices -
1. Make a copy of BitSetArray only if it is a mutating usecase
2. Always perform a copy in the constructor
BitSetIteratorPerfTest was run with both patches -
1) Copy only when necessary - RESULT BitSetIteratorPerf.wall_time: run = 116.1067374961 ns
2) Copy always - RESULT BitSetIteratorPerf.wall_time: run = 242.7446459439 ns
We settled on the copy only when necessary path.
Bug: angleproject:3877
Change-Id: If1d3cc428c68c84857952b46237aa5f206f080cd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2690912
Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a2fad5ea
|
2021-02-11T22:49:33
|
|
Mark uninstantiated tests
This problem was discovered by attempting to roll googletest past CL
315255779, which causes test binaries to fail when they include test
suites / parametrized tests that are not instantiated, and when they
include empty test suites.
This CL uses the GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST() macro
to annotate the suites / tests that are causing test failures. This is
necessary to get googletest rolled past CL 315255779.
Bug: chromium:1163396
Change-Id: I17c7cae1121079219f632cbbcf8cfc65a27bfdb7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2691459
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
baf64903
|
2021-02-03T14:02:55
|
|
Allow small compressed mip level copies
Update ValidateCopyImageSubDataBase() to take into consideration if the
entire mip level is being written, even if the size of the mip level is
smaller than the compressed block size.
This also uncovered a bug in ImageHelper::initializeNonZeroMemory()
where the image extents are not at least as large as the compressed
format block size:
VUID-vkCmdCopyBufferToImage-imageExtent-00207
This CL adds isAllocateNonZeroMemoryEnabled() to allow skipping the test
when that feature is enabled while that bug is chased.
Bug: angleproject:5592
Bug: angleproject:5634
Bug: angleproject:5643
Test: Texture2DTestES3.CopyCompressedImageMipMaps
Change-Id: I0381e0d3490fb148604b61dc3bae8f96ba8b5f8e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2673069
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a9de5d99
|
2021-02-04T20:44:15
|
|
Vulkan: setAllDefaultUniformsDirty after createPipelineLayout
The default uniform descriptor set is reset while recreating the
pipeline layout during handling of immutable samplers and then is
never re-allocated and bound before the next draw.
The call stack to allocate the program uniforms descriptor set:
ProgramExecutableVk::allocUniformAndXfbDescriptorSet
ProgramVk::updateUniforms
ContextVk::setupDraw
ContextVk::drawArrays
Context::drawArrays
Unfortunately, this occurs before the pipeline layout is reset (and the
descriptor sets are reset) due to the presence of an immutable sampler:
ProgramExecutableVk::reset <<---- mDescriptorSets.fill(VK_NULL_HANDLE);
ProgramExecutableVk::createPipelineLayout
ContextVk::updateActiveTextures
ContextVk::invalidateCurrentTextures
ContextVk::syncState
Context::syncDirtyBits
Context::prepareForDraw
Context::drawArrays
This CL calls setAllDefaultUniformsDirty() for the Program/PPO to ensure
the default uniforms descriptor sets are re-allocated and re-bound
before the next draw command.
Bug: b/178424566
Bug: angleproject:5624
Test: CtsCameraTestCases
Change-Id: If54a9f2cc09809a5103bc3eac641c77f56362229
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2677385
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
46203e32
|
2021-02-10T18:41:06
|
|
Workaround context lost for Adreno 42x and 3xx
Bug: chromium:1171371
Change-Id: I8c2e13f3f35bf1f780526ad1d9d483226ce5ea34
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2688901
Commit-Queue: Peng Huang <penghuang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
0a99bc39
|
2021-02-12T14:33:02
|
|
Remove dEQP expectations for tests removed from masterpass
In https://chromium-review.googlesource.com/c/angle/angle/+/2690142
https://github.com/KhronosGroup/VK-GL-CTS/commit/7630a653d152f5da673e3992c0a1597d605c955f
Bug: angleproject:5648
Bug: angleproject:3466, angleproject:3317, angleproject:4235
Change-Id: Ic4ee1d8b69319e839dbed192ce74811d0281b60e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2692513
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
1094d324
|
2021-02-12T03:14:38
|
|
GL: Add allow_etc_formats workaround
Enable ETC2/EAC formats on newer Intel GPUs.
Bug: angleproject:1552
Change-Id: I240b07d6d81d48e1e03dfcd56aad6fa9f1d7817f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2690952
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
8b624c6d
|
2021-02-05T15:33:52
|
|
Use constexpr initializer list for bitsets
Allows setting/resetting multiple bits to be coalesced into one
operation.
Bug: angleproject:5528
Change-Id: Ibf2dff8c81441a75c268d95066d23da1b2a3c810
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2678885
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
cf8c71de
|
2021-02-11T16:32:00
|
|
Supress failing capture/replay test.
StateChangeTest.DrawAfterFlushWithNoStateChange/*
Bug: angleproject:5530
Change-Id: I8e9365219a617b8c6dd6d5c767e40ecde100a76d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2689378
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
804226df
|
2021-02-11T14:53:43
|
|
Link angle_util statically into angle_system_info_test
Otherwise ANativeActivity_onCreate is not found in component build.
Bug: angleproject:4483
Change-Id: Ic4a9f66e5b7d150a3740529f866de9995550ea68
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2689370
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
bae53d96
|
2021-02-10T16:28:14
|
|
Only define test suites when TEST_Ps defined
The EXTClipCullDistanceForVertexShaderCompileFailureTest and
EXTClipCullDistanceForFragmentShaderCompileFailureTest test suites
each contain only one test, which is defined iff ANGLE_ENABLE_VULKAN
is defined. This results in UNINSTANTIATED_PARAMETERIZED_TEST errors.
This problem was discovered by attempting to roll googletest past CL
315255779, which causes test binaries to fail when they include test
suites / parametrized tests that are not instantiated, and when they
include empty test suites.
Bug: chromium:1163396
Change-Id: Ie1837bc2879c14ad9f51a4a757ee1edc7e603c61
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2686377
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
e281fbb0
|
2021-02-11T15:37:43
|
|
Revert "GL: Cache the results of glGetString"
This reverts commit 27906e9c9f8a6767fb8af22d9f80264d8672243a.
Reason for revert: Causes failures in mac_optional_gpu_tests_rel
Original change's description:
> GL: Cache the results of glGetString
>
> To reduce the amount of queries to the driver, we can cache the
> results of glGetString. On Mac, we need to invalidate this cache
> on GPU switch.
>
> Bug: chromium:1173672
> Change-Id: I039172068aec35034a87881a8804f52c080ce4ce
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2676882
> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
TBR=geofflang@chromium.org,jonahr@google.com,jmadill@chromium.org
Change-Id: I5799c5d287dd01b946446bd66d4c89aef6756d3a
Bug: chromium:1173672
Bug: angleproject:5639
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2690145
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
537cd0d5
|
2021-02-11T12:38:10
|
|
Capture Tests: Update path to capture/.
Bug: angleproject:5530
Change-Id: Ibbabab2bcc03c196c6c51e5bf67d81df8bad4925
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2689364
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
5af5808b
|
2021-02-10T13:06:36
|
|
GL: Do not support ETC1 textures on Desktop GL
As pointed out in WebGL issue 3014, ANGLE has been exposing ETC1
texture support on desktop GL when GL_ARB_ES3_compatibility or GL
4.3+ is available. However, it is very likely that none of these
platforms actually have hardware support for this format, and are
only supporting it for compatiblity with ES3. We shouldn't expose
this so that desktop clients can use a better format instead.
Bug: chromium:1048244
Change-Id: I53837a05719d0ca3ff390b5b45b61a1f9c72a535
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2687466
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
807d1ad7
|
2021-02-10T23:30:56
|
|
Metal: fix incorrect default viewport size with contentsScale>1
The correct metal layer's drawable size should be calculated after
mMetalLayer.get().contentsScale is set during initialization to allow
initial viewport to be computed properly on front-end side.
Bug: angleproject:2634
Change-Id: If278f40c0b6800bbe12fb5ea94986f728381bc00
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2687300
Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d0e8c636
|
2021-02-10T04:08:28
|
|
Roll VK-GL-CTS from 28d3d98b040d to fd70e387953e (1 revision)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/28d3d98b040d..fd70e387953e
2021-02-05 alexander.galazin@arm.com Merge vk-gl-cts/opengl-es-cts-3.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 syoussefi@google.com,angle-bots+autoroll-info@google.com on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
Bug: None
Change-Id: I8f160df11b65f88e79010c37aeb7a89aa70b84e7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2690142
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
45a493ea
|
2021-02-05T13:48:48
|
|
Vulkan: Use a dirty bit to start the render pass
Some dirty bits need to run before the render pass starts. An upcoming
change for example needs to break the render pass when the program
pipeline is changed while transform feedback is active. Another
upcoming change may need to do the same based on a preceding
glMemoryBarrier.
This change adds a new dirty bit to start the render pass after some
dirty bits have already been processed.
Bug: angleproject:5528
Change-Id: I993c9efefed4c8fee268b218a8dd66a582d4e7cd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2678863
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
dccec125
|
2021-02-08T16:21:30
|
|
Vulkan: Clear mCurrentGraphicsPipeline after createPipelineLayout()
Set mCurrentGraphicsPipeline = nullptr when the pipeline layout is
recreated if immutable samplers are used to prevent a use-after-free.
For a fuller discussion on why this is necessary, see:
Vulkan: clear mCurrentGraphicsPipeline during invalidate |
https://chromium-review.googlesource.com/c/angle/angle/+/2647746
Bug: b/178424566
Bug: angleproject:5624
Change-Id: I70679bda85cd587dbd8893a4576ee5d33aee2b70
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2683041
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
393c44f1
|
2021-02-01T15:45:24
|
|
EGL: Trim requested config parameters to EGL.
ANGLE requests a config with several uneccessary parameters.
I suspect these parameters are causing issues in the wild
where eglChooseConfig fails.
Try requesting ES3 then fall back to ES2 configs.
Skip config caveats, floating point configs and multisample
configs, we provided the default parameters.
The resulting config is very similiar to the one Chrome
requests in gl_surface_egl.cc
Bug: chromium:1173161
Change-Id: Ifa78ff8081e3d86e823036981e1e2b5f8f751fed
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2665888
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Peng Huang <penghuang@chromium.org>
|
|
0e8f7727
|
2021-02-10T15:03:10
|
|
Fix crash in gl::Context::unMakeCurrent()
gl::Context's ctor may need to create a native EGL context and it can
fail. If it fails, the context->mImplementation will be nullptr, and
it will cause crash elsewhere. Fix the problem by checking it after
create a gl::Context instance.
Bug: chromium:1171371
Change-Id: Ic57f088dcbf9716b85fee92bf54d557eb94642d0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2686439
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Peng Huang <penghuang@chromium.org>
|