|
0fefbe83
|
2022-09-14T15:20:00
|
|
Vulkan: Do not cache the FramebufferHelper with no attachment
If two FBOs don't have any attachments,
and their GL_FRAMEBUFFER_DEFAULT_WIDTH
and GL_FRAMEBUFFER_DEFAULT_HEIGHT are
different, there is no difference in
their cache key (vk::FramebufferDesc).
Therefore the Vulkan backend is not able
to distinguish between the two FBOs.
This can create issues when we
1. create first FBO with a smaller size, renders to it
2. create second FBO with a bigger size, renders to it
The second renderpass will use the FBO created
in the first renderpass, because it managed to
retrieve the first FBO from the cache with
the same cachekey. This triggers the
vulkan validation error:
VUID-VkRenderPassBeginInfo-pNext-02853,
saying the render area exceeds the
framebuffer size.
This CL fixed it by not adding the FramebufferHelper
to the cache, if it doesn't have any attachment.
These framebufferHelpers are cheap, without
cache there should not be much performance
drop.
Bug: angleproject:3579
Bug: angleproject:7351
Bug: angleproject:7666
Bug: b/246334302
Change-Id: Iddecafddb042bd16401f983f9ee1a021b845d8bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3891543
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d19d9bfe
|
2022-09-19T13:06:40
|
|
Roll VK-GL-CTS from 6dee9965e173 to 7bbdc916a414 (16 revisions)
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/6dee9965e173..7bbdc916a414
2022-09-16 gleese@broadcom.com Tests for VK_EXT_depth_clamp_zero_one
2022-09-16 gleese@broadcom.com Update to the latest vulkan-docs version
2022-09-16 quic_mnetsch@quicinc.com Merge "Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main" into main
2022-09-16 ziga@lunarg.com Create VkShaderModule on the correct device
2022-09-16 gary.sweet@broadcom.com Fix dEQP-VK.synchronization.global_priority_transition.*
2022-09-16 zzoon@igalia.com Fix to ensure that a particular image with that format can be sampled via vkGetPhysicalDeviceImageFormatProperties.
2022-09-16 piotr.byszewski@mobica.com Interact FDM with imageless FB and secondary CB
2022-09-16 piotr.byszewski@mobica.com Add test for pervertex correctness
2022-09-16 marcin.zajac@mobica.com pipelineStageCreationFeedbackCount = 0 case
2022-09-16 jarred.davies@imgtec.com Add tests for VK_EXT_pipeline_robustness
2022-09-16 ziga@lunarg.com Add tests with dynamic states that discard all fragments
2022-09-16 chip@holochip.com Use Mach semaphores on Darwin
2022-09-16 marcin.zajac@mobica.com robustness1_vertex_access for VKSC
2022-09-16 piotr.byszewski@mobica.com Fix vkDeviceFeatures2.inl
2022-09-16 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main
2022-09-15 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.8 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 abdolrashidi@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:7673
Change-Id: Ic70f0c9da85a493c50e23662a37abb7b1d6c529c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3904783
Reviewed-by: Shahbaz Youssefi <syoussefi@google.com>
Auto-Submit: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ffd662e9
|
2022-08-01T10:49:19
|
|
capture/replay: Add MEC support to capture-replay script
Running the capture/replay script in MEC mode is done by
adding a parameter --mec <n> with n being the start frame
of the capturing. Exactly one frame will be captured.
Bug: angleproject:7564
Change-Id: I93153356d75712ba81ca26ccfc7f40785ba3e4ef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3819845
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Gert Wollny <gert.wollny@collabora.com>
|
|
04f46f39
|
2022-09-12T10:15:16
|
|
Reland "Generate stubs for ANGLE_shader_pixel_local_storage"
This is a reland of commit 8208e8a234d05b413d79e7a93b6a428adea41b33
In Take 2 we omit the GLenum groups PixelLocalLoadOpANGLE and
PixelLocalInternalFormatANGLE. We can add these back once the extension
is published and we can update Khronos's gl.xml, or else once we figure
out how to make this work without updating the Khronos gl.xml.
Original change's description:
> Generate stubs for ANGLE_shader_pixel_local_storage
>
> Bug: angleproject:7279
> Change-Id: I41548ad35c236b67372a12fecaa9a1b9c556d232
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3891972
> Commit-Queue: Chris Dalton <chris@rive.app>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: angleproject:7279
Change-Id: I02f42c1cfc685ed95164744108e0c185d3a7fefb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3900491
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Chris Dalton <chris@rive.app>
|
|
8c62c5bd
|
2022-09-15T08:27:39
|
|
[fuchsia] Remove use_cfv1 from uses of test() GN template
The default is now to not include CFv1 manifests in test packages, so it
is no longer necessary for tests to individually opt-out of including
them.
Bug: chromium:1256503
Change-Id: Ib6c5425c584cadfccefef530b00f651a2878ea3b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3898670
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Greg Thompson <grt@chromium.org>
|
|
8c45e3c4
|
2022-09-15T01:07:47
|
|
Revert "Generate stubs for ANGLE_shader_pixel_local_storage"
This reverts commit 8208e8a234d05b413d79e7a93b6a428adea41b33.
Reason for revert: Compile failures
Original change's description:
> Generate stubs for ANGLE_shader_pixel_local_storage
>
> Bug: angleproject:7279
> Change-Id: I41548ad35c236b67372a12fecaa9a1b9c556d232
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3891972
> Commit-Queue: Chris Dalton <chris@rive.app>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Bug: angleproject:7279
Change-Id: Ic9a232f9d722b42e615de3827ce118616f3acc71
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3897425
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Chris Dalton <chris@rive.app>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Chris Dalton <chris@rive.app>
|
|
3657b0ca
|
2022-09-14T11:24:00
|
|
Vulkan: Add end2end test for fbo with no attachment
Add a test for fbo with no attachment and then change the fbo size.
There is a bug in vulkan backend that discovered with deqp tests, and
this CL creates a end2end test for that.
Bug: b/246334302
Change-Id: I9b70afb958cda02140bf1007b71095ee3f922e38
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3893015
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
8208e8a2
|
2022-09-12T10:15:16
|
|
Generate stubs for ANGLE_shader_pixel_local_storage
Bug: angleproject:7279
Change-Id: I41548ad35c236b67372a12fecaa9a1b9c556d232
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3891972
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
18f90857
|
2022-09-09T11:28:00
|
|
Vulkan: Use DontCare if attachment is invalidated
If an attachment is invalidated, there is no need to preserve the old
content. NONE means old content is still preserved, DontCare means
discard old content. In this case we do want to discard instead of
preserve old content.
Bug: b/243711628
Change-Id: I242ac86db6993574b5627d61f7185d155beec0ba
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3888938
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
7822c9df
|
2022-09-10T14:17:21
|
|
Delete FramebufferPixelLocalClearValue{f,i,ui}vANGLE
Instead, BeginPixelLocalStorageANGLE just accepts a buffer containing
clear values. In WebGL, the clear data can be an array of Numbers. This
makes the API smaller, simpler, and less stateful and bug-prone.
Bug: angleproject:7279
Change-Id: I8b3fa4ae7f20ba3ad72beb01f275acf50eee803c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3888960
Commit-Queue: Chris Dalton <chris@rive.app>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ee3b5d05
|
2022-09-13T22:52:03
|
|
GLES1/Vulkan: Enable LineRaster tests
Should be passing now with VK_EXT_line_rasterization
Bug: angleproject:3862
Change-Id: Ib2d31e5ca931d6f9c78cd3f9f0aee93809bcaf5d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3891545
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
d375547c
|
2022-08-12T15:54:39
|
|
Do not link program pipeline in glUseProgramStages
1. The commit 3a9f18f135fe82 caused a link to occur everytime
glUseProgramStages is called. This is redundant since the program
pipeline can be linked just before usage, thus allowing for multiple
stages to be bound before linking the executable.
2. Mark PPO as a dirty object and link the PPO in dirty object handler
3. Early return if the same program is being bound to the same stage
of the pipeline.
4. Added ProgramPipelineObjectBenchmark perf test that switches programs
before a draw and observed following data -
1. vulkan profile -
1. wall_time before patch - 102000 ns
2. wall_time after patch - 38000 ns
2. vulkan_null profile -
1. wall_time before patch - 125000 ns
2. wall_time after patch - 52000 ns
Bug: angleproject:5102
Bug: angleproject:6566
Test: ContextNoErrorPPOTest31.*Vulkan
Test: ProgramPipelineTest31.*Vulkan
Test: ProgramPipelineObjectBenchmark*
Change-Id: Idbc2fcb4875bbd040e9ec847eb2a8f96f287173c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3830170
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
a2f00721
|
2022-06-19T15:17:22
|
|
Vulkan: Extend bounding box when pruning updates
Add support for extending the bounding box when there are updates that
enclose the current bounding box.
Bug: angleproject:4691
Bug: angleproject:7389
Test: Texture2DArrayTestES3.TextureArrayPruneSupersededUpdates*
Change-Id: Ie7e3cc28f17213361b1be407dbb2d984865fe6bd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3712897
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: mohan maiya <m.maiya@samsung.com>
|
|
ec1ce582
|
2022-09-13T15:52:16
|
|
Skip end2end tests failing on iOS
Bulk suppression of all failures discovered after the initial setup of
an iOS bot.
Bug: angleproject:7653
Change-Id: I068f01dbab368e73ffc8854224d7a8357e0446d6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3892016
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
34332f85
|
2022-09-13T13:54:14
|
|
Fix UninstantiatedParameterizedTestSuite errors on iOS.
Some test suites are instantiated only on ES31 or Vulkan,
which iOS doesn't support.
Bug: angleproject:5417
Change-Id: Iea202934edb3804993dabd38f2629d4992eb2095
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3892013
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
|
|
8fb77b5a
|
2022-09-06T14:33:40
|
|
gles1/FogTest: Add test that combines blending and fog.
Add a test that draws a texture with a shadow effect by using fog and
blending functionality. This fails on all ANGLE configs like
ES1_Vulkan and ES1_OpenGL but succeeds on native drivers using ES1_EGL.
Test: angle_end2end_tests --gtest_filter="FogBlendTest.ShadowEffect/*"
Bug: angleproject:7598
Change-Id: I454735c3257e6986a6b1af1bc993a609e776419b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3876222
Commit-Queue: Lubosz Sarnecki <lubosz.sarnecki@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
fc51d98f
|
2022-08-11T03:29:16
|
|
Add Direct Composition offset to gl_FragCoord
DComp usually gives us an offset at (0, 0), but this is not always
the case. It is valid for DComp to give us an offset into a texture
atlas, for example with some video overlays. If we do have an offset,
gl_FragCoord must also be offset to point to the correct pixel in the
surface.
Bug: chromium:1269749
Change-Id: I3ca39860d176bcf9f1d520d781cfed2d1d1ad1dd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3827081
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com>
|
|
543c450e
|
2022-09-09T14:37:39
|
|
Tests: Add Botworld Adventure trace
Test: angle_perftests --gtest_filter="*botworld_adventure*"
Bug: angleproject:7645
Change-Id: Icbe7a21538537ea1c2ca4161b5d56bae43adcdf4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3888778
Commit-Queue: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
92519c7f
|
2022-09-08T13:25:22
|
|
Tests: Add Zombie Smasher trace
This is a GLES1 title.
Test: angle_perftests --gtest_filter="*zombie_smasher*"
Bug: angleproject:7644
Change-Id: I31aedeed7b16d4a53a91fe652a908178befef901
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3885355
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
19117567
|
2022-09-07T19:21:56
|
|
Avoid general python exceptions in retrace script
Keyboard interrupts are handled as exceptions in Python, so unguarded
except statements can prevent a program from properly terminating.
Bug: angleproject:7639
Change-Id: I54ee754a40457b924eda0a6c8074f575263528ad
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3856650
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Sean Risser <srisser@google.com>
|
|
61e905af
|
2022-09-07T15:47:26
|
|
Move out of bounds buffer access tests under correct extension
A few tests in RobustResourceInitTest are testing for out of bounds
values but RobustResourceInitTest is only checking
GL_ANGLE_robust_resource_initialization which does not do anything
for out of bounds access.
I moved them to the RobustBufferAccessBehaviorTest.
Bug: angleproject:7638
Change-Id: If542ce2f1711e4b1980bf52cabfa3cff71480536
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3880833
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
|
|
526e8e64
|
2022-09-07T17:44:56
|
|
Fix UNSYNCHRONIZED glMapBufferRange test
The test makes a buffer and puts in
[red, red, red, zero, zero, zero]. It then maps the
zero, zero, zero portion with
glMapBufferRange(...GL_MAP_UNSYNCHRONIZED_BIT...).
It writes green over the zeros, and unmaps.
But, because GL_MAP_UNSYNCHRONIZED_BIT was passed in there
is no guarnatee the original values have been put in the buffer
yet. If they have not then the greens will be over-written.
Bug: angleproject:7640
Change-Id: I7d3bf54afb01bca3cc440f998ae1fad0ce1e5e8e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3881166
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Gregg Tavares <gman@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
f99e255b
|
2022-09-02T10:19:46
|
|
GL: Unbind buffers after mapping them.
Qualcomm drivers generate errors if a bound array buffer is
mapped during a draw call even if it is not used by the draw.
Bug: chromium:1345777
Change-Id: I0639caf5d74c8cbdc7245324fdcb136bd3d51b86
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3871333
Reviewed-by: Peng Huang <penghuang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Vasiliy Telezhnikov <vasilyt@chromium.org>
|
|
b9df95ff
|
2022-09-06T18:19:32
|
|
Add option to enable System EGL on all test configs
Introduce angle_test_enable_system_egl build option
to enable ES1_EGL, ESL2_EGL and ES3_EGL on all test
instantiation macros. This allows GLES 1.x tests to
run on native drivers.
Test: angle_end2end_tests --gtest_filter="*/ES1_EGL"
Bug: angleproject:6201
Change-Id: I6981eb9e99f0cdbd030319f014a7b371ced7e1e7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3812046
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Constantine Shablya <constantine.shablya@collabora.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
2deae29e
|
2022-09-06T16:34:18
|
|
Change xvfb screen to 3120x3120.
Support upstream added in https://crrev.com/c/3865972
Maximum DrawSurfaceWidth and DrawSurfaceHeight from
src/tests/restricted_traces/*/*.json. They're never both at 3120
but due to portrait/landscape orientation it's easies to just
bump up both.
Bug: angleproject:7620
Change-Id: I4a24eed8898d2cd4f65b7c2dbacb7bd1ffd4ba35
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3877784
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
f5b3ecd4
|
2022-09-06T17:02:50
|
|
fix perf test result path
==== Overview ====
Previously for bug 6353, we wanted to enable this extra logging at
ANGLERenderTest level so that all ANGLERenderTest tests can benefit from
the extra logging.
The design was assuming ANGLERenderTest can have any arbitrary naming,
and then just include the trace name in the name. However this
assumption is wrong because the name affects the path of some perf data
that is monitored by a dashboard.
Therefore, if we don't want to change the dashboard, then
ANGLERenderTest naming is constrained. This CL changes how the trace
names are printed in logcat for ANGLERenderTest. Instead of passing
down from TracePerfTest via the name, the new design is just printing
the mName, mBackend, and the mStory since those variables contain the
required information to serve the purpose of bug 6353.
==== Tests ====
[test 1]
- use this build args: http://go/paste/4625489225318400
- ```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 test"```
- 4 tests were executed:
```
solti@solti:~/angle$ adb logcat -d | grep "running test"
09-06 18:34:13.491 13614 13644 I ANGLE : running test name:
"TracePerf", backend: "_vulkan", story: "angry_birds_2_1500"
09-06 18:34:23.958 13614 13644 I ANGLE : running test name:
"TracePerf", backend: "_native", story: "angry_birds_2_1500"
09-06 18:34:45.177 13614 13644 I ANGLE : running test name:
"TracePerf", backend: "_vulkan", story: "angry_birds_2_launch"
09-06 18:35:11.136 13614 13644 I ANGLE : running test name:
"TracePerf", backend: "_native", story: "angry_birds_2_launch"
solti@solti:~/angle$
```
[test 2]
- follow
http://docs/document/d/1W3E7e-YcR5noim_poM0f7Dc0W8AdQDbJ2tFSPXgjpH0?
resourcekey=0-VmGDLI3x0q4-sdpQ0n8GSA
- setup out/AndroidPerformance
- the build args: http://go/paste/4862801771233280
- the build cmd: autoninja -C out/AndroidPerformance angle_perftests
- 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 test"```
- confirmed the test names are printed:
```
solti@solti:~/angle$ adb logcat -d | grep "running test"
09-06 18:58:50.216 14592 14621 I ANGLE : running test name:
"TracePerf", backend: "_vulkan", story: "angry_birds_2_1500"
09-06 18:58:51.143 14592 14621 I ANGLE : running test name:
"TracePerf", backend: "_native", story: "angry_birds_2_1500"
09-06 18:58:51.467 14592 14621 I ANGLE : running test name:
"TracePerf", backend: "_vulkan", story: "angry_birds_2_launch"
09-06 18:58:51.907 14592 14621 I ANGLE : running test name:
"TracePerf", backend: "_native", story: "angry_birds_2_launch"
solti@solti:~/angle$
```
Bug: angleproject:6353
Bug: angleproject:7627
Change-Id: I02ad4396674fc01e9d10e474660a9dfac0d31edc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3873118
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Solti Ho <solti@google.com>
|
|
1d04539f
|
2022-09-06T15:20:32
|
|
Fix xfb tests rendering points
Some xfb tests render points and verify a coordinate away from the
points is unchanged as a means to break the render pass. Due to lack of
output to gl_PointSize, these tests are flaky on SwiftShader.
Bug: angleproject:7625
Change-Id: I7347516bb755ace87d57df3467c59055f28f1d69
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3877783
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Roman Lavrov <romanl@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
9c17232a
|
2022-09-02T16:05:48
|
|
Vulkan: Make robustness affect all of share group
Since contexts in a share group can share their program, if any context
in the share group is robust, programs in all contexts in the share
group need to be created with robustness in mind.
This fixes the situation when the programs are created after a robust
context has been created. However, if programs are created first, then
a robust context is added to a share group, there remains a bug where
the old programs aren't recreated to have robust behavior.
Bug: angleproject:7629
Change-Id: I4922091962a32ca75a6107343df0cd87e5e9592d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3872506
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
3960e63b
|
2022-08-09T14:02:59
|
|
Infra: Enable angle_deqp_gl46_tests on SwiftShader
This change disables the WGL frontend by default on
Windows when building ANGLE for desktop GL. This
is because the WGL frontend is not yet fully
implemented and it causes some of the trace tests to
fail. The WGL frontend should be enabled by default on
windows when more of its functionality gets implemented.
Test: angle_deqp_gl46_tests --use-angle=swiftshader
Bug: angleproject:7566
Bug: angleproject:7628
Change-Id: I69c695eb56d3858f715eeb86d28cc805e25c60eb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3858142
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
80f6a63a
|
2021-11-11T10:40:26
|
|
Tests external image uploads with colorspace
Repros of
android.hardware.nativehardware.cts.AHardwareBufferNativeTests#SingleLayer_ColorTest_GpuSampledImageCanBeSampled_R8G8B8A8_UNORM_sRGB
android.hardware.nativehardware.cts.AHardwareBufferNativeTests#SingleLayer_ColorTest_GpuSampledImageCanBeSampled_R8G8B8X8_UNORM_sRGB
These two pass:
- RGBAAHBUploadData
- RGBXAHBUploadData
but these two fail:
- RGBAAHBUploadDataColorspace
- RGBXAHBUploadDataColorspace
Bug: b/205995945
Test: newly added tests
Change-Id: I1a27be43ae73b08b406f8f60fd6eec3dc28d8229
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3276713
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Charlie Lao <cclao@google.com>
|
|
e8b6cd21
|
2022-09-01T14:10:43
|
|
Skip VulkanPerformanceCounterTest.EndXfbAfterRenderPassClosed
This test flakes on Windows/Swiftshader.
Bug: angleproject:7625
Change-Id: I79837aa66cb8637231bd112337be8a39f8938541
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3868937
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
61d5340d
|
2022-09-01T13:55:07
|
|
Skip EmulateCopyTexImage2DFromRenderbuffers tests on Win/Intel
There are flaky end2end tests with this workaround enabled. The
workaround is only meant to be enabled on iOS so we can skip it on
Windows.
Bug: angleproject:7624
Change-Id: If16c83fe6d7c922e412dc1a763a698479e07a930
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3868936
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
38a38b8d
|
2022-09-01T17:10:39
|
|
Revert "EndXfbAfterRenderPassClosed expectation (0,0) -> (w/2,h/2)"
This reverts commit 2dc1c609dea184e5e51a8136df71ae14f4481f52.
Reason for revert: Doesn't fix the issue
Original change's description:
> EndXfbAfterRenderPassClosed expectation (0,0) -> (w/2,h/2)
>
> Bug: None
> Change-Id: I6a8006be39ff8b8208004f533157f27da8e7fe24
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3863143
> Auto-Submit: Roman Lavrov <romanl@google.com>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Bug: None
Change-Id: Ifbb8f12798c9b5bf1f77f997302114263eceaf75
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3868935
Auto-Submit: Roman Lavrov <romanl@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
|
|
2dc1c609
|
2022-08-29T15:31:56
|
|
EndXfbAfterRenderPassClosed expectation (0,0) -> (w/2,h/2)
Bug: None
Change-Id: I6a8006be39ff8b8208004f533157f27da8e7fe24
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3863143
Auto-Submit: Roman Lavrov <romanl@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
4cab7f38
|
2022-08-10T20:33:07
|
|
Fix EGL_ANGLE_program_cache_control for eglCreateContext
EGL_CONTEXT_PROGRAM_BINARY_CACHE_ENABLED_ANGLE is an attribute for
creating EGL context, but ANGLE reads it from mAttributeMap which is
not the attribs passed to eglCreateContext().
Bug: chromium:1336126
Change-Id: Id3ea1955f927a7e051285c79b590dcf1f11f22ed
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3823621
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Peng Huang <penghuang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
87ed2c9d
|
2022-08-11T11:19:17
|
|
TestSuiteTest: Generate more unique result file names.
Speculative fix for flaky runs of TestSuiteTest. Flakes appear to read
the results of other tests suggesting rand is not unique enough to
protect against tests generating the same results file.
Bug: chromium:1352134
Change-Id: Icadf64c557e23e6d87fd18aa60aa48373ecec9fd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3827144
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
3d0faa02
|
2022-08-09T16:48:06
|
|
Remove workaround affecting --list-tests --gtest_filter=X.
One of the multiple workarounds added in https://crrev.com/c/3062240.
It makes `--list-tests --gtest_filter=X` behave as if it was just
`--list-tests`. Not sure why this was necessary, bots appear to work
without it?.. Could be something that changed since that CL?
Bug: angleproject:7508
Change-Id: I9988add40ddf3168e00cea2739e5a9209f633161
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3821374
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
6d0452b7
|
2022-08-10T13:34:29
|
|
Fix ANGLE_HAS_HISTOGRAMS following crrev.com/c/3817602
Bug: angleproject:7299
Change-Id: I1d6f97e61dfdbea04009cc08a17344a59e438e51
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3823618
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
493b5aff
|
2022-08-09T14:57:24
|
|
Vulkan: Workaround ARM bug with stencil write mask
Bug: angleproject:7556
Change-Id: I0aa17c178071cc15d8ee15f700b0c4932819c72a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3821367
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
dc82ff15
|
2022-08-08T16:06:13
|
|
Add config angle_maybe_has_histograms to angle_perftests_common.
ANGLE_HAS_HISTOGRAMS wasn't consistently defined in compilation targets.
I was working on a prototype and ran into crashes due to an inline
function in TestSuite (where this class is used) getting invalid
offsets in some cases due to this :-O
Shabi:
"""
angle_source_set makes something the equivalent of a temporary .a,
so objects are not recompiled for every target that links to it
"""
Also change ANGLE_HAS_HISTOGRAMS to =1 or =0 as Yuly suggested so that
we can check if it's defined in the header to avoid inconsistency.
Bug: angleproject:7299
Change-Id: I907184a6ca2bc673f5bffc473b584d78625a11c8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3817602
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Auto-Submit: Roman Lavrov <romanl@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
408c5a56
|
2022-08-09T09:07:41
|
|
Mark FormatPrintTest as potentially uninstantiated.
Vulkan is not an available backend on iOS.
Bug: angleproject:5417
Change-Id: I92afff13bc10a1b6a3faa51a1620fd250972cab0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3819902
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Auto-Submit: Geoff Lang <geofflang@chromium.org>
|
|
2c351351
|
2022-08-07T22:31:40
|
|
Vulkan: Don't break render pass on read-only buffer updates
When uploading to a buffer that is in use by the GPU, we either acquire
a new buffer and copy the contents over, or stage the update and do a
GPU copy.
Ignoring all other conditions, this decision was made based on whether a
small or large part of the buffer is being updated; small updates where
staged.
However, if the current render pass uses the buffer in read-only mode,
the staged update would break it (to apply the update). In this change,
this situation is detected and the acquire-and-update path is chosen
even for small updates.
Bug: angleproject:7534
Change-Id: Ie2c0989449dcc7d03695a003cf6f353920f8fb65
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3812566
Reviewed-by: Charlie Lao <cclao@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
52719c9f
|
2022-08-05T14:23:24
|
|
[fuchsia] Migrate angle_end2end_tests to component framework v2.
Bug: chromium:1256503
Change-Id: I28d76dfa721fd6a65e029833050140c487e8006d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3812043
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Juan Muraira <jpmuraira@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Auto-Submit: Greg Thompson <grt@chromium.org>
|
|
6f80f0f0
|
2022-08-06T02:29:19
|
|
Translator: Clean up the compile flag passing interface
Historically, compile flags were sent to the translator as a bitmask.
Recently, we were getting close to running out of bits. Additionally,
direct-to-metal work had started to introduce constants to be passed to
the translator, which were misplaced in ShBuiltInResources and Caps.
Recent work on Pixel Local Storage adds even more constants, aggravating
the situation.
In this change, the interface to passing compile flags is reworked. A
struct is passed (instead of a bitmask) that has one bit for each flag.
This can be indefinitely extended. Additionally, the constants needed
by metal and PLS are also placed in this struct. In turn, the backends
can set these options directly, and don't have to hack them into Caps to
further get hacked into ShBuiltInResources.
Bug: angleproject:7559
Change-Id: If93f1e1b8818ad3a0ac708ab04ab93b4b397d114
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3812562
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
8474a95e
|
2022-08-05T22:15:04
|
|
Translator: Don't validate structs on non-root nodes
Struct validation needs to know about structs that may have been defined
outside the scope of the node, so this validation (similar to variable
and function call validation) is disabled when validation a subtree of
the AST.
Bug: angleproject:7531
Bug: b/239207278
Change-Id: Id6dcee041a40f09f0c36a9ef3bfc238433b69c58
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3812047
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
|
|
2de8bb42
|
2022-08-03T18:15:52
|
|
Converge run wrappers into angle_test_util.RunTestSuite
Bug: angleproject:7299
Change-Id: Ifa882028a6f49579b4a9c6893053cb3bee8d83fd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3808302
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Roman Lavrov <romanl@google.com>
|
|
928c5016
|
2022-08-04T12:28:12
|
|
Vulkan: Fix garbage collection vs outside-RP-only flush
In https://chromium-review.googlesource.com/c/angle/angle/+/3379231, an
optimization was implemented such that the excessive recorded texture
uploads would get flushed early and submitted. This caused a
use-after-free bug in the following situation:
* Draw with pipeline A
* Delete A <--- this puts A in the Context garbage list
* Upload a lot of data
At this point, the flush threshold could pass and the commands recorded
outside of the render pass up to this point would be submitted.
Associated with this submission was the current garbage, including
pipeline A. However, the render pass that uses pipeline A is still not
submitted.
Now if after some time the render pass is still open, but the "completed
commands" are checked (another set of uploads causing another
submission, a query status check, etc), the garbage can be cleaned up.
When the render pass closes next and is submitted, the implementation
attempts to use the pipeline, which is already deleted.
In this change, outside-render-pass-only submissions no longer reference
the current garbage. This has the side effect that the temporary
buffers used for uploading texture data won't be released early. A
future optimization may want to separate the garbage list in ContextVk
to render pass and outside render pass garbage.
Bug: chromium:1337538
Change-Id: I4d31edc53916785d44420f4d6b4b2578ca3996e2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3812555
Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
|