|
f2f17bad
|
2022-08-31T17:40:22
|
|
Vulkan: Fix Framebuffer Fetch Test Failure
If permanentlySwitchToFramebufferFetchMode is enabled,
mIsInFramebufferFetchMode will remain true.
If we switch from a non-framebuffer fetch program to
a framebuffer fetch program, the condition
if (mIsInFramebufferFetchMode != hasFramebufferFetch)
doesn't hold, and we will miss setting the dirty bit
in OnColorAccessChange, and miss updating the color
attachment resourceAccess value.
This causes test failure when running the test
FramebufferFetchES31.DrawNonFetchDrawFetchInStorageBuffer_Coherent.
The color attachment resourceAccess remains unused after
the first draw call that uses a program which doesn't read/write
from the framebuffer color attachment. The second draw call uses
a program that needs to read from the framebuffer color attachment,
however, since the color attachment access value is unused, it will
use LoadOpNone, making the color attachment value not availble for
the shader program to read from.
This change fixes the failure by setting the bit dirty
whenever the program uses framebuffer fetch mode, given the condition
that feature permanetlySwitchToFramebufferFetchMode is enabled.
Bug: angleproject:7583
Change-Id: I240381766d75f6e73ea9c20503b2344cc816cbc7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3864127
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
d0fad24c
|
2022-08-30T23:24:06
|
|
Add noncoherent PLS tests
Coherent pixel local storage is so widely supported now that we have a
testing gap on the noncoherent version. This change adds backend
features to disable the extensions we use for fragment synchronization
and tests that disable them.
Bug: angleproject:7279
Change-Id: If71a1a1016922cb9e3b68024dd2616483c700395
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3866163
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c6ad305c
|
2022-08-25T11:53:46
|
|
Vulkan: No depth load/store if depthFunc==ALWAYS/NEVER && mask==FALSE
If depthFunc is set to always or never pass with depthMask disabled, and
the entire render pass is drawing with that state, then there is no need
to load or store depth value.
Bug: b/243711628
Change-Id: I71d470bda49abc48a4a6e20895b7e056c33fa33a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3858143
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
f602278c
|
2022-08-30T10:31:07
|
|
Vulkan: Parse human readable ARM driver versions.
Update two workarounds to be gated on driver versions with fixes.
Bug: angleproject:7370, angleproject:7556
Change-Id: I78e1cebb756b06c7fc926fb9ab27357cf3c7ce4f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3863162
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
e9cb83dd
|
2022-08-27T06:20:20
|
|
Vulkan: disable EGL_EXT_image_gl_colorspace
sRGB texture upload for AHB backed external storage is broken. Disable
EGL_EXT_image_gl_colorspace until that gets fixed.
Bug: b/205995945
Test: SingleLayer_ColorTest_GpuSampledImageCanBeSampled_*_UNORM_sRGB
Change-Id: I1be51f9f3528cd864709cf48ab0d949bb23cdfca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3859694
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Yiwei Zhang <zzyiwei@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
7428369a
|
2022-08-29T17:59:38
|
|
Vulkan: Use macros for load/store Op check
Use macro instead of inline function for result check so that the
correct line number gets print out for the failed check.
Bug: b/243711628
Change-Id: I1141f6a63fd01bb9fe0cf5c06b81b378e8acc08e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3864347
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c8b0caf1
|
2022-08-29T15:08:22
|
|
Vulkan: Don't try to guess format mapping
Either the implementation should tell us what Vk format it is, or it
returns VK_FORMAT_UNDEFINED and we should take the "YUV" path,
regardless of how un-YUV-like the format ID enum suggests it is.
Bug: b/223456677
Change-Id: I979e9d19c466005350aeb8f88f2e0c092b545d51
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3864024
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Lingfeng Yang <lfy@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
Auto-Submit: Lingfeng Yang <lfy@google.com>
|
|
00411e2c
|
2022-08-25T00:00:00
|
|
Support provoking vertex state query
When ANGLE_provoking_vertex is enabled, glGetIntegerv
should accept GL_PROVOKING_VERTEX parameter name.
Bug: angleproject:2829
Change-Id: I6316de2c6b4cdbf4365df3ffb88f75c4b095f99c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3858264
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
|
|
c10326f1
|
2022-08-26T11:37:59
|
|
Make shader dump code compile after ShCompileOptions API change
Make the output directory configurable with the define
that turns on the dump feature.
Write each aggregate struct in its own block of memory, so that
if an aggregate changes, the binary format does not change
so easily.
Choose the filename based on the contents hash, so that multiple
dump sessions do not produce excessive amount of dumps.
Bug: angleproject:7612
Change-Id: Ifccd2d83e3361dc4633b601fd18f425c9ec44790
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3858263
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
2c373771
|
2022-08-30T10:08:44
|
|
Add include atomic, missing in Skia builds.
Bug: angleproject:7602
Change-Id: I024981c880ed073c3a603f47b538d2375a911e1a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3863161
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
70c434b2
|
2022-08-29T17:09:23
|
|
Check max shader storage blocks support in test
If the shader source code uses shader storage
buffer objects, we need to check the corresponding
GL_MAX_*_SHADER_STORAGE_BLOCKS is at least of size 1.
Bug: angleproject:7583
Change-Id: I7f0e537e4dcfca8414cccb0088be8d34735633d1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3863111
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ac19624e
|
2022-08-26T21:29:53
|
|
Vulkan: Handle suboptimal like out-of-date
If out-of-date can recreate the swapchain, so can suboptimal. Do so to
better support window resizing on desktop. Note that on Android this
was already being done.
Bug: angleproject:7615
Change-Id: I3d1ce8ca45b002e5382e31fda003f02753a2c94e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3859409
Reviewed-by: Steven Noonan <steven@valvesoftware.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
64f41972
|
2022-08-25T11:16:23
|
|
Use canonical gl.xml and update enum to string function.
This replaces our copy of gl.xml with the upstream canonical copy.
Note that one patch is required before we can remove ANGLE's copy:
https://github.com/KhronosGroup/OpenGL-Registry/pull/538
Because the upstream version uses a new method of enum groups, we
also update our enum-to-string generator to use the new groups.
This new code includes many more enums and groups in the mapping.
Bug: angleproject:6461
Change-Id: I1c0ab44c36afce8db04c9661b377bbe5762c913e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3856649
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
32072905
|
2022-08-25T15:17:13
|
|
d3d11: Support rendering to GL_TEXTURE_2D target for YUV images
YUV D3D11 texture plane EGLImages can be bound to TEXTURE_EXTERNAL_OES,
but don't support rendering because ExternalImageSibling11::IsYUV()
returns true. While it might appear that IsYUV() should return true for
YUV D3D11 textures, the EGLImage siblings are actually for individual
planes which are R/RG 8/16 and they can indeed be bound as render
targets if we just return false for IsYUV().
This CL makes IsYUV() return false and adds a test for rendering to
YUV EGLImages.
Bug: angleproject:7610
Change-Id: I6c95a9521448e83a53153c1efaca70bd73e49818
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3856660
Auto-Submit: Sunny Sachanandani <sunnyps@chromium.org>
Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f18b6335
|
2022-08-29T11:53:01
|
|
Replace std::this_thread::get_id() use with a unique thread id.
std::this_thread::get_id() gets recycled. It's pthread_self()
under the hood on Linux and Android which gets recycled, for
example when one thread terminates and another one starts
it is likely to return the same value.
Bug: angleproject:7602
Change-Id: I83d818bc17ead5cce8bce7f7d88fc1c7c0fa860c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3855041
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
9fb05a88
|
2022-08-26T22:26:33
|
|
Vulkan: SPIR-V Gen: Remove suppression of passing tests
Some tests were suppressed during development. Try enabling them again.
Bug: angleproject:6210
Change-Id: I7b52307a26fb9351773a591901a9c5bbb4703466
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3859411
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
b9df3551
|
2022-08-15T17:42:53
|
|
update CopyTextureCHROMIUM to match Chromium
Overview:
This CL makes the validation of *CopyTextureCHROMIUM* and
*CopySubTextureCHROMIUM* in ANGLE behave consistently with CHROMIUM.
The new behavior is:
```
INVALID_OPERATION is generated on ES 2.0 if <sourceId> refers to an
external texture (OES_EGL_image_external), <destId> refers to a texture
with an integer-type internal format, and the underlying context does
not support OES_EGL_image_external_essl3.
```
Tests:
===== CopyTextureCHROMIUM =====
add a test in ES 2.0 to test the API with the error case.
===== CopySubTextureCHROMIUM =====
add a test in ES 3.0 to test the error case. in ES 2.0, the error case
cannot happen because "glTexImage2D()" doesn't support integer formats
- ran all CopyTextureTest on gLinux: ```autoninja -C out/Debug &&
xvfb-run out/Debug/angle_end2end_tests
--gtest_filter=*CopyTextureTest* --verbose```
- ran all CopyTextureTest on Android test phone: ```autoninja -C
out/Android && out/Android/angle_end2end_tests
--gtest_filter=*CopyTextureTest* --verbose```
Bug: angleproject:4228
Change-Id: I1cb77c72750add5f399013d3d30eed7acf8d0a50
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3826166
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4b33633a
|
2022-08-26T16:16:50
|
|
Capture/Replay: Delete binary data in FinishReplay via callback
Delete callback fixes b/179188489 as delete[] will get called from the
same module where allocation happens. When decompress/delete callbacks
not provided, new[] and delete[] are called from the fixture.
AFAICT, gBinaryData == nullptr every time, even with a single test and
--gtest_repeat=N, so we never delete the uncompressed data. When
running multiple tests locally, I see RES usage grow significantly
on Linux which this CL fixes. I don't think this matters for bot runs as
we run tests one by one there.
Bug: b/179188489
Change-Id: Iee3bccb9d6d72c315c4358b70ec9c3c0ac963258
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3858185
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
cd0f642e
|
2022-08-29T17:25:33
|
|
Fix loading end2end test expectations on iOS
Need to be packed and found in the application bundle.
Bug: angleproject:5417
Change-Id: Iaf84ced0de6674a807aa747e71dbbf2715bbd6fb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3860831
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
ba4b6913
|
2022-08-23T09:34:27
|
|
Fix data race in BlobCache
* Re-enable shader cache feature
* Improve BlobCache thread-safety test
* Improve EGLProgramCacheControlTest to not check the size
of the BlobCache, since the shader cache interferes with this.
* Include the arguments to ConstructCompiler() and Compile()
in the key hash for the shader cache.
Bug: angleproject:7036
Change-Id: Ied4e11f9160552f2f9358d99b5656315239ba856
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3851161
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
|
|
5ef3960b
|
2022-08-29T12:50:26
|
|
Use correct seed type for XXH32 fuzzer
Patch by: David Kilzer <ddkilzer@apple.com>
Use unsigned int as the seed type as expected,
instead of unsigned long long. Helps compiling
with strict compile flags.
Also fix a bug where short buffers would test
XXH64 instead of intended XXH32.
Bug: angleproject:7618
Change-Id: If63318fbc932349db4ab82aa8abadc9bab655989
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3860830
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
bec40d76
|
2022-08-26T21:28:53
|
|
Vulkan: Set SPIR-V Generator version to 1
Let's call it officially no longer experimental.
Bug: angleproject:6210
Change-Id: I7c5ae91dff0ff189f93e67fe1cd0721771c67275
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3859410
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
ac2aeccd
|
2022-08-25T17:43:43
|
|
Check GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS in test
If the vertex shader uses shader storage buffer objects,
we need to check GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS
is at least of size 1.
Bug: angleproject:7185
Change-Id: I98d83f9f0cc30e92fdcaee15541fdde96652b38e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3858144
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
cb618b3d
|
2022-08-25T13:30:26
|
|
Vulkan: Remove useRelaxedPrecision
Bug: angleproject:7488
Change-Id: I30ca3e2740d8810a01615ca778eb072d77ad34d9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3856658
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2d48a370
|
2022-08-26T11:11:19
|
|
Vulkan: Support passthrough of colorspace attributes
On Android, the EGL loader supports and implements the necessary
functionality for the following colorspace extensions -
1. EGL_EXT_gl_colorspace_display_p3
2. EGL_EXT_gl_colorspace_display_p3_linear
3. EGL_EXT_gl_colorspace_display_p3_passthrough
4. EGL_EXT_gl_colorspace_scrgb
5. EGL_EXT_gl_colorspace_scrgb_linear
Add support for "EGL_ANGLE_colorspace_attribute_passthrough"
extension that allows vendors that support wide color gamut
to passthrough colorspace attribute values to the underlying
Vulkan implementation to be used during VkImage creation.
Bug: angleproject:7319
Test: PbufferColorspaceTest.CreateSurfaceWithColorspace*
Change-Id: Ibd78bb5fea4ede394f4dc5027c1d4a730746f2ee
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3855048
Commit-Queue: mohan maiya <m.maiya@samsung.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
98d5db70
|
2022-08-25T16:50:38
|
|
Add capture functions for desktop GL entry points
The parameter capture functions are left unimplemented for now.
Bug: angleproject:7533
Change-Id: Ief356e7401805cf9b417e1f5cc3790011237e03f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3858618
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
|
|
6ba8582b
|
2022-08-05T16:16:01
|
|
Add a fix on all backends for images as function arguments
The ESSL spec has a bug with images as function arguments. The
recommended workaround is to inline functions that accept image
arguments.
Bug: angleproject:7484
Change-Id: I8fc0826f330c68150de5c3d1758c10c3e37bbf04
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3813050
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
02eb5f49
|
2022-08-19T12:41:11
|
|
validation: Annotate kEnumNotSupported errors with values.
Use validationErrorF to annotate all unsupported enum errors with the
corresponding value of the enum in hex.
This makes the errors more meaningful and reduces the amount of
debugging required to find out the invalid enum used.
Add kEnumInvalid error string in cases an InvalidEnum is provided and
can't be resolved to the given GL enum.
Before:
glEnable: GL error: HIGH: Enum is not currently supported.
After:
glEnable: GL error: HIGH: Enum 0x809D is currently not supported.
Bug: angleproject:7595
Bug: angleproject:7596
Change-Id: Iff060a1c3a2f482f4df5b5b7ea036b93025df7d9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3849475
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
320bfde0
|
2022-08-22T00:00:00
|
|
Hide emulated ETC2/EAC formats from WebGL contexts
In addition to not exposing the dedicated ANGLE-specific
extension name, do not add these formats to the internal
formats table.
Bug: angleproject:7601
Change-Id: I2e3fdd99129823b8092bfa35cb95023ae5008edd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3853591
Auto-Submit: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
9d41585e
|
2022-08-12T14:20:34
|
|
Make PLS coherent on D3D 11.3
Adds a new internal memory qualifier to the compiler called
"rasterOrdered", which we set in RewritePixelLocalStorage.cpp when D3D
11.3 Rasterizer Order Views are supported. The HLSL translator then
generates RasterizerOrderedTexture2D<> instead of RWTexture2D<> when
this qualifier is set.
Bug: angleproject:7279
Change-Id: I39b8c3279b7bff93b7e57272e8fb84d9c0312616
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3830288
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
cedc23d8
|
2022-08-19T12:41:20
|
|
validation: Annotate kInvalidInternalFormat errors with values.
Use validationErrorF to annotate all internal format errors with the
corresponding value of the internal format enum in hex.
This makes the errors more meaningful and reduces the amount of
debugging required to find out the invalid format used.
Before:
glCompressedTexImage2D: GL error: HIGH: Invalid internal format.
After:
glCompressedTexImage2D: GL error: HIGH: Invalid internal format 0x8B94.
Bug: angleproject:7595
Bug: angleproject:7596
Change-Id: I6b9c116863e0116f96b8ff0e71e9734947a1c1c6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3849476
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
51de3837
|
2022-07-28T00:05:54
|
|
Enable PLS on D3D
Bug: angleproject:7279
Change-Id: Ide498e6ebadc5cd567dc64cd1efed52e777aa32e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3790473
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f6842cc2
|
2022-08-25T10:23:32
|
|
Revert override for desktop GL extensions in gl.xml.
Instead override the supported APIs in registry_xml.py, which
will transfer to using the canonical gl.xml. Note these are
desktop-GL-only extensions that ANGLE exposes in GLES:
GL_ARB_sync
GL_NV_robustness_video_memory_purge
Bug: angleproject:6461
Change-Id: I25778149ecfc3cb4be0aca2104c08273c260c564
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3856648
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Jamie Madill <jmadill@chromium.org>
|
|
68b6206e
|
2022-08-19T16:39:01
|
|
FrameCapture: Fix capturing glBindRenderbuffer on GLES1.
Use FramebufferCaptureFuncs when capturing glBindRenderbuffer calls on
GLES1 contexts, since they require the GL_OES_framebuffer_object
extension and will otherwise crash on certain native GL drivers.
Bug: angleproject:7596
Change-Id: I7be1b0dee38c9186b657489ca76bf769f47caeb1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3849478
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
|
|
80a9ee71
|
2022-08-25T01:03:09
|
|
Fix translator fuzzer
The GLSL mac-only options were being listed as unsupported only when the
output is not GLSL. However, they should also be listed as unsupported
on GLSL output when not on mac.
Bug: chromium:1355076
Bug: chromium:1355281
Change-Id: I5a87d9a529e534b2ea6c030ad7132cd0f698e7d1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3855700
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
a35728bd
|
2022-08-25T12:13:39
|
|
Skip several Multithreading Tests on SwiftShader.
Because any of the tests could flakily hang, it's better that we
skip the group entirely until we have the ability to add flaky
retries as test expectations.
Bug: angleproject:6261
Change-Id: I59d686d983ff5123a2c8cb40f3c1d808c611b20e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3856651
Auto-Submit: Jamie Madill <jmadill@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
5d62c05e
|
2022-08-24T13:17:14
|
|
Use canonical Khronos registry XML files for auto-gen.
This switches ANGLE to use the upstream XML files for the CL, EGL
GLX and WGL APIs. Since gl.xml has a few more significant diffs
from the upstream version, that work will come in another CL.
This also removes an ANGLE EGL ext that was added upstream.
Bug: angleproject:6461
Change-Id: I29ead5edc13a4256d1f702c330a5d3d233502cd4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3854318
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b688c909
|
2022-08-11T13:14:49
|
|
Capture/Replay: save and restore UNPACK_ALIGNMENT in MEC
MEC replay requires an unpack alignment of one. When creating a
trace the call to set this alignment is emitted, but it is not
actually set in the context, so that the captured context state
records the actual unpack alignment. When replaying, the call
to set the unpack alignment to one is executed, and the context
state changed, so that comparing the captured context to the
replay context will fail if the original alignement was not one.
Restore the original alinment in the context setup functions to
ensure that the context state holds the same state information
when replaying like when the trace was captured.
Bug: angleproject:7564
Bug: angleproject:7180
Change-Id: I09d9bf77bc0193bdf9f41b6183f1ee8d66c5e563
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3827346
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
a69e53c5
|
2022-08-22T16:23:08
|
|
Vulkan: Move vertex stride assert
Bug: fuchsia:107106
Change-Id: I82c34b5c450f39f2869c8fd6ae938b2cdfc5af13
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3846404
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
15b1678f
|
2022-08-19T13:13:42
|
|
FrameCapture: Add VertexArrayCaptureFuncs.
Analogously to FramebufferCaptureFuncs, append OES suffixes to vertex
array related functions on GLES1 contexts. These functions require the
GL_OES_vertex_array_object extension and will crash on certain native
drivers without the OES suffix.
This resolves the following validation error when replaying GLES1
traces captured using MEC on ANGLE:
glBindVertexArray: GL error: HIGH: OpenGL ES 3.0 Required.
Bug: angleproject:7596
Bug: angleproject:7608
Change-Id: I603efae4a8d61b84b7711effb2e7e1d8d52e3d83
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3849477
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
|
|
efa9a4d9
|
2022-08-24T22:08:38
|
|
Rename README.angle to README.chromium
The extension needs to be `.chromium` for compatibility with
tools/licenses.py
Bug: chromium:1355665
Change-Id: Iabc26bd96ec8b71cf8546ff0ec05172fb8d82ca1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3855396
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
b9bc09cb
|
2022-08-24T13:15:45
|
|
Vulkan: Always enable mVirtualBlockMutex
Right now this is only enabled if async queue submission is enabled. I
think this is a bug that we have to always enable the lock, since
suballocation destroy could come from any threads.
Bug: b/236098131
Change-Id: I0fda61e5db3ff60f776b8d4917a9f10dafed6b1a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3855203
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
d89c027e
|
2022-08-22T11:40:40
|
|
Add unimplemented GLX entry points to desktop GL
Test: Run glxgears and hit unimplemented in ANGLE
Bug: angleproject:7533
Change-Id: Ic7ed7506b6d0c5ef5022ae6899cbd6c4d351b178
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3852631
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
28600f60
|
2022-08-21T21:51:19
|
|
Test: Add Antutu Refinery trace
Test: angle_perftests --gtest_filter="*antutu_refinery*"
Bug: angleproject:7590
Change-Id: I967c72a4109baf64cda1afc3d27407286253ea35
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3844790
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
3e9d8f43
|
2022-08-23T20:00:20
|
|
Fix build with -Wextra-semi
Change-Id: Ibda56f1c3ad3e2851997cba93de5bc32b4606300
Bug: chromium:1355871
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3851180
Auto-Submit: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
|
|
5317b778
|
2022-08-23T08:58:04
|
|
Enable desktop GLSL for desktop GL frontend
Bug: angleproject:7533
Change-Id: I91bd0c217880b05683b86449a9211b9844575ebc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3850471
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
f7274de2
|
2022-08-24T14:26:50
|
|
Skip EGLMultiContextTest.ReuseUnterminatedDisplay on Pixel 4 GLES
Since it causes this combination of tests to crash there:
EGLMultiContextTest.ReuseUnterminatedDisplay/ES3_1_OpenGLES
ComputeShaderTest.ImageLoadMipmapSlice/ES3_1_OpenGLES
CopyTexImageTest.CopyTexSubImageFromCubeMap/ES2_OpenGLES_EmulateCopyTexImage2DFromRenderbuffers
Also tentatively skip on Win Intel Vulkan due to similar flakiness in:
Texture2DTest.CopySubImageFloat_RGB_RGB/ES2_OpenGL_EmulateCopyTexImage2DFromRenderbuffers
Texture2DTest.TexImageUnpackRowLengthPBO/ES2_OpenGL_EmulateCopyTexImage2DFromRenderbuffers
Texture2DTest.TexImageWithLuminancePBO/ES2_OpenGL_EmulateCopyTexImage2DFromRenderbuffers
Texture2DTest.TexImageWithRGBA4444PBO/ES2_OpenGL_EmulateCopyTexImage2DFromRenderbuffers
Texture2DTest.TexStorage/ES2_OpenGL_EmulateCopyTexImage2DFromRenderbuffers
Bug: angleproject:7602
Change-Id: I5be9e23bfabe6be345caaca3c5ca9bed19112903
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3854603
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
94a23a4e
|
2022-08-21T19:52:50
|
|
FrameCapture: Fix separable shader uniform locs
Uniform locations are tracked by traced program ID, not remapped
program ID. This was creating code that used incorrect locations
and would immediately crash.
For instance, the following code:
glProgramUniform4fv(gShaderProgramMap[92],
gUniformLocations[gShaderProgramMap[92]][12], 1,
reinterpret_cast<const GLfloat *>(&gBinaryData[0]));
gShaderProgramMap[92] happens to remap to 54 during replay.
But if you look in UpdateUniformLocation, we track uniform locations
based on the trace program (92):
// Example call: UpdateUniformLocation(92, "fullmatrix", 0, 1);
void UpdateUniformLocation(GLuint program, const char *name, GLint
location, GLint count)
{
...
gUniformLocations[program] = programLocations.data();
}
So when gUniformLocations[gShaderProgramMap[92]] is used, it tries
to look up uniform locations for 54, which don't exist, and returns
nullptr.
To fix, don't use gShaderProgramMap when looking up locations of
uniforms. This only affects separable programs. Normal glUniform
calls use gCurrentProgram which is already the trace program (92).
The new code looks like this:
glProgramUniform4fv(gShaderProgramMap[92],
gUniformLocations[92][12], 1,
reinterpret_cast<const GLfloat *>(&gBinaryData[0]));
Test: Antutu Refinery MEC
Bug: angleproject:7590
Change-Id: I079923ec8d938356e72e929d61f80c7fc371a95b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3844642
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
429a7cab
|
2022-08-21T19:50:32
|
|
FrameCapture: Fix cube face as framebuffer
This fix is required for Antutu Refinery benchmark, which has cube
faces mapped as framebuffer attachments.
Test: Antutu Refinery MEC
Bug: angleproject:7590
Change-Id: I5eec5fcbe12ac7486499b047a4b7564b3bc2690f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3844641
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
aa2a558e
|
2022-08-23T09:47:02
|
|
Vulkan: Add support for setting timestamp surface attribute
On Android the EGL wrapper handles most of the functionality required
by EGL_ANDROID_get_frame_timestamps. However if for some reason the
swapchain is recreated, the timestamp state would be lost resulting in
stuttering.
Introduce EGL_ANGLE_timestamp_surface_attribute extension that adds
support for toggling the EGL_TIMESTAMPS_ANDROID attribute of a surface.
Cache this state and recreate the swapchain accordingly.
Bug: angleproject:7489
Test: EGLSurfaceTest.TimestampSurfaceAttribute*
Test: dEQP-EGL.functional.get_frame_timestamps*
Change-Id: I3660f7137c006d904164d243a682a4ff520eabd8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3753396
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
f10625d3
|
2022-08-11T14:32:45
|
|
Enable Robustness Extension on ARM
These dEQP tests failed due to Robustness was disabled:
dEQP-GLES31.functional.debug.negative_coverage.callbacks.buffer#readn_pixels
dEQP-GLES31.functional.debug.negative_coverage.log.buffer#readn_pixels
dEQP-GLES31.functional.debug.negative_coverage.get_error.buffer#readn_pixels
dEQP-GLES31.functional.debug.error_filters#case_12
dEQP-GLES31.functional.debug.error_groups#case_12
Re-enable the Robustness Extension on ARM to check if
mali driver supports GL_EXT_robustness extension now. If it does
we can enable the robustness feature in ANGLE so that the above
dEQP tests can pass.
Bug: angleproject:7351
Bug: angleproject:4823
Bug: angleproject:2330
Change-Id: Ifce20e410607f2d4b6b3b55235081fef690c983c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3828441
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
13456bfc
|
2022-08-23T13:33:13
|
|
Propagate device type in another eglGetPlatformDisplayEXT call.
Same as https://crrev.com/c/3759712 for another test.
Also use !platformSupportsMultithreading() to skip tests.
However, need to skip separately from capture/replay where
multi-threaded tests seem to run into issues.
Bug: angleproject:7494
Bug: angleproject:7423
Change-Id: Ief87b4163aedd26b440987540c06ceb7ae8a575b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3851166
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
f0b4e8b2
|
2022-08-23T17:12:44
|
|
Fix loading ANGLE libraries on iOS
Previously end2end tests would try to load
libEGL.framework/libEGL.framework instead of libEGL.framework/libEGL
Bug: angleproject:5417
Change-Id: Iccb9ad20df980dfd460219dbcaf9b273aef9c7dc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3851164
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
41c01134
|
2022-08-23T06:00:04
|
|
Extend the image test to verify RGBX AHB and GL_RGB upload
This changes updates the RGBXAHBImportThenUpload test to do texture
upload to the right side and adds a new helper to validate the render
result on both sides to check the upload respects the GL_RGB channels.
Bug: b/238460927
Test: ImageTestES3.RGBXAHBImportThenUpload
Change-Id: I61723e7db99dab78b7828b783bb7cdf062f39ad9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3849462
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Yiwei Zhang <zzyiwei@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
df946856
|
2022-08-22T20:36:52
|
|
Map RGBX AHB to GL_RGBX8_ANGLE and fix the load function
AHARDWAREBUFFER_FORMAT_R8G8B8X8_UNORM was false mapped to GL_RGB8, which
will write back to the backing exteranl storage with 3 channel layout.
Angle actually has ANGLE_rgbx_internal_format to fix the mapping with
GL_RGBX8_ANGLE. However, the load function must align with GL_RGB8 if
the actual storage is 4 channel. This change also fixes that to use
LoadToNative3To4<GLubyte, 0xFF>.
Bug: b/238460927
Test: CtsNativeHardwareTestCases#SingleLayer_ColorTest_*_R8G8B8X8_*
Test: ImageTestES3.RGBXAHB* pass without VVL error
Change-Id: Ic5db4cb4adba252949d64e560ff32e492a045912
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3846413
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Lingfeng Yang <lfy@google.com>
|
|
b32091b4
|
2022-08-17T16:00:02
|
|
Vulkan: Bug fix related to pre-rotation code
Account for possiblity that the draw and read surfaces are different
when querying pre-rotation information. When updating
mCurrentRotationDrawFramebuffer and mCurrentRotationReadFramebuffer,
make sure to query pre-rotation information from current draw and
read surfaces.
Bug: angleproject:7581
Test: FramebufferTest_ES3.BlitWithDifferentPreRotations*
Change-Id: Ibe7a2450907e53aa5c33e13cff00059ab2f6602e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3836491
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
952d6e8f
|
2022-08-21T21:51:03
|
|
Vulkan: Workaround ARM driver bug with dynamic vertex strides
According to ARM, vkCmdBindVertexBuffers2EXT is broken when more than
one attribute binding is involved. In this change, the vertex strides
dynamic state is avoided altogether on ARM.
Bug: fuchsia:107106
Change-Id: Ie41fc07037083214d2dc99e4ed062485384911c5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3844640
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
bd1484f3
|
2022-08-22T13:53:35
|
|
Temporarily disable shader caching feature
This will be re-enabled when the BlobCache test flakes are resolved.
Bug: angleproject:7036
Change-Id: I38829ffcd5869679bf65017475e8a10d165f369b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3846403
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Reviewed-by: Lingfeng Yang <lfy@google.com>
|
|
e22eb503
|
2022-08-22T11:46:53
|
|
Metal: Report Metal being available on iOS simulator
Make Metal backend always available on iOS simulator.
Currently the GPU family query is not useful as it
does not return anything that would enable Metal
ANGLE to be used. However, testing on iOS simulator
is still useful.
Bug: angleproject:7591
Change-Id: I0aa881bb7482fc63bbaa08d5efc10920b3c1af43
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3845154
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
a8ffbef8
|
2022-08-19T21:02:14
|
|
Roll VK-GL-CTS from 5a93cd60f33b to 435ebaff9214 (5 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/5a93cd60f33b..435ebaff9214
2022-08-19 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main
2022-08-18 piotr.byszewski@mobica.com Add coverage for MaxAtomicCounterBufferSize
2022-08-18 piotr.byszewski@mobica.com Check that image*Shadow are not reserved keywords
2022-08-18 piotr.byszewski@mobica.com Fix vkGetPhysicalDeviceProperties2 query
2022-08-18 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll
Please CC angle-bots+autoroll-info@google.com,syoussefi@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: angleproject:7592
Change-Id: I87bd89dd6ad63e2fa28ae87cdd4a91555d56e203
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3842857
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
caf2b427
|
2022-07-01T18:17:30
|
|
Vulkan: Add feature to use PASS_THROUGH for EGL_NONE color spaces
This is a temporary solution to fix media tests until ANGLE
also has the ability to query the "preferred color space" from
Surfaces.
Bug: b/235995022
Test: Launch Cuttlefish with this change and the feature enabled
with aosp/2167231
Test: cts -m CtsMediaCodecTestCases
-t android.media.codec.cts.EncodeDecodeTest
Test: cts -m CtsMediaCodecTestCases
-t android.media.codec.cts.DecodeEditEncodeTest
Change-Id: I17d1a2c1701cd1707b34f5bf2f222e9ad57c7a61
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3770291
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Commit-Queue: Jason Macnak <natsu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Lingfeng Yang <lfy@google.com>
|
|
f30cfd18
|
2022-08-16T16:50:33
|
|
Perf and gold tests detect test SKIPs from json results.
Make angle_test_util.RunTestSuite() gets and returns json results
(using --isolated-script-test-output).
perf tests has an additional special case
(filed https://anglebug.com/7578):
Previously when metrics were missing it was assumed that this was due to
tests being skipped - which seems to currently be the case except for
the special case of GLMark2Benchmark* tests. Those produce .fps/.score
metrics instead of the metrics expected by this script. This CL keeps
those tests running (once) but then marks them as SKIP in test results
when no metrics are found (which is the behavior before this CL; it
might actually make more sense to count this as PASS because everything
matches our expectations).
We're still running them once, so if they FAIL we'll get notified.
gold tests:
Use json results file instead of checking for '[ SKIPPED ]' in stdout.
Bug: angleproject:7299
Bug: angleproject:7578
Change-Id: Ia751784ad1aa94dc855c8b58ebfe5ba3e06e462f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3826167
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
31ac3fef
|
2022-08-21T21:30:53
|
|
Lift suppression of passing test
Bug fixed in
https://chromium-review.googlesource.com/c/angle/angle/+/3835168, but a
suppression for the test landed in the meantime
Bug: angleproject:7583
Change-Id: I14a3e59a6270bfee8288dd733938a18cbf491c20
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3844638
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
b9c3c5d6
|
2022-08-18T13:38:49
|
|
Metal: Fix MTLArgumentEncoder leak in InitArgumentBufferEncoder
Patch by David Kilzer <ddkilzer@apple.com>
Metal functions with "new" prefix return objects with refcount +1.
Adopt the ref to the ObjCObj smart pointer.
Bug: angleproject:7577
Change-Id: I57b1ac031aa9cf179288879359d3c88dbd168caa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3834820
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com>
|
|
9a258281
|
2022-08-17T17:47:22
|
|
Fix submit-count perf counter test on ARM
On ARM, the preferSubmitAtFBOBoundary feature causes extra submissions
that need to be taken into account.
Bug: chromium:1337538
Change-Id: Id545ee3e65fc943aff51ea3721e9c19bc0afd4a5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835168
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
4330a827
|
2022-08-19T02:59:26
|
|
Reland "Vulkan: Use VK_EXT_primitive_topology_list_restart"
This reverts commit 29d18b303189bf31b3af3a85c3df6013114eebc8.
Reason for revert: Fixed VVL suppressions not working
Original change's description:
> Revert "Vulkan: Use VK_EXT_primitive_topology_list_restart"
>
> This reverts commit e79c9cd63053b6cb7c33235f3a0a0310255df073.
>
> Reason for revert: Causing timeouts on some headless tests: anglebug.com/7579
>
> Original change's description:
> > Vulkan: Use VK_EXT_primitive_topology_list_restart
> >
> > From ANGLE's point of view, there is nothing to do with this extension
> > other than enable a feature that silences a validation error.
> >
> > Bug: angleproject:3832
> > Change-Id: I094343d09c322e2848a65a5bc775d0f21388fb46
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3562380
> > Reviewed-by: Jamie Madill <jmadill@chromium.org>
> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> > Reviewed-by: mohan maiya <m.maiya@samsung.com>
>
> Bug: angleproject:3832
> Change-Id: Ifec7c9eaea1d3a949f15e0b6d868742f53cf8377
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3838391
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: angleproject:3832
Change-Id: Ia79b1f3b716f0df1991f605704135b4af48fb639
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3841366
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
6d153b7d
|
2022-07-06T12:34:22
|
|
Implement BaseInstanceEXT Capture Entry Points
In order to support Capture/Replay of apps that use GL_EXT_base_instance
functions, their GLES EXT Capture functions should be implemented.
Bug: angleproject:7477
Change-Id: Idb96b66ca5a7c96f1883402e62934acc33bd24c0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3749796
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
29d18b30
|
2022-08-18T18:18:04
|
|
Revert "Vulkan: Use VK_EXT_primitive_topology_list_restart"
This reverts commit e79c9cd63053b6cb7c33235f3a0a0310255df073.
Reason for revert: Causing timeouts on some headless tests: anglebug.com/7579
Original change's description:
> Vulkan: Use VK_EXT_primitive_topology_list_restart
>
> From ANGLE's point of view, there is nothing to do with this extension
> other than enable a feature that silences a validation error.
>
> Bug: angleproject:3832
> Change-Id: I094343d09c322e2848a65a5bc775d0f21388fb46
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3562380
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: mohan maiya <m.maiya@samsung.com>
Bug: angleproject:3832
Change-Id: Ifec7c9eaea1d3a949f15e0b6d868742f53cf8377
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3838391
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
eb8488e1
|
2022-08-18T15:43:49
|
|
Skip end2end failures on Pixel 6 Android 13 TP1A.220624.021
Bug: angleproject:7583
Change-Id: Ib9a44c222207b6f2c70733738f1c440c6d6a7ce8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3838857
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
955adb77
|
2022-08-12T10:14:48
|
|
Cache compiled shader
By storing the compiled shader in the blob cache, the time to
recompile the same shader is reduced.
Based on work by <hckim.kim@samsung.com>
Bug: angleproject:7036
Change-Id: I884ae40e715c49a9ccd12903012e8327811e3557
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3808235
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
2965f81b
|
2022-08-16T15:26:22
|
|
Remove suppression of previously crashed deqp test
dEQP-GLES31.functional.shaders.linkage.es31.tessellation.varying.rules#internal_different_precision
was fixed in a recent check-in at https://crrev.com/c/3780874.
Remove the suppression in the test expectation file.
Bug: angleproject:6908
Change-Id: I41025c2555e0c21ff8faaa888842201d26499205
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3828139
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
266d0a83
|
2022-08-09T22:08:03
|
|
Skip glObjectLabel in replay capture
Similar entry points are also skipped, so it's likely the list was just
missing this one.
Bug: angleproject:7567
Change-Id: I1d7e37b35960fd71fdec9143d9193dee6f97e1f1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3824777
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
eb535deb
|
2022-08-17T16:59:57
|
|
Don't set the framebuffer read buffer dirty bit on ES2.
glReadBuffer is not added until ES3. Make sure we don't tell the
backend to synchronize the read buffer state unless it's supported.
Bug: chromium:1346132
Change-Id: I9836d6baac5a250c1fddf5d3ec6d395228e118db
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835167
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
7a87e90d
|
2022-07-16T11:39:08
|
|
An inactive but alive thread shouldn't prevent cleanup
1. Acquire EGL global lock before thread cleanup and remove
all clean up related mutexes
2. Mark contexts that are not current as invalid during terminate
3. During thread exit, if there are other active threads, terminate
with TerminateReason::InternalCleanup. This gives an opportunity
for well behaved threads to cleanup up invalid objects.
Bug: angleproject:6723
Bug: angleproject:6798
Test: EGLContextSharingTestNoFixture.InactiveThreadDoesntPreventCleanup*
Change-Id: I418e5f8b486d3d309bd58c4cfb04b7dc1149ffc1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3768667
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
6a8bd801
|
2022-08-17T11:18:31
|
|
Add process_angle_perf_results.py to perf tests data.
analyze step doesn't currently trigger angle_perftests on changes to
process_angle_perf_results.py
Example:
https://crrev.com/c/3835162/2
https://ci.chromium.org/ui/p/angle/builders/try/linux-test/7791/overview
(so I had to https://crrev.com/c/3835162/3)
Bug: chromium:1346781
Change-Id: Id991facedd48036a5c072d910aeb8488712516f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3835163
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
213a1ee6
|
2022-08-16T12:44:35
|
|
Vulkan: Enable VK_EXT_primitives_generated_query
Added a test to make sure PGQ works with indirect draws too.
Bug: angleproject:5430
Change-Id: Ic91e11906ca34c4f9a50f3442709e544f7f6744c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3826165
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
a216cfe8
|
2022-08-08T21:05:00
|
|
Adding angle_perftests test case names in logcat
Overview:
In logcat, we want to know which test is being executed.
The CL
1. makes *ANGLEPerfTest* print the test name
2. wire the trace names in *TracePerfTest* as test names to
*ANGLEPerfTest*
Local Test:
==== Test 1 ====
- use this build args: http://go/paste/5111738277036032
- ```autoninja -C out/Android && ./out/Android/angle_perftests
--gtest_filter="*angry_birds*" --verbose```
- Wait for the test to complete, then run ```adb logcat -d | grep
running```
- 4 tests were executed:
```
solti@solti:~/angle$ adb logcat -d | grep running
08-11 18:13:49.757 7690 7721 I ANGLE : running test:
TracePerf_Run/vulkan_angry_birds_2_1500
08-11 18:13:59.914 7690 7721 I ANGLE : running test:
TracePerf_Run/native_angry_birds_2_1500
08-11 18:14:21.265 7690 7721 I ANGLE : running test:
TracePerf_Run/vulkan_angry_birds_2_launch
08-11 18:14:48.030 7690 7721 I ANGLE : running test:
TracePerf_Run/native_angry_birds_2_launch
08-11 18:14:58.296 1525 1525 E JobScheduler.Quota:
<0>com.google.android.apps.docs has 0 EJ quota without running anything
08-11 18:14:58.296 1525 1525 E JobScheduler.Quota:
<0>com.google.android.apps.docs has 0 EJ quota without running anything
08-11 18:14:58.297 1525 1635 E JobScheduler.Quota:
<0>com.google.android.apps.docs has 0 EJ quota without running anything
solti@solti:~/angle$
```
==== Test 2 ====
- follow
http://docs/document/d/1W3E7e-YcR5noim_poM0f7Dc0W8AdQDbJ2tFSPXgjpH0?
resourcekey=0-VmGDLI3x0q4-sdpQ0n8GSA
- setup out/AndroidPerformance
- run cmd: ./out/AndroidPerformance/angle_perftests
--gtest_filter="*angry_birds*" --verbose --local-output
--verbose-output --shard-timeout 100000 --max-steps-performed 1
- then, run cmd: ```adb logcat -d | grep running```
- confirmed the test names are printed
```
solti@solti:~/angle$ adb logcat -d | grep running
08-11 18:22:50.698 8496 8525 I ANGLE : running test:
TracePerf_Run/vulkan_angry_birds_2_1500
08-11 18:22:51.599 8496 8525 I ANGLE : running test:
TracePerf_Run/native_angry_birds_2_1500
08-11 18:22:51.917 8496 8525 I ANGLE : running test:
TracePerf_Run/vulkan_angry_birds_2_launch
08-11 18:22:52.362 8496 8525 I ANGLE : running test:
TracePerf_Run/native_angry_birds_2_launch
solti@solti:~/angle$
```
==== Test 3 ====
- build a Linux build, using the args: http://go/paste/5953043785842688
- run the same test with cmd: xvfb-run ./out/Debug/angle_perftests
--gtest_filter="*angry_birds*" --verbose | grep "running test"
- confirmed the message is printed: http://go/paste/5800151735074816
Bug: angleproject:6353
Change-Id: I6118a75f54b1648923cb5fe541633d7dd52b20bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3817409
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
7c66d77d
|
2022-08-16T15:06:29
|
|
Avoid logging None introduced in https://crrev.com/c/3831885
Currently prints:
Test 5/97: DrawCallPerfBenchmark.Run/gles_null_uniform: None
Wasn't printing anything before, so this CL goes back to that.
Bug: angleproject:7299
Change-Id: I8270129958a93e5c3fbb6cac321fe7e2396a6376
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3834068
Commit-Queue: Roman Lavrov <romanl@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Roman Lavrov <romanl@google.com>
|
|
c5efd2b5
|
2022-08-15T16:20:25
|
|
Improve Ctrl-c handling.
1. Restore original handlers after subprocess terminates. Otherwise the
installed handlers persist and will swallow sigint outside of
subprocess invocations.
2. Raise KeyboardInterrupt when subprocesses terminate to interrupt the
script itself. run_perf_tests.py allows for some subprocess failures
(--max-errors, with non-zero default). This results in ctrl-c
interrupting subprocesses but the script just marks the test as FAIL
and keeps running.
Bug: angleproject:7299
Change-Id: I2917008baa389491c7591596fc14ee139fa6417e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3831887
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
e79c9cd6
|
2022-03-30T23:06:54
|
|
Vulkan: Use VK_EXT_primitive_topology_list_restart
From ANGLE's point of view, there is nothing to do with this extension
other than enable a feature that silences a validation error.
Bug: angleproject:3832
Change-Id: I094343d09c322e2848a65a5bc775d0f21388fb46
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3562380
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: mohan maiya <m.maiya@samsung.com>
|
|
428b6788
|
2022-08-15T17:54:27
|
|
Update CHROMIUM_copy_texture.txt to match the code
[Overview]
The internal format list in the code mismatches the one in the spec txt.
see the link below for the missing formats in the spec txt:
- http://screen/vDkHo3MFXpE3eQF.png
Therefore the CL is matching the spec txt to the code.
[Test]
CQ DRY RUN completed and passed
Bug: angleproject:4228
Change-Id: Ib66fb00b65ce2164779ca7649ec0652910a8e467
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3830892
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8878366f
|
2022-08-15T11:51:00
|
|
Refactor to reduce main loop complexity.
Bug: angleproject:7299
Change-Id: I157e84b7a6718d59eecb00471d4ec7ae5b3317cf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3831885
Commit-Queue: Roman Lavrov <romanl@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
ad6513fe
|
2022-08-16T16:06:19
|
|
Unconditionally enable EGL_ANGLE_iosurface_client_buffer on macOS
EGL_ANGLE_iosurface_client_buffer does not depend on
VK_EXT_external_memory_host. Locked IOSurface memory gets copied to/from
staging images instead of being imported as device visible host memory.
Bug: chromium:1352481
Change-Id: I904e6af53e169ef04446181de91db6f3cdc31530
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3826164
Auto-Submit: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2089943b
|
2022-08-13T21:48:33
|
|
Tests: Add Lumino City trace
Test: angle_perftests --gtest_filter="*lumino_city*"
Bug: angleproject:7571
Change-Id: I206b965712b8f833874069bbcec0c93fc7ee5087
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3829135
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
b9fd47b8
|
2022-08-12T10:55:49
|
|
Not use Android TLS slot for chromium
In the profile, GetGlobalContext() & GetValidGlobalContext() have
extra overhead for checking angle::gUseAndroidOpenGLTlsSlot.
Since angle::gUseAndroidOpenGLTlsSlot is always false for now,
so add a build flag to disable it for chromium build.
In the profile, with angle_use_android_tls_slot = false,
GetValidGlobalContext() is reduced from 0.153% to 0.044%.
Bug: chromium:1336126
Change-Id: Id5e1752b0a03289fb299e8de2ed6e962e35291c0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3827955
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Peng Huang <penghuang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
64c652d7
|
2022-08-12T18:14:39
|
|
Use stdout instead of (default) stderr in logging.StreamHandler
Currently logging output appears before stdout on bots,
makes logs so confusing as subprocess logs get out of order with logs
from python. Using StreamHandler(stdout) seems to be the common practice
in other python scripts in code search.
Note: subprocess's stderr is redirected to stdout:
https://crsrc.org/c/third_party/angle/src/tests/py_utils/angle_test_util.py;drc=2de8bb42a9ef93dfafe476e7dc81643285fa7ef1;l=92
Bug: angleproject:7299
Change-Id: I825f16d9c479f33a280d8fdbafb8297cda0c18b8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3827957
Auto-Submit: Roman Lavrov <romanl@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
4c941149
|
2022-08-12T11:42:07
|
|
External Texture Support In MEC
Bug: angleproject:4964
Change-Id: I5cfbadf515a30fb20d75b2d745fdecdafa12268f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3812378
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Auto-Submit: Faye Zhang <ffz@google.com>
Commit-Queue: Faye Zhang <ffz@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
02d79c32
|
2022-08-12T11:21:04
|
|
Skip kotor trace on Swiftshader due to flakiness
After changing the driver uniforms to push constants, the kotor
trace became flaky on Linux/Swiftshader. In this CL, the flaky test
is skipped.
Bug: angleproject:7565
Change-Id: Ia3deb1344ce2dfb8cec443d197b0f95788a12599
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3829907
Reviewed-by: Roman Lavrov <romanl@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
44791792
|
2022-08-12T00:13:45
|
|
Use angle::FlatUnorderedSet for ImageSibling::mSourcesOf
As my test with Chromium on Android, ImageSibling::mSourcesOf only
contains one item, so change it to angle::FlatUnorderedSet with
default size 2.
Bug: chromium:1336126
Change-Id: Ie1ba3ebb195170ad5c9f4713b599a91de5052702
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3828444
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Peng Huang <penghuang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a9fac249
|
2022-08-12T07:01:42
|
|
Use FixedVector for Framebuffer::mDirtyColorAttachmentBindings
Bug: chromium:1336126
Change-Id: Ie997af106de09468c8520187190a857db099dff9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3829144
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Peng Huang <penghuang@chromium.org>
|
|
afdd5106
|
2022-08-11T21:14:23
|
|
Use angle::FlatUnorderedMap in Display.cpp
Bug: chromium:1336126
Change-Id: I57d97d37749de2abbba88b6558bde31fa8346764
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3828442
Commit-Queue: Peng Huang <penghuang@chromium.org>
Auto-Submit: Peng Huang <penghuang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2ebd5100
|
2022-08-11T10:43:32
|
|
Add gl::Context as a parameter to Shader::resolveCompile
This prepares us to access the Context's shader cache in resolveCompile
in the next commit.
Bug: angleproject:7036
Change-Id: I7995c54b290a5a48f0c8985cb56ea0048598ab2f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3827642
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
61a17ba9
|
2022-08-11T11:23:10
|
|
Use angle::FlatUnorderedSet for ImageState::targets
In mose cases, chrome only needs 1 or 2 targets for an EGLImage,
so using angle::FlatUnorderedSet with 2 default size instead of
the std::set for targets.
Bug: chromium:1336126
Change-Id: Ieff3cfbd5d020fda3aaecb162ddb354def14d962
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3827681
Auto-Submit: Peng Huang <penghuang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
58392791
|
2022-04-07T16:14:12
|
|
Translator: Fix crashes with monomorphizing loops
Monomorphize functions crashes when trying to deep-copy a while loop,
and a continue statement. Null check these values before performing
a copy, as this is still valid AST syntax.
Bug: angleproject:7190
Change-Id: I822c0aa062ed844f86aa2b603899d73cbd48255e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3573079
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Kyle Piddington <kpiddington@apple.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
4c6f7d8e
|
2022-08-10T15:21:57
|
|
Vulkan: Never stage update for EGLImage
EGLImage could be shared between contexts in different share groups. If
we stage any update in the ImageHelper for such EGLImage, then you may
run into threading bugs when two textures are trying to flush out the
staged update at the same time. There is no evidence showing we are
running into this issue, but this CL forces this requirement.
Bug: b/169868803
Change-Id: Ie26542225705ee4638ca1b3cf3cc5af499685137
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3824159
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c9360ccb
|
2022-08-10T16:05:49
|
|
Reflect TextureD3D label updates with storage object
When developers change a label with the KHR_debug extension,
TextureD3D calls TextureStorage::onLabelUpdate. However, onLableUpdate
was still using the out of date member variable (mTextureLabel) that
was set in the constructor.
This change adds a setLabel method to the TextureStorage class which
properly updates the texture label member variable. Calls to
onLabelUpdate now retrieve the most up-to-date label.
This change also renames TextureStorage::mTextureLabel to
mKHRDebugLabel to make it more clear which label was being stored.
Bug: angleproject:7569
Change-Id: I6bc65c35dfb2237b5da88a6ed0e2d872a14857ba
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3825357
Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
4a636cdd
|
2022-07-20T22:44:30
|
|
Require all PLS formats to consume exactly 4 bytes of storage
D3D 11.0 UAVs only support R32_FLOAT, R32_UINT, R32_SINT formats.
EXT_shader_pixel_local_storage explicitly states that all PLS variables
consume exactly 4 bytes.
ESSL images can only have both read and write access if their format is
r32f, r32i, r32ui. (We were able to circumvent this via aliasing, but it
was a huge source of bugs.)
There is a large precedent for only supporting 4 bytes of storage in the
capabilities we use for PLS, so this CL removes support for all PLS
storage formats that are not 4 bytes. It also implements an "R32" mode
for PLS, that does manual packing and unpacking of r32* image formats.
If the application wants larger formats, it can always define multiple
PLS planes and piece them together.
Next up we ought to be able to support rg16* types with more
packing/unpacking.
With aliasing gone, and with a bit of tweaking, the PLS tests now pass
on the Pixel 4 GLES bot.
Bug: angleproject:7279
Bug: angleproject:7388
Bug: angleproject:7524
Bug: angleproject:7527
Change-Id: I6b8f62c2428ade6cb5413e33360d734e55dda0eb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3782579
Reviewed-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
badfeecd
|
2022-08-10T14:38:43
|
|
Vulkan: Destroy fb1 should not affect fb2 with same attachments
If two FBOs has the same attachments. they will share the same
VkFramebuffers. Destroy one fbo should not cause trouble for the other
fbo.
Bug: chromium:1351170
Change-Id: I032da8cc12eb8556c3e325c8fd7a3de9974ae909
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3824302
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
fa3d7d5c
|
2022-08-05T00:57:40
|
|
Make PLS coherent on Vulkan
Uses the VK_EXT_fragment_shader_interlock extension to make the shader
image implementation of PLS coherent on Vulkan.
This extension is supported on AMD, Apple, NVIDIA, and Intel.
Bug: angleproject:7279
Change-Id: Ic0253eb20932eb6be0b1f433ba454e48b57be2f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3813816
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
aef9603f
|
2022-08-02T18:30:08
|
|
Separate Struct declarations earlier
Metal translator backend asserts with compound struct definitions.
Move SeparateCompoundStructDeclarations before
SeparateCompoundExpressions. This change does revert some changes
for angleproject:6386, but the tests fixed there continue to pass.
Bug: angleproject:6489
Change-Id: I6adc606ac0b14453eb5e3e90f6501bf02c2d2768
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3806616
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Gregg Tavares <gman@chromium.org>
Commit-Queue: Kyle Piddington <kpiddington@apple.com>
|