|
7e490550
|
2021-10-06T11:16:08
|
|
Cleanup Android/Vulkan deqp_egl_test_expectations.txt
There are several bugs marked as "fixed", but still have tests marked as
fail/skip in deqp_egl_test_expectations.txt. This CL cleans those
up.
Note that "cleanup" in this case means restricting the fail/skip to just
NEXUS5X, since many are still failing on that device. This CL doesn't
look to make the list exactly correct, since that testing on that device
is in the process of being deprecated anyway.
Bug: angleproject:2546
Bug: angleproject:2635
Bug: angleproject:2715
Bug: angleproject:3081
Bug: angleproject:3270
Bug: angleproject:6533
Change-Id: I6cb9444727671997b38770f8d7ba5b3c6a1b019a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3208512
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
66c89b0f
|
2021-10-06T16:28:42
|
|
Fix and disable MSVC warnings
Needed because some warnings are no longer disabled after
http://crrev.com/c/3189512.
Also includes https://github.com/KhronosGroup/OpenCL-Headers/pull/179,
needed after clang upgrade to llvmorg-14-init-5410-gd0473681
Bug: chromium:1257173
Change-Id: I4f844aa972362c488cb6d37244439e2126f2c1c3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3210629
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
161668b6
|
2021-10-06T21:12:39
|
|
Refix ANGLE_DISABLE_POOL_ALLOC build
mAlignmentMask was removed in the normal path, but wasn't entirely from
this path. This change cleans that up.
Bug: angleproject:3167
Change-Id: I34474c114cd50cf94c5bc3c22ad4548414e9baac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3210627
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
d14d0c39
|
2021-10-06T20:41:12
|
|
Redisable PoolAllocatorAlignmentTest.Alignment in Debug
Was enabled by crrev.com/c/3206255, but fails.
Bug: angleproject:3167, chromium:1257395
Change-Id: Ibe34128c4479c7c2706270e04ef39b5ec29eb1a9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3210013
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
9a776e89
|
2021-10-06T18:08:18
|
|
Fix ANGLE_DISABLE_POOL_ALLOC build
Broken by crrev.com/c/3206255
Fails rolling into Chromium in crrev.com/c/3208847 on
linux-libfuzzer-asan-rel and win-libfuzzer-asan-rel.
Bug: angleproject:3167
Change-Id: If5d085492dfa87120c7c24a7102161d625d68e4e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3209966
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
7b19a535
|
2021-10-06T17:13:52
|
|
Fix iOS build
Broken in crrev.com/c/3206017.
ANGLE roll into Chromium crrev.com/c/3208766 fails on ios-simulator
due to unused function OperatingSystemVersionNumbers.
Bug: chromium:1255114
Change-Id: I2cca5e3cd922733950a51bbc08bf9f41558f8436
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3209207
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
26f9041b
|
2021-10-06T16:50:47
|
|
DisplayVk: Always expose EGL_KHR_gl_colorspace.
In the case of the sRGB color space the VK_EXT_swapchain_colorspace is
actually not required to create a swap chain.
The requirement should be lowered and VK_KHR_get_surface_capabilities2
should be used to enumerate if the color spaces from
VK_EXT_swapchain_colorspace are available.
Bug: angleproject:2514
Bug: b/201993125
Change-Id: Id0d8be05016d3833d14395f6638b85110615164b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3208689
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
207906c1
|
2021-10-05T15:09:38
|
|
Clean up Metal test expectations.
Before switching to the direct metal backend, we should clean up
some passing test expectations so we can track the new test
results post-switch.
TBR: ynovikov@chromium.org
Bug: angleproject:6467
Bug: angleproject:6466
Bug: angleproject:6485
Change-Id: I33e0bd48b41906eb11cc4de09bf86f3ebd44a24f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3206691
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Gregg Tavares <gman@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
84f601eb
|
2021-10-06T13:23:21
|
|
Lift Intel specific test expectations.
Bug: angleproject:2349
Change-Id: Ib0b6356424452740150b0913e61507839961cf85
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3209087
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4e22c2c3
|
2021-01-19T12:42:38
|
|
EGL: Merge DisplayAndroid/Gmb into DisplayEGL.
These classes classes have a lot of duplicated code for no reason.
DisplayGmb still needs more work.
Bug: angleproject:5563
Change-Id: Ia3d3d7f0bd7c03b4ac1aece4369c49118426b9de
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3140498
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Maksim Sisov <msisov@igalia.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
d920e4d1
|
2021-10-05T22:36:06
|
|
Assert that float32->float10/11 doesn't shift by more than 32
some_uint32_value >> 32 has undefined behavior. The code that converts
float32 to float10 and float11 should not be shifting by values larger
than 32, and this change asserts that.
Bug: angleproject:4962
Change-Id: I9f2a914bad7084157cc35a8fb7f0be6f448a854b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3207528
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
|
|
8906f242
|
2021-10-05T15:20:33
|
|
Change default alignment of pool allocator to pointer-aligned
The translator uses the pool allocator with its default alignment. The
alignment was previously 16, which is unnecessary. That is changed to
sizeof(void *) such that allocations are pointer aligned.
Running TracePerfTest.Run/vulkan_manhattan_10 on Linux, the total size
of allocations made by this class for the translator goes down from
376832 bytes to 360448 bytes for a ~4.3% improvement.
Bug: angleproject:3167
Change-Id: I72c13bc78c1a4ba7c800eccdac82de39c25795f1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3206256
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
71984bff
|
2021-10-05T14:59:26
|
|
Reduce memory waste in PoolAllocator due to alignments
Prior to this change, the PoolAllocator wasted memory in alignments.
This was due to the fact that alignment was made to the wrong values,
and they were fixed with more alignments and conservative extra space
allocations.
This change makes sure that alignment is applied once, and such that the
actual pointer that needs to be aligned is aligned, not the header that
might come before it, and that allocation size is calculated precisely.
This improves memory allocation by reducing waste, but only affects
the use of the pool in the translator, as Vulkan secondary command
buffers (the other user) use an alignment of 1 and take a different
path.
Running TracePerfTest.Run/vulkan_manhattan_10 on Linux, the total
size of allocations made by this class for the translator goes down from
466944 bytes to 376832 bytes for a ~20% improvement.
Bug: angleproject:3167
Change-Id: Ib4e6fd23ac32c8fb21810b20cd383758b8bff47f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3206255
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
1cd6708a
|
2021-10-05T10:24:35
|
|
Clean up the PoolAllocator class
Many things were unnecessarily in the header and are now moved to the
source file.
Bug: angleproject:3167
Change-Id: I52b83fdde5b6e984c5f5491c2ce050debf78f8b8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3206072
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
1b669f5d
|
2021-10-05T15:55:58
|
|
Add test names and metric names for BitSetIteratorPerf.
New names are like so:
[ RUN ] BitSetIteratorPerfTest/BitSetArray_96.Run
*RESULT BitSetIteratorPerfTest/BitSetArray_96.wall_time: run= 8609.2511842004 ns
.. etc ...
Bug: angleproject:2244
Change-Id: I461f52a0ee098875544203c618c6b24598281f73
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3206257
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d78bd836
|
2021-10-05T16:10:27
|
|
win: Remove call to deprecated GetVersionEx
Bug: chromium:1255114
Change-Id: Ie0539205d5547b1da05ec957096a369f7d9ababe
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3206017
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
dba896cf
|
2021-10-04T22:17:48
|
|
Vulkan: Suppress modified device count warning
This is a loader warning added in the following commit:
https://github.com/KhronosGroup/Vulkan-Loader/commit/8daad81803f5ed9b36a172c299140dde7a8c4494
It fires on our corp laptops that contain multiple GPUs (one
high-performance, one integrated). Most likely caused by Nvidia's
Optimus Vulkan layer.
It doesn't quite match the patterns of validation layers, but is
straightforward to skip by searching for the beginning of the
message.
Bug: angleproject:6514
Change-Id: Ia93896364cae9e879faf068a100064f2edd04af2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3204141
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
daaaba0a
|
2021-10-04T22:28:56
|
|
Translator: Fix uniform/struct separation for anonymous arrays
When a uniform array of anonymous structs was separated into a struct
declaration and uniform array, the uniform symbol was being replaced,
but not the intermediate nodes that index it. This caused an AST
validation error.
Bug: angleproject:4740
Change-Id: Ib9d0115bd01c39d1a007f644e46b5e35c12c9304
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3204590
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
27a98cf4
|
2021-10-04T23:39:16
|
|
Vulkan: Allow debug labels inside render pass
Debug groups and events were previously recorded to the outside-RP
command buffer. With this change, they are inserted in the RP command
buffer if render pass has started, or outside-RP command buffer
otherwise. This creates a more accurate view of groups the application
creates.
Bug: angleproject:4597
Change-Id: If165bb88e3e66219bad2fe4acc1cc4653c97fb1b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3204591
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
dde409be
|
2021-10-04T22:05:47
|
|
Translator: Produce error on func(void, int)
If void is specified, another parameter cannot follow. This change
ensures that this produces an error.
Bug: angleproject:6338
Change-Id: I18602ea4b52c96e498f4f2dc627d4ba2210d6fa7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3203795
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0364270d
|
2021-10-04T17:54:03
|
|
Alignment fix for IOSurface
A wrong alignment was causing an issue in some tests.
This CL doesn't fix any single WebGL conformance test
entirely, but it fixes 564 of the 1292 failing sub-cases
within the conformance/textures/webgl_canvas/* category.
Bug: chromium:1099979
Change-Id: Id6051b24cb3c335d2f97f2c38c8de1dc7afde52f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3203790
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Alexis Hétu <sugoi@chromium.org>
|
|
ab7b5838
|
2021-10-05T10:58:10
|
|
GL: Remove old NVIDIA workaround.
This affects drivers from ~ early 2017. These drivers should be
fairly rare by now.
Bug: angleproject:2059
Change-Id: I0d086ee00a0cc0c38ffdbf2294341fe832f80fd7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3206070
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
dccc0f8c
|
2021-10-05T09:22:19
|
|
Add docs for DXGI and D3D11 format tables.
Bug: angleproject:1691
Change-Id: I7a07228853aaf8f1536b145657a737dcf3e0e1f1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3205798
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
18aa5d22
|
2021-10-05T08:40:48
|
|
dEQP 3.1: Lift NVIDIA/Win/GL expectation.
Should be fixed on the bots now.
Bug: angleproject:1665
Change-Id: I70431434ac57dae3330c486d42b964b94a237491
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3205796
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
234ebd58
|
2021-10-05T08:34:12
|
|
Lift old AMD/Win/GL expectations.
No longer tested on the bots.
Bug: angleproject:1643
Change-Id: I5e1ca8b9c2f673ebcb44c67879829f9fd346edf0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3205795
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
831f017e
|
2021-10-05T08:05:52
|
|
Lift AMD desktop GL DrawBuffersTest expectations.
We no longer test on this config.
Bug: angleproject:1533
Bug: angleproject:1535
Change-Id: Iba45a9426ba316e5c83f4501918070f6439daae9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3205793
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
d4d4808f
|
2021-10-04T18:15:04
|
|
Capture/Replay: Update more expectations and add bugs
Bug: angleproject:6180
Bug: angleproject:6221
Bug: angleproject:6286
Bug: angleproject:6425
Bug: angleproject:6510
Bug: angleproject:6511
Bug: angleproject:6512
Bug: angleproject:6513
Bug: angleproject:6521
Change-Id: If360279bfb1d6f9a1cb3be336e85b29f64b580c8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3200615
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
|
|
9a455825
|
2021-10-05T07:51:31
|
|
dEQP: Enable Android mipmap tests on GLES.
These should be running correctly on the Pixel 4.
Bug: angleproject:1529
Change-Id: Ieb55b63d8934d8dd2c516c0f1ce71e84584d4471
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3205791
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f85ec039
|
2021-10-05T07:42:41
|
|
Lift failing Android expectations.
These failures were related to the N5X.
Bug: angleproject:1488
Change-Id: I57b8fdeb914a8e33793b0cd011255205baf7858f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3205790
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a49394ae
|
2021-10-04T16:30:58
|
|
Lift failing Android test expectations.
These were in the fbo.completeness.renderable.texture group.
Bug: angleproject:1487
Change-Id: I96f7e4428ebe4e018bdaee7f4ba5fd3bba131405
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3203210
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f00f1009
|
2021-09-30T18:59:25
|
|
Capture/Replay: Fix readback of zero-sized renderbuffers
Only read back the renderbuffer content if the renderbuffer has a
non-zero size. Add a test to test the capture/replay in this case.
Bug: angleproject:6425
Change-Id: I943804884f18a3a2b9de526309dd500de9dd6fd4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3197572
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
4f0e7e7f
|
2021-10-04T14:50:10
|
|
Vulkan: Remove extraCopyBufferRegion workaround.
Bug: angleproject:2838
Change-Id: I53ba3cf307f930ae9550d1bfee4650df6e826930
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3202475
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2f1d503b
|
2021-09-16T21:49:14
|
|
Vulkan: Fix Vulkan secondary command buffers
This change abstracts initialization, begin/end, reset and recycle of
command buffers such that both Vulkan and ANGLE secondary command
buffers are supported.
Bug: angleproject:6100
Change-Id: I8c79764ac98b599fda08fe45cf8c4f0a6573f0f9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2987873
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ad8e4d99
|
2021-09-28T11:48:46
|
|
Remove EGL_ANGLE_flexible_surface_compatibility
This extension has been superseded by EGL_KHR_no_config_context.
Bug: chromium:1253930
Change-Id: Ie299c34baa84e9f47c73ddb5a0636536bf510d72
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3190612
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
58626b82
|
2021-10-04T13:01:17
|
|
Vulkan: Enable BlitFramebufferANGLETest tests
The following tests were disabled for the Vulkan backend, but appears to
now be working locally:
BlitFramebufferANGLETest.MultisampledBGRAToRGBA
BlitFramebufferANGLETest.MultisampledRGBAToBGRA
Bug: angleproject:4694
Test: BlitFramebufferANGLETest.MultisampledBGRAToRGBA
Test: BlitFramebufferANGLETest.MultisampledRGBAToBGRA
Change-Id: Icd88c484fbbbe65561634e97df43c51841d61c10
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3198402
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
54d4bfe5
|
2021-09-28T17:27:57
|
|
Update ANGLE Metal to Webkit at Sept 29 2021
This commit merges changes from Webkit into ANGLE upstream.
The following commits were used:
Current:
https://git.webkit.org/?p=WebKit.git;a=commit;h=e01d0bda8f4b7dc2fd834b92802d15d8c15735f
Previous:
https://git.webkit.org/?p=WebKit.git;a=commit;h=492f078198748e8ff248eea0bb979cf79e5f5adfj
The following commits were merged in from the Webkit Repository:
(Hashes from git://git.webkit.org/WebKit-https.git)
03ea44c78ce5665d4ec9add271260121cbc7bc6c
Problems with drawElements in some conditions
https://bugs.webkit.org/show_bug.cgi?id=230107
c8dc8e0c4d1109d39a62eb197b45e95132380290
ANGLE Metal: single-component swizzles do not compile
https://bugs.webkit.org/show_bug.cgi?id=230472
7285dbaaf5af15877d6c332b30ef7a4d67225460
webgl-compressed-texture-s3tc-srgb.html fails on Intel+AMD Metal
https://bugs.webkit.org/show_bug.cgi?id=229941
4c72f92967ecd2a095666fef431384c4f5f60fb4
fragcolor-fragdata-invariant.html fails
https://bugs.webkit.org/show_bug.cgi?id=223317
cd943145467f54e5928793c0dd3dfa2313c007dd
ANGLE Metal index buffer restart range cache could be maintained..
https://bugs.webkit.org/show_bug.cgi?id=227451
f075ff77e592eabd54dd659a8e13617cc5faedc8
ANGLE Metal infinities and NaNs generated with incorrect syntax
https://bugs.webkit.org/show_bug.cgi?id=229439
5862073269122f4b2d43d96d3922757557755e86
[Metal ANGLE] Fix over-autorelease of
rx::DisplayMtl::getMetalDeviceMatchingAttribute()...
<https://webkit.org/b/229128>
85f797ad31db048cb82cbafd428ef77f0b839312 ANGLE Cocoa compiles....
https://bugs.webkit.org/show_bug.cgi?id=228987
a67918ba279ad4842b6ae84a79c3f1c0cdc35ace Avoid infinite recursion...
https://bugs.webkit.org/show_bug.cgi?id=228978
d341f67de0033adcf1ec6373ace6a54b06c4a031
Cherry-pick ANGLE: Revise WebGL's shaderSource validation
https://bugs.webkit.org/show_bug.cgi?id=228951
1e2714d981e97de8234ba055570dfdf56e8b6944
3.5 MB system-wide footprint impact due to thread-locals...
https://bugs.webkit.org/show_bug.cgi?id=228240
d32e5cca34081997d32504b0b56c18b9703ff3be
Build Default Metal library offline
https://bugs.webkit.org/show_bug.cgi?id=227333
33702279faccfd4c8d1c8a6d549925f9ca9a4e8f
WebGL2 demo doesn't work due to failing compilation....
https://bugs.webkit.org/show_bug.cgi?id=226865
0a075885d242db38c4e435a6597173dc3b082173
rAF driven WebGL submits excessive amount of GPU work...
https://bugs.webkit.org/show_bug.cgi?id=227059
f38a92b3e7c17efda269caa7066e7ffe2f828e72
WebGL shader link error in iOS 15 beta: "Internal error..."
https://bugs.webkit.org/show_bug.cgi?id=227723
98d48f011d561531470d97f26a022767b5452fb7
REGRESSION (r279466): [Big Sur] webgl/1.0.3/conformance &...
https://bugs.webkit.org/show_bug.cgi?id=227596
Bug: angleproject:6471
Change-Id: I07166d0dc4b5c3579d98353485b3245b81c7b882
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3194322
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Kyle Piddington <kpiddington@apple.com>
|
|
a44197b5
|
2021-09-30T17:21:21
|
|
Tests: Add Mini World Creata Trace
Vulkan test failed on Pixel4XL due to a
vulkan validation layer error
VUID-vkDestroyBuffer-buffer-00922.
As a temp work around,
I add a condition in TracePerfTest.cpp
to skip the vulkan test on Qualcomm GPU
Test: angle_perftests --gtest_filter="*mini_world*"
Bug: b/194508684
Bug: angleproject:6443
Change-Id: I382b9dfc9aafeed92b89223214d8a4aeb75425a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3195194
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
|
|
d3764f08
|
2021-09-30T13:46:15
|
|
Fix dEQP.GLES3/functional_fragment_out_array* on Direct to Metal
Fragment arrays with locations assigned were not being
correctly transformed.
Fix ModifyStruct to handle the changing location when
locations are set
Bug: angleproject:6477
Change-Id: Icbacd50e265abdbaff3be230b2ec201eaa868a14
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3198807
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
076366cc
|
2021-10-01T23:42:04
|
|
Revert "VertexArray: Don't syncState on Buffer map/unmap."
This reverts commit 3d429f597fde950e789ca3684abbabd540157773.
Reason for revert: This change is causing crashes in ANGLE stack.
Original change's description:
> VertexArray: Don't syncState on Buffer map/unmap.
>
> Map/unmap calls are now treated like contents change events. Similar
> to BufferSubData calls.
>
> Bug: angleproject:6371
> Change-Id: Ie0a4c521ffdedfa723d47eddd21c6f68dde044ac
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3187811
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Tim Van Patten <timvp@google.com>
Bug: angleproject:6371
Change-Id: I57480a18f3c70a1bf2a539e3047402c71802655d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3200288
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
98a6e0a4
|
2021-10-01T15:06:07
|
|
Suppress VUID-RuntimeSpirv-OpImage-06376
Bug: angleproject:6492
Change-Id: I5963506164ae70edf4f2e77401dc86794157f8f2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3200277
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
fca9de6f
|
2021-09-29T14:59:06
|
|
Fix Metal backend not clearing stencil buffer
If you had a depthstencil buffer the stencil portion
was not being cleared.
Bug: angleproject:6389
Change-Id: Iad3f12ae627bc12625d959f9a52fdb1dcb8c9bc3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3198800
Commit-Queue: Gregg Tavares <gman@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Kyle Piddington <kpiddington@apple.com>
|
|
12e5a7db
|
2021-10-01T13:52:37
|
|
Suppress VUID-RuntimeSpirv-OpImage-06377
Bug: angleproject:6491
Change-Id: I0e9f8908077ea10685b7796b2c42086ae6520d05
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3200275
Reviewed-by: Ian Elliott <ianelliott@google.com>
|
|
32d6e806
|
2021-09-24T23:50:54
|
|
Vulkan: Fix rotation of interpolateAtOffset
interpolateAtOffset's offset was multiplied by flipXY*rotationMatrix,
which is a vector. This was unable to actually apply rotation to the
offset. The multiplier is changed to a matrix.
Can be tested by running interpolate_at_offset*default_framebuffer tests
in deqp gles3.1 together with pre-rotation:
./angle_deqp_gles31_tests
--deqp-case=dEQP.GLES31/functional_shaders_multisample_interpolation_interpolate_at_offset_no_qualifiers_default_framebuffer
--emulated-pre-rotation=90
Bug: angleproject:5843
Change-Id: I9727371375e999f07463b69153df3fd8b28c2a71
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3183108
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
043120ee
|
2021-09-29T15:56:46
|
|
Capture/Replay: Allow disabling program trimming.
The ANGLE_CAPTURE_TRIM_ENABLED variable disables program trimming
when set to 0. This is useful for trace validation, which expects
the GL state vectors to be identical.
Bug: angleproject:5133
Change-Id: I3ab41de80af7b223c4cb8a1b7e14f049717305fc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3193417
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
da3db87e
|
2021-07-06T14:00:58
|
|
Upstream latest changes to Metal backend from Apple to 7/1/2021
This CL merges in the ANGLE changes between these two WebKit commits:
https://git.webkit.org/?p=WebKit.git;a=commit;h=8648b353ab1d7730438c2e08319e1a4d64982c31
https://git.webkit.org/?p=WebKit.git;a=commit;h=166e4924a52971d6a32ad48247a439b16c00e062
Include provoking vertex buffer out of bounds fix
from https://bugs.webkit.org/show_bug.cgi?id=230107
Fix bad merge of resetting of dirty bits, breaking
DepthStencilFormatsTest.DepthTextureRender test and perhaps others.
Disable GL_APPLE_clip_distance when the direct-to-Metal compiler is
active. It can not yet handle the gl_ClipDistance array.
Disable use of rectangular textures for IOSurfaces. Metal can bind
IOSurfaces to 2D textures, and this was passing all tests in the
SPIR-V Metal backend. Introducing rectangular textures breaks the
SPIR-V Metal backend, and the tests currently fail on the
direct-to-Metal backend.
Fix several bugs with ProvokingVertex, which was causing
both the SpirV and Direct backends to incorrectly draw
indices.
(https://bugs.webkit.org/show_bug.cgi?id=230107)
Skip the following tests on the Metal backend which is still failing
RobustResourceInitTestES3.BlitDepthStencilAfterClearBuffer
GLSLTest_ES3.GLVertexIDIntegerTextureDrawArrays/ES3_Metal
With these changes, angle_end2end_tests again runs to completion.
Bug: angleproject:6395
Change-Id: I3cc58f531426a95fc8f177a4ad87f56c1855a546
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3167010
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kyle Piddington <kpiddington@apple.com>
|
|
0b4508e5
|
2021-10-01T11:49:52
|
|
Add script to automatically download extension data.
The script uses the 'bb' and 'swarming' tool to download build info
and artifacts. See the script for more info.
Bug: angleproject:6379
Change-Id: I65444771a69dc2f6eee39f6ba8d471fdd8ca2cff
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3198737
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
2a8be9de
|
2021-10-01T01:26:19
|
|
Vulkan: OES_shader_multisample_interpolation is now conformant
This extension was not conformant due to an imprecision in the GL spec
which is now rectified. See:
https://gitlab.khronos.org/opengl/API/-/issues/149
The OpenGL CTS has been fixed here:
https://gerrit.khronos.org/c/vk-gl-cts/+/7862
Bug: angleproject:6190
Change-Id: I0c37332939f70291a5f76ca36fa9f24b179ce414
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3197513
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a097ee2e
|
2021-09-27T15:18:02
|
|
Vulkan: Fix clearing external images with emulated format
External images may already have data, and clearing them due to their
format being emulated is incorrect.
This change makes sure that only the emulated channels are cleared.
The RGBXDataPreservedAHB test is based on one contributed by
Jason Macnak <natsu@google.com>.
Bug: b/192315789
Change-Id: Ibc8953fdac356f2a62a5b46512a51e1916b4a1b6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3193416
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
3de06bcd
|
2021-09-30T21:46:13
|
|
Roll vulkan-deps from 788a2f62acbe to 11c6360dd46f (144 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/788a2f62acbe..11c6360dd46f
Changed dependencies:
* glslang: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang.git/+log/e0771b5d4c..581897f462
* spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/c2500e504d..97a438d214
* spirv-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/6cae8216a6..ae217c1780
* spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/7e860e3831..ba4b390c36
* vulkan-headers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/9e62d02763..e500c7c809
* vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/20cf221e72..edccdb3444
* vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/642da192c8..a956d1a0e5
* vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/1e6ed74d5d..6d54fa0fe0
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC ianelliott@google.com on the revert to ensure that a human
is aware of the problem.
To 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:6478
Change-Id: I28a46296e5b3590601a61707f438d8b238be3ff6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3198645
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
35708f98
|
2021-09-30T11:54:34
|
|
Merge extension support docs.
We previously had an existing document in doc/ExtensionSupport.md.
This merges the new SupportedExtensions.md into the old location
and includes a bit more info on EGL extension support.
Bug: angleproject:6379
Change-Id: Ibb60a9e9db9200abe609383531131903ca698e60
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3197770
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4cb34637
|
2021-09-29T16:40:11
|
|
Vulkan: Fix crash in async queue
The change also fixes a regression introduced by
2d79918fdb0276cdb57488d72abd803250f962a3 which caused a segfault when
async queue is used.
Unfortunately, due to anglebug.com/6437, async queue tests are not run
on the bots at the moment. This will be fixed in a follow up change.
Bug: angleproject:6436
Change-Id: I3c2f63549149fbd9c9ab61107e98e8015cdb1c77
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3193419
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
0004ecc2
|
2021-09-22T13:39:55
|
|
Write GL info to test artifact in end2end_tests.
These will show up as glinfo.json in the "cas outputs" of the shard
that runs these tests.
We currently have information for Pixel 4, NVIDIA and Intel Win/Linux,
and SwiftShader Windows. GLES 1.x extensions are treated separately.
Some WebGL/Mac-only/D3D-only extensions show as unsupported anywhere.
In order to capture artifacts on Android, we use a render test output
parameter.
Bug: angleproject:6379
Change-Id: I560b219b5a586cdbb68d272090f38eedc76aba20
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3176780
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
3d429f59
|
2021-09-27T14:27:31
|
|
VertexArray: Don't syncState on Buffer map/unmap.
Map/unmap calls are now treated like contents change events. Similar
to BufferSubData calls.
Bug: angleproject:6371
Change-Id: Ie0a4c521ffdedfa723d47eddd21c6f68dde044ac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3187811
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
cf8c5678
|
2021-09-17T13:16:36
|
|
Vulkan: Don't sync VAOs after BufferSubData calls.
We still need to syncState after buffers that contain converted
attributes are updated. Includes a perf regression test.
Bug: angleproject:6371
Change-Id: I54227fc43e7b3fe79072da7783dab0177ccb0486
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3182706
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b930b9d3
|
2021-09-08T09:08:28
|
|
Capture/Replay: Remove redundant "capture" from label
old: trex_200_capture_context1_frame001.cpp
new: trex_200_context1_frame001.cpp
The 'capture' word wasn't really adding any useful information.
Take it out so the filenames are a bit shorter.
Bug: angleproject:5133
Change-Id: Ibd7d47df2aa1f24a641c5d5b2a6dd14d6ce240e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3149370
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
a78310ee
|
2021-09-29T12:37:42
|
|
Clean up ImageTest.cpp
Removed manual gen/delete calls and replaced GLuints with RAII types.
Bug: b/192315789
Change-Id: Ic2e7f3fcc3cefe83917d3b8dcc4ec2979c732b21
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3193415
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5e029401
|
2021-09-28T15:49:20
|
|
Add a new variant to the labeling API.
This CL will create a new variant which will take both internal name
and KHR debug name and send them over to the D3D. This will help us
capture KHR debug label better and also prevent for the cases where
ANGLE was dropping the KHR labels on the floor when calling the label
API right after the commands like glTexStorage2D, glTexImage2D etc.
Bug: chromium:1164111
Change-Id: Ifebe8df5435a34692c601c5c35fddc1911bf9d0c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3192180
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
|
|
85de22fd
|
2021-09-29T13:27:42
|
|
Set the viewport missing from a few tests
A few places seem like they should be setting the viewport.
Bascially any place that creates a framebuffer that's different
size than the backbuffer (defined as kWidth, kHeight) should
probably be setting the viewport.
Bug: angleproject:6394
Change-Id: Iee64f6700e3f93c236ab46d3d5debd47c49d2fa0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3195054
Commit-Queue: Gregg Tavares <gman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
4647e4c5
|
2021-09-27T17:03:05
|
|
SwANGLE copy to IOSurface
This CL performs a buffer to image copy on bindTexImage
and an image to buffer copy on a releaseTexImage on MacOS
in order to copy from/to an IOSurface which has an arbitrary
internal layout.
It also changes the internal format used by GL_BGRX8_ANGLEX
to GL_RGBX8_ANGLEX in order to have an internal format which
accurately represents the {GL_RGB, GL_UNSIGNED_BYTE} format
with the color channels in the correct order.
Bug: chromium:1209250
Bug: angleproject:4369
Change-Id: I62b66c7055f8ba8a4c943abeb2e35a3825efc392
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3169472
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Alexis Hétu <sugoi@chromium.org>
|
|
84bf49a5
|
2021-09-27T15:20:22
|
|
Vulkan: Fixed an issue with primitives generated query
The primitives generated query does not work with rasterizer discard,
as such rasterizer discard is disabled with the beginQuery call and
re-enabled with the endQuery call.
The issue is that previously rasterizer discard was not being disabled
until ContextVk::resumeRenderPassQueriesIfActive in some cases. This
led to cases where primitives generated query did not work.
The fix is to insure all beginQuery calls disable rasterizer discard
when primitives generated query is active.
Added the following end2end test to cover the failure:
TransformFeedbackTestES32.MultiPrimitivesGeneratedVsRasterizerDiscard
Bug: angleproject:5557
Tests: KHR-GLES32.core.tessellation_shader.tessellation_invariance.invariance_rule*
Change-Id: I7e1a0a0bc4a3100349c2c5dbdbe6becd1e0dda29
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3193100
Commit-Queue: Brandon Schade <b.schade@samsung.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
30878d2a
|
2021-09-24T09:23:56
|
|
Buffer: Notify contents changed in a separate observer list.
Buffer contents changed will only notify VertexArray. Also this
list is separated from the other observers because in the future
most of the time we won't need to notify the VertexArrays when
buffer contents changed, to avoid iterating over a large list of
VertexArray observers on simple SubData calls.
Bug: angleproject:6371
Change-Id: I6142a5757868caf33dc6594a1975f817f80553e8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3182701
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
696f8533
|
2021-09-28T15:21:51
|
|
fix GLSLTest_ES3.GLVertexIDIntegerTextureDrawArrays
The test was using a gl_PointSize of 1000.0 but GL_POINTS
are only required to support a max size of 1.0
Bug: angleproject:6463
Change-Id: I8a44607085583cbc7cef06f21b118121cc1fef24
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3192177
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
|
|
5db7885f
|
2021-09-28T17:16:40
|
|
FrameCapture: Fix GLES1 VertexArrayState
Broke recently when adding support for ES3.1 semantics.
GLES1 traces are hitting the loop below, generating
BindVertexBuffer.
Test: Zillow MEC (GLES 1)
Bug: b/199919700
Change-Id: Ibe83d1b4009b00f891903cae889449d42e9f510b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3192990
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
394dc64d
|
2021-09-27T14:07:32
|
|
Change this expectation to skip on AMD only
This appears to be an AMD only issue
Bug: angleproject:6387
Change-Id: I596341ed3d4b655312abfaa8b8e768fea742074b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3192173
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
|
|
c0aa6108
|
2021-09-17T16:22:55
|
|
Add new GL_RGBX8_ANGLEX format
Currently, IOSurface objects using {GL_RGB, GL_UNSIGNED_BYTE}
are natively represented with GL_BGRX8_ANGLEX, which we use
instead of other RGBA formats in order to avoid issues when
a canvas uses 'no alpha':
https://source.chromium.org/chromium/chromium/src/+/main:third_party/swiftshader/third_party/angle/angle/src/libANGLE/renderer/vulkan/mac/IOSurfaceSurfaceVkMac.mm;l=44
This unfortunately causes some other issues because of the
implicit RGB <-> BGR conversion like type mismatches in
subresource updates. This CL adds a new type, RGBX8, which
will be usable by IOSurface objects and which behaves exactly
like the BGRX8 format with the B and R channels flipped.
Bug: chromium:1209250
Change-Id: I345eadc8addd05a0964cae30d89c20005479e37b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3188910
Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
dff5c752
|
2021-09-28T11:27:06
|
|
Suppress VVL error: *InterfaceTypeMismatch
Suppress VVL error:
UNASSIGNED-CoreValidation-Shader-InterfaceTypeMismatch
Bug: angleproject:6442
Change-Id: I1d5412a1be7cba0b3571225d3f3d94c72349742f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3191390
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
20be5bed
|
2021-09-28T11:31:50
|
|
Expose EGL_KHR_no_config_context on more backends.
EGL_KHR_no_config_context can be exposed on any backend that supports
EGL_ANGLE_flexible_surface_compatibility
Bug: chromium:1253930
Change-Id: Iec75ce944fc463a8c476579234be77028f74113b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3190611
Reviewed-by: Peng Huang <penghuang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
8f8ca06d
|
2021-09-06T10:01:37
|
|
Roll vulkan-deps from b1e5bf7dd9c3 to 788a2f62acbe (13 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/b1e5bf7dd9c3..788a2f62acbe
Changed dependencies:
* spirv-cross: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross.git/+log/51d8e7be94..c2500e504d
* spirv-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/789de0dc4b..7e860e3831
* vulkan-loader: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/ee4d7bb1bf..20cf221e72
* vulkan-tools: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/cf9d49e461..642da192c8
* vulkan-validation-layers: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/2fdf7a587b..1e6ed74d5d
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-angle-autoroll
Please CC timvp@google.com on the revert to ensure that a human
is aware of the problem.
To 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:6442
Tbr: ianelliott@google.com
Change-Id: Id6bcd349462f7c0a61fcb3ccf831e5238334382d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3188612
Reviewed-by: Ian Elliott <ianelliott@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
33207313
|
2021-09-27T10:45:17
|
|
Disable clearing textures for robust init on Mac.
Suspecting this path generates errors and hangs.
Bug: chromium:1253356
Change-Id: I0ef4a71578fa15631074f394d49e9878f3e301df
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3187131
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
3719c172
|
2021-09-20T17:33:14
|
|
FrameCapture: Filter program setup calls
This CL adds filtering to shared setup calls based on whether
a resource is used during the frame capture. Calls that are
filtered out will not be written to SetupReplayContextShared.
This eliminates setup for unused resources.
This has become critical for apps like Fortnite that compile
tens of thousands of programs before running any frames. This
can take multiple minutes to perform before rendering a frame.
To achieve this, we do the following:
- Add an active status to every call (default to TRUE).
- Mark setup calls for tracked resources to FALSE during MEC.
- During the run, track for any use of the resource, and mark
its setup calls back to TRUE.
- Enable tracking for ShaderPrograms.
Test: Fortnite MEC
Bug: b/180418810
Bug: angleproject:5658
Change-Id: I5070297d339de3b80f870640e8955077a2bc20aa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3150387
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
5e182d2c
|
2021-09-23T14:29:48
|
|
Add traces to CommandBuffer
Additionally, use CommandBuffer's `reset` instead of direct Vulkan call.
Based on patch by Igor Nazarov <i.nazarov@samsung.com>
Bug: angleproject:6401
Change-Id: Ib473ed2fd33ebb68852d4f4e7776a8e484ac8610
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3179770
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
1a0a0764
|
2021-09-27T12:56:57
|
|
Translator: Fix outputting anonymous struct types
Anonymous struct types have an "empty" symbol name, so instead of
outputting their name, it's specified that they are anonymous.
Bug: chromium:1253208
Change-Id: Ic70767ba32bda6ceb214dfc3d0b4928173665d81
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3187810
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d9882db5
|
2021-04-16T21:47:25
|
|
Vulkan: Destroy unused resources in a timely manner
Deletion of garbage that's eligible for immediate cleanup is currently
delayed until the next submission.
Fix this by checking if garbage can be freed immediately and deleting it
right away if it's not used. Some missing retain() calls needed to
be added to semaphore operations in order to avoid freeing resources
in use by a memory barrier.
Based on a change by spang@chromium.org
Bug: angleproject:4628
Change-Id: I034c24d7631c973b4546952f7718a0cd4114763f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2832002
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5b699b4b
|
2021-09-20T15:14:42
|
|
Roll VK-GL-CTS from 7103920041db to 8e89717bf4ed (52 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/7103920041db..8e89717bf4ed
2021-09-20 gleese@broadcom.com Add missing checking of integer dot product features
2021-09-20 gleese@broadcom.com Don't silently drop features that were requested
2021-09-20 gleese@broadcom.com Update checking of VulkanFeatures structs
2021-09-17 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
2021-09-17 mikko.tiusanen@siru.fi Tests for OpenGL ES 3.1 and 3.2 compressed formats
2021-09-17 siglesias@igalia.com dEQP-VK.subgroups.*ray_tracing* missing extension check
2021-09-17 ari.suonpaa@siru.fi Re-enable protected memory tests
2021-09-17 rgarcia@igalia.com Depth/Stencil descriptor tests
2021-09-17 piotr.byszewski@mobica.com Test multiview with different depth ranges
2021-09-17 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/master
2021-09-16 root@qnegfx2.qualcomm.com Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/master
2021-09-14 piotr.byszewski@mobica.com Test blitting from ASTC formats
2021-09-14 gleese@broadcom.com Fix workgroup memory tests for int16s
2021-09-14 ari.suonpaa@siru.fi Check support for EGL 1.5 or higher when using GLES3
2021-09-14 gleese@broadcom.com Accept NaN as valid in atan2 precision tests
2021-09-10 peter.kohaut@arm.com Update Vulkan headers
2021-09-08 mika.vainola@siru.fi Fix Clang -Wcomma warnings
2021-09-08 mika.vainola@siru.fi Fix qpReleaseInfo generation with non-ASCII paths
2021-09-08 ari.suonpaa@siru.fi Add tests for VK_EXT_load_store_op_none
2021-09-07 peter.kohaut@gmail.com Merge branch 'vulkan-cts-1.2.7'
2021-09-07 stuart.brady@arm.com Add tests for VK_KHR_shader_integer_dot_product
2021-09-03 peter.kohaut@arm.com Merge branch 'vulkan-cts-1.2.7'
2021-09-03 mika.vainola@siru.fi Remove unreachable breaks
2021-09-03 antto.makinen@siru.fi Add a batch of GraphicsFuzz coverage tests
2021-09-03 mika.vainola@siru.fi Fix GLES3 Clang UBSan errors
2021-09-02 antto.makinen@siru.fi Add a batch of GraphicsFuzz coverage tests
2021-09-02 juha.heiskanen@siru.fi Add test for finding unknown memory property flag sets
2021-09-02 mika.vainola@siru.fi Fix loop over cube map faces in GL4
2021-09-02 lionel.g.landwerlin@intel.com Fix fragment shading rate validation layer warning
2021-09-02 jari.komppa@siru.fi Add run mode that verifies amber requirements
2021-09-02 mika.vainola@siru.fi Remove extra semicolons
2021-08-30 gleese@broadcom.com Fix warning in gcc-8
2021-08-28 juha.heiskanen@siru.fi Enable Vulkan matrix determinant and inverse precision tests
2021-08-26 jasuarez@igalia.com Do not overflow when copy data
2021-08-26 Neslisah.Torosdagli@amd.com Issue in serial storage address computation
2021-08-26 antto.makinen@siru.fi Add coverage for sampling a cubemap that has been rendered to
2021-08-20 galazin@protonmail.com Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/master
2021-08-20 venni.ihanakangas@siru.fi Check support in synchronization operation tests
2021-08-20 slawomir.cygan@intel.com Read stencil aspect from image in DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL layout
2021-08-20 ilkka.saarelainen@siru.fi Optimize image clearing tests
2021-08-20 venni.ihanakangas@siru.fi Ensure that destroying old swapchain has no effect
2021-08-20 marcin.zajac@mobica.com Conservative rasterization with SampleMask
2021-08-19 galazin@protonmail.com Update Vulkan headers
2021-08-19 italonicola@collabora.com Implement getProcAddress for surfaceless platform
2021-08-19 tapani.palli@intel.com Fix for the various multisample tests with GL 4.5
2021-08-19 tapani.palli@intel.com Fix to multisample texture test shaders with GL 4.5
2021-08-19 tapani.palli@intel.com Fix for the common function tests with GL 4.5
2021-08-13 alexander.galazin@arm.com Remove shaders.arrays from the Khronos mustpass
2021-08-13 ilkka.saarelainen@siru.fi Fix Android system memory requirements
2021-08-13 piotr.byszewski@mobica.com Test multiViewport with different depth ranges
2021-08-13 piotr.byszewski@mobica.com Test OpImageQueryLod when fwidth(UV) == 0
2021-08-13 alexander.galazin@arm.com Merge vk-gl-cts/github-master 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 geofflang@google.com,angle-bots+autoroll-info@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:6441
Change-Id: Ifc95da798a2d6de0a794cef59ea61fb6a353f21d
Tbr: geofflang@google.com,angle-bots+autoroll-info@google.com
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3188073
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Ian Elliott <ianelliott@google.com>
|
|
dc99db91
|
2021-09-16T21:45:35
|
|
Vulkan: Allow Vulkan secondary CBs to count their commands
This is used by render pass related code to determine if some command
has been issued since a previous event. With ANGLE
SecondaryCommandBuffer, the memory pointer where the commands are being
written to are used for this purpose. For Vulkan secondary command
buffers the code simply increments a counter.
Bug: angleproject:6100
Change-Id: I85320f8453bd3325793df85aabde3d42b1eeb22a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3167214
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
cebca7c2
|
2021-09-24T07:55:38
|
|
Texture: Ignore buffer contents changed events.
Texture doesn't need to care when its attached buffer gets different
contents via a SubData call. This CL updates the BufferVk logic to
ensure that SubData calls trigger a storage changed notification when
there's a new storage, and otherwise Texture can ignore SubData calls.
Will make it easier to split "contents" changed notifications to their
own event, for optimizing Vertex Buffer updates.
Bug: angleproject:6371
Change-Id: I4f15ad3ad2da5d838bd51fb065184b7344b188d8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3181562
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
bc8fe7dd
|
2021-09-24T22:50:32
|
|
Translator: Fix removing inactive output vs SH_INIT_OUTPUT_VARIABLES
The code that SH_INIT_OUTPUT_VARIABLES adds for inactive outputs is also
removed with this change.
Bug: chromium:1253016
Change-Id: I3caeb628487354de943f7b53f7462f58baa3eca8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3183107
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
93911990
|
2021-09-24T12:14:33
|
|
Add regression test for PBO write to vertex buffer.
There was no test coverage for the "packBuffer->onDataChanged()" call
in Framebuffer::readPixels.
Bug: angleproject:6371
Change-Id: Ib7ccf965a2375077046e21949dc26dc800abff09
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3182700
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
55690b1c
|
2021-09-20T17:06:31
|
|
Capture/Replay: Updated expectations: one fixed, one skip
Bug: angleproject:6324
Bug: angleproject:6180
Change-Id: I8537e684e63c2000bb877b585f9d8e9be42546f5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3169657
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
|
|
29c01d51
|
2021-09-20T20:49:29
|
|
Capture/Replay: Write the context serialization file correctly
This is what was done before we switched to not changing the working
directory, and what is expected by the test script.
In addition, the captured contexts were also written to the wrong files,
i.e. the replay context to the CapturedContext file, and the captured
context to file ReplayedContext file, so fix that too.
Bug: angleproject:6412
Change-Id: I81906e3f64b2caf0002ca6a28cfce2a3d552fc8f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3171354
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
|
|
9994110b
|
2021-09-09T15:29:13
|
|
Tests: Add Nier Reincarnation trace.
Requires EGL_KHR_gl_colorspace and GL_KHR_texture_compression_astc_ldr.
Test: angle_perftests --gtest_filter="*nier_reincarnation*"
Bug: angleproject:6366
Change-Id: Ibb71520762cf9c0a17047324557e70215754bbbb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3151818
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e024635d
|
2021-09-10T13:56:28
|
|
ANGLEPerfTest: Skip tests when missing color space support.
Make tests where a non-linear colorspace was requested on platforms
that do not support EGL_KHR_gl_colorspace non-fatal.
Add a initializeGLWithResult function to GLWindowBase, returning a
new GLWindowResult enum and wrap it in EGLWindow and WGLWindow.
Bug: angleproject:6366
Change-Id: Ib57327c4d988d82064272f229f8ad59287541623
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3151833
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
eb1d5ca5
|
2021-01-29T15:34:49
|
|
Vulkan: Enable sync validation
Based on a change by tobine@google.com
Bug: angleproject:5290
Change-Id: Ieae1be5a29f0dcb3ea8aaa04e77fc402380a08b1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3171432
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
2d79918f
|
2021-09-16T16:43:53
|
|
Vulkan: Pass command pool around
Preparatory work for re-enabling support for Vulkan secondary command
buffers. The command pool being passed around is not yet used.
Additionally, the work to allocate, initialize, reset and recycle
command buffers has been refactored to a helper class for better
abstraction.
The CommandBufferHelper class now holds a pointer to the pool it was
allocated from for clean up. Each ContextVk has its own command pool,
where Vulkan secondary command buffers are allocated from. The command
pool that CommandProcessor had was unused and is removed by this change.
Bug: angleproject:6100
Change-Id: I0d4fa6a76ef06e88779145ffe9c613518a8eb390
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3167213
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
78393614
|
2021-09-21T19:14:15
|
|
Vulkan: Fixed bugs about VK_SUBOPTIMAL_KHR Image Acquire result
This change fixes the following bugs in rx::WindowSurfaceVk with
VK_SUBOPTIMAL_KHR Image Acquire result:
- Bug in acquireNextSwapchainImage() method:
- If VK_SUBOPTIMAL_KHR returned from vkAcquireNextImageKHR(),
the method simply returns since the result, and
vk::DeviceScoped<vk::Semaphore> acquireImageSemaphore, will be
destroyed. However, acquireImageSemaphore can't be destroyed
because it is already used by the Presentation Engine.
- Bug in initializeImpl() method:
- Method allows VK_SUBOPTIMAL_KHR as successful result. However,
acquireNextSwapchainImage() will not finish, leaving incomplete
state. Attempting to use the framebufer will cause ASSERT/Crash.
Solution:
- Changed acquireNextSwapchainImage() method to ignore
VK_SUBOPTIMAL_KHR result.
- Remove checks for VK_SUBOPTIMAL_KHR from Acquire in other places.
This solution was chosen, because it is simplest, and VK_SUBOPTIMAL_KHR
is properly handled in the computePresentOutOfDate() method.
Patch authored by Igor Nazarov <i.nazarov@samsung.com>
Bug: angleproject:6401
Change-Id: I90bef7871c3bdcf28240a034927d5b2c705f4367
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3174729
Commit-Queue: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d71dc819
|
2021-09-22T16:01:06
|
|
Fixes for RowMajor test failures
row_major matrices get translated to column major matrices
and the expressions rewritten. To do this temporary variables
that contain the column and row index expressions are moved
to separte statements before the matrix expression itself.
When this happens it breaks side effects and short circuits
in the expression.
The solution is to call SeparateCompoundExpressions before
calling RewriteRowMajorMatrices.
Bug: angleproject:6386
Change-Id: I4d819ade959e2a875495f62733e11d86560d3fab
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3177337
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
|
|
6106da49
|
2021-09-22T16:18:21
|
|
Indent Generated GLSL
Before:
in vec4 _ua_position;
void main(){
(gl_Position = vec4(0.0, 0.0, 0.0, 0.0));
(gl_Position = _ua_position);
}
layout(shared) uniform _uG{
float _ufoobar;
} _ug;
struct _uS {
int _ufoo;
float _ubar;
};
layout(shared) uniform _uT{
_uS _us;
float _um;
} _ut;
float _ufunc(in _uS _ustructVar){
return _ustructVar._ubar;
}
out vec4 _uoutColor;
void main(){
float _uv = 0.0;
for (int _ui = 0; (_ui < _ut._us._ufoo); (++_ui))
{
int _uk = 0;
while ((_uk < _ut._us._ufoo))
{
(_uv += _ufunc(_ut._us));
if ((_uv > 100.0))
{
break;
}
else
{
(_uv += 5.0);
}
switch (_uk) {
case (0):
(_uv += 3.0);
break;
case (1):
(_uv += 1.0);
break;
default:
(_uv -= 2.0);
break;
}
}
}
(_uoutColor = (vec4(_uv) + vec4(_ug._ufoobar)));
}
After:
in vec4 _ua_position;
void main(){
(gl_Position = vec4(0.0, 0.0, 0.0, 0.0));
(gl_Position = _ua_position);
}
layout(shared) uniform _uG{
float _ufoobar;
} _ug;
struct _uS {
int _ufoo;
float _ubar;
};
layout(shared) uniform _uT{
_uS _us;
float _um;
} _ut;
float _ufunc(in _uS _ustructVar){
return _ustructVar._ubar;
}
out vec4 _uoutColor;
void main(){
float _uv = 0.0;
for (int _ui = 0; (_ui < _ut._us._ufoo); (++_ui))
{
int _uk = 0;
while ((_uk < _ut._us._ufoo))
{
(_uv += _ufunc(_ut._us));
if ((_uv > 100.0))
{
break;
}
else
{
(_uv += 5.0);
}
switch (_uk) {
case (0):
(_uv += 3.0);
break;
case (1):
(_uv += 1.0);
break;
default:
(_uv -= 2.0);
break;
}
}
}
(_uoutColor = (vec4(_uv) + vec4(_ug._ufoobar)));
}
Bug: angleproject:6428
Change-Id: Ica25151e68eb0defd85a3b6241db442d8eb84743
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3177339
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
|
|
a1b829dd
|
2021-09-22T18:29:08
|
|
Vulkan: Retain src buffer in acquireAndUpdate()
It's possible for acquireBufferHelper() to garbage collect the original
(src) buffer before copyFromBuffer() has a chance to retain it, so it
must be retained before then.
Previously, we were relying on the retain calls in copyFromBuffer() to
be sufficient. However, there is a race condition when the asynchronous
CommandProcessor is enabled, since the garbage could be freed before
copyFromBuffer() has a chance to retain the buffer (and allow
destroyIfComplete() to skip destroying the object).
For the full context, see the comment chain here:
https://chromium-review.googlesource.com/c/angle/angle/+/3146319/16..24/src/libANGLE/renderer/vulkan/BufferVk.cpp#b833
Bug: angleproject:5971
Change-Id: I7c812069343fdad948189d696bfebab8da68c1a3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3179866
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
4f2b2995
|
2021-09-23T09:50:46
|
|
Fix -Wshadow.
This still disables the warning for glmark2 instead of fixing it, to
avoid needing to upstream a patch.
Bug: chromium:794619
Change-Id: Ice602996041d6090c9b09ee81c8ed095c4fa6b2e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3179860
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e1a9af6a
|
2021-09-20T10:42:03
|
|
Translator: Fix HLSL vs for loop's init not having initializer
The handleExcessiveLoop code expected that if a for loop has an init
expression that it must necessarily have an initializer as well. That
is not true in (fuzzer-produced) code such as following:
for (int i; ...; ...)
Bug: chromium:1238182
Change-Id: Id761e937a34a6b2feac1266e22207350a3bd616c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3170114
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
3e234e24
|
2021-09-17T11:45:01
|
|
PerfTests: Updates to several tests.
Bug: angleproject:6371
Change-Id: If71c79fd363f7463098b571550af6ceb0634c00d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3176440
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
92f1eb7b
|
2021-09-22T16:57:01
|
|
Skip Linux+AMD ComputeShaderTest test failures
The following tests are failing on Linux w/ RX 5500 XT:
ComputeShaderTest.ImageBufferMapWrite/ES3_1_OpenGL
ComputeShaderTest.BufferImageBufferMapWrite/ES3_1_OpenGL
These tests were added as part of:
3146319: Vulkan: Add ResourceWrite to track Read and Write Access
https://chromium-review.googlesource.com/c/angle/angle/+/3146319
They are being suppressed since it's only the OpenGL backend that's
failing this combination, and the ANGLE changes in the CL were only in
the Vulkan backend.
Bug: chromium:1252169
Test: ComputeShaderTest.ImageBufferMapWrite/ES3_1_OpenGL
Test: ComputeShaderTest.BufferImageBufferMapWrite/ES3_1_OpenGL
Change-Id: I607979979814327eda9f3823ae3c774b86e94c2f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3177071
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
c3e0eafa
|
2021-09-22T13:35:04
|
|
Revert "Perf Tests: Split samples into sub-tests on desktop."
This reverts commit 90c981dafc06d6bc0696749dface1337e37784d2.
Reason for revert: Causing timeouts on perf bots.
Original change's description:
> Perf Tests: Split samples into sub-tests on desktop.
>
> This adds an option to the perf test runner to split each sample of
> each test into a sub-test. The sub-tests then are split among the
> shards like ordinary tests, and distributed across machines. The
> intent is that running on different machines will reduce inter-build
> variance because of differences between test machines.
>
> This sampling change is only added to desktop (Linux/Win) because
> Android device variance seems to be lower.
>
> Bug: angleproject:6090
> Change-Id: I4046a012727baa8a0f2595de2349cc34257691f9
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3152752
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Cody Northrop <cnorthrop@google.com>
> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Bug: angleproject:6090
Change-Id: I92bffb98999f35274ec31a3b7567d87453feff94
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3174274
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
49ac15a5
|
2021-09-20T11:29:01
|
|
Optimize VAO bindings.
This CL makes the XFB binding tracking WebGL-only. That will
speed up VAO binding changes in non-WebGL considerably.
Also has a few inline micro-optimizations that may not have
a large effect.
Bug: angleproject:6371
Change-Id: Ib0a26a3b956dcd6ff78626e5cd6514b46270d882
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3170116
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
68c0da83
|
2021-09-15T12:00:08
|
|
Vulkan: Inform frontend when new buffer is allocated
When a buffer is mapped with GL_MAP_INVALIDATE_BUFFER_BIT while it's
currently in use, the Vulkan backend will allocate a new buffer, map it,
and return the pointer to the new buffer. This was missing a call to
inform the frontend that a new buffer was allocated, causing the old
buffer data to be accessed in subsequent draw calls.
The fix is to add a onStateChange(angle::SubjectMessage::SubjectGhosted)
call when the new buffer is allocated, to inform the frontend.
Bug: angleproject:5971
Bug: angleproject:6396
Test: TextureBufferTestES31.MapTextureBufferInvalidateThenWrite
Change-Id: I9984d1049ab4d6a2066f4440fc710c9b93ff6ab8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3163244
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
9158436e
|
2021-07-31T18:26:16
|
|
Vulkan: glMapBuffer(): Create new buffer (Buffer Ghosting)
When glMapBuffer() is called, if the buffer is in use but not being
written to by the GPU:
1.) Create a new buffer.
2.) Copy the contents of the old buffer into the new buffer.
3.) Map the new buffer and return the pointer.
Creating a new buffer prevents ending the renderpass and flushing the
commands to allow the in-use buffer to be mapped. This change increases
Idle Heroes performance from 40FPS to 125FPS.
Bug: angleproject:5971
Test: VulkanPerformanceCounterTest.MappingGpuReadOnlyBufferGhostsBuffer
Test: BufferDataTest.MapWriteArrayBufferDataDrawQuad
Test: BufferDataTest.MapWriteArrayBufferDataDrawArrays
Change-Id: I1d433d179f9f5110a948f191c5aedda5397acac8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3065799
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
57d59e83
|
2021-09-07T17:41:11
|
|
Vulkan: Add ResourceWrite to track Read and Write Access
vk::Resource currently only tracks accesses in general, not which type
of access is being performed. This CL adds the new class ResourceWrite
to track whether the access is a Read or Read/Write access and when
the access completes.
This allows a follow-on CL to know when a buffer is being written to by
the GPU or if the GPU is only reading from a buffer. Tracking write
accesses to buffers is required when attempting to "Ghost" (duplicate)
GPU-read-only buffers to prevent breaking the render pass when the CPU
maps the buffer memory.
Bug: angleproject:5971
Test: ComputeShaderTest.ImageBufferMapWrite
Change-Id: I965e3e75730719ccce77334744ae4feae33c6101
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3146319
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
|
|
06c73b3d
|
2021-09-21T13:37:29
|
|
Vulkan: Lift DS feedback read-only suppression.
This is now fixed upstream in the spec and the VVL.
Bug: angleproject:4975
Change-Id: I6938bae49c982cc4f366c01ab10aedcaa784f972
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3173252
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7dd2361b
|
2021-09-17T15:43:22
|
|
Metal: ANGLE Metal AutoObjCPtr == nullptr comparison is inverted
Port the fix from Webkit for this inverted comparsion
Unify the nullptr type throughout all functions
Bug: angleproject:6351
Change-Id: Id856af31c9eea5cc79993c3454e452d1c14d0d0e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3169436
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Le Hoang Quyen <le.hoang.q@gmail.com>
Reviewed-by: Gregg Tavares <gman@chromium.org>
|
|
f6616c71
|
2021-09-14T17:42:22
|
|
Reimplement transform feedback on direct-to-Metal backend
Connect the Transform Feedback code generation from Webkit ANGLE
to the shader specialization code.
Bug: angleproject:6393
Change-Id: I090c44c6ee97e8e0af8c38433bfb74c2080784f9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3161455
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Gregg Tavares <gman@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|