src/tests/BUILD.gn


Log

Author Commit Date CI Message
Geoff Lang 785353fd 2022-05-24T12:40:16 Support Desktop OpenGL context creation in end2end tests Validation of Desktop GL versions and profile masks is unimplemented. Bug: angleproject:7360 Change-Id: Ifae94215b6aada895c2b02318a1d05c9515e9b96 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3664916 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Alan Zhao 685d9175 2022-06-10T13:35:06 Remove the build flag -Wno-deprecated-declarations Now that the commit https://github.com/KhronosGroup/VK-GL-CTS/commit/44b613a986253cdde28283497731a7b909b520bc is included in angle's latest deps roll, we can remove the flag silencing the clang warning as std::iterator is no longer used. Bug: angleproject:7349 Change-Id: Ie7f3b4e245593ceb241a9e3a00593f99fa360492 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3697621 Auto-Submit: Alan Zhao <ayzhao@google.com> Commit-Queue: Nico Weber <thakis@chromium.org> Commit-Queue: Alan Zhao <ayzhao@google.com> Reviewed-by: Nico Weber <thakis@chromium.org>
Shahbaz Youssefi 3dfc8004 2022-06-08T14:24:48 Vulkan: Optimize sync followed by swap Previously, inserting a sync object immediately caused a submission. That was done in https://chromium-review.googlesource.com/c/angle/angle/+/3200274 to be able to wait until the sync object is signaled without having to wait for whatever is recorded after it until a flush naturally happens. Some applications issue a glFenceSync right before eglSwapBuffers. The submission incurred by glFenceSync disallowed the optimizations that eglSwapBuffers would have done, leading to performance degradations. This could have been avoided if glFenceSync was issued right after eglSwapBuffers, but that's not the case with a number of applications. In this change, when a fence is inserted: - For EGL sync objects, a submission is issued regardless - For GL sync objects, a submission is issued if there is no render pass open - For GL sync objects, the submission is deferred if there is an open render pass. This is done by marking the render pass closed, and flagging the context as having a deferred flash. If the context that issued the fence sync issues another draw call, the render pass is naturally closed and the submission is performed. If the context that issued the fence sync causes a submission, it would have a chance to modify the render pass before doing so. For example, it could apply swapchain optimizations before swapping, or add a resolve attachment for blit. If the context that issued the fence sync doesn't cause a submission before another context tries to access it (get status, wait, etc), the other context will flush its render pass and cause a submission on its behalf. This is possible because the deferral of submission is done only for GL sync objects, and those are only accessible by other contexts in the same share group. Bug: angleproject:7379 Change-Id: I3dd1c1bfd575206d730dd9ee2e33ba2254318521 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3695520 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Alan Zhao 0b808c74 2022-05-21T02:00:55 Silence all std::iterator deperecation warnings This CL applies the config :angle_deqp_framework_common_warnings, which was introduced in https://crrev.com/c/3651152, to more targets. The headers that contained std::iterator, identified in https://github.com/KhronosGroup/VK-GL-CTS/pull/323, are included in files that belong to build targets that do not explicitly include those headers, so the previous CL failed to remove all warnings and allow the libc++ roll CL (https://crrev.com/c/3655638) to pass the swangle tryjobs. To verify: Checkout the libc++ roll patch at https://crrev.com/c/3655638 args.gn: build_angle_deqp_tests = true dcheck_always_on = true is_component_build = true is_debug = false symbol_level = 1 In a chromium source directory, run the following command to build all targets under //third_party/angle: autoninja -C out/Default `gn ls out/Default |\ grep '^//third_party/angle' |\ sed 's/\/\///' |\ sed 's/([^()]*)//'` Bug: angleproject:7349 Change-Id: I295872d38137794569598c39061822161d6cd655 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3651154 Reviewed-by: Nico Weber <thakis@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org>
Nico Weber 52c42e5a 2022-05-20T09:28:29 Temporarily disable deprecation warnings for VK-GL-CTS Merging the real fix will take a few weeks, so disable the warning until then to unblock the libc++ roll. This isn't ideal, but the alternative is temporarily brancing VK-GL-CTS, which also comes with downsides. So let's try this first. Bug: angleproject:7349 Change-Id: Ib1bb6cdb9470801f3202f75cce46ee88efb0730b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3651152 Auto-Submit: Nico Weber <thakis@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi e73121b1 2022-05-10T22:47:20 Vulkan: Fix VulkanPipelineCachePerfTest Bug: angleproject:5906 Change-Id: Ide86708df10679309cc2aca0df088e8595d2a8c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3641142 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Antonio Caggiano 9ad43bdd 2021-12-09T16:52:35 Re-land: "Vulkan: Support Wayland" Implement DisplayVkWayland and WindowSurfaceVkWayland. Get window size from native window and check egl config is just empty. An EGL wayland test is added for testing rendering and buffers swapping. Re-land fixes: - link failure in systems with no libwayland installed. - XCB display availability check. Bug: angleproject:6902 Change-Id: I5daecf3591493308ac71a7dd3bc0802f492e6fed Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3621059 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Yuly Novikov 4bbc55f4 2022-05-03T08:19:55 Revert "Re-land: "Vulkan: Support Wayland"" This reverts commit e0dd196a0e0aace17dfaa204163d798f504ea94e. Reason for revert: blocks ANGLE roll into Chromium Original change's description: > Re-land: "Vulkan: Support Wayland" > > Implement DisplayVkWayland and WindowSurfaceVkWayland. Get window size > from native window and check egl config is just empty. An EGL wayland > test is added for testing rendering and buffers swapping. > > Re-land fixes link failure in systems with no libwayland installed. > > Bug: angleproject:6902 > Change-Id: I4f091d4f479a537d0390caedce88a5d39f8b356f > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3608088 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Jamie Madill <jmadill@chromium.org> Bug: angleproject:6902, angleproject:7260 Change-Id: I7e92bf811b191eee6679d577006cddc0e1286fad Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3621057 Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Antonio Caggiano e0dd196a 2021-12-09T16:52:35 Re-land: "Vulkan: Support Wayland" Implement DisplayVkWayland and WindowSurfaceVkWayland. Get window size from native window and check egl config is just empty. An EGL wayland test is added for testing rendering and buffers swapping. Re-land fixes link failure in systems with no libwayland installed. Bug: angleproject:6902 Change-Id: I4f091d4f479a537d0390caedce88a5d39f8b356f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3608088 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Yuxin Hu 80d50b99 2022-04-26T17:29:08 Add build arg to automatically attach renderdoc Macro ANGLE_TEST_ENABLE_RENDERDOC_CAPTURE was defined only for files under src/libANGLE, however, we need to use this Macro in filed under src/tests/. Move the Macro config from BUILD.gn to src/tests/BUILD.gn. Also add a new gn arg angle_enable_renderdoc to control enable/disable the Macro. Bug: angleproject:6072 Change-Id: I3879015e9bdfe2530012ea39729a31c47129ce4c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3609024 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov d1788614 2022-04-22T15:52:16 Use adb instead of catapult to run perf tests on Android. Add support for replacing flags: --isolated-script-test-output --isolated-script-test-perf-output --render-test-output-dir Always set --isolated-script-test-output to check for test failures using num_failures_by_type, interrupted, is_unexpected fields. Bug: angleproject:6854 Change-Id: Ia701f4d4d5d1adc9a24c057bb5c58fd5457cbd65 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3602834 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Jamie Madill 768c7d47 2022-04-21T16:55:05 Revert "Re-land: "Vulkan: Support Wayland"" This reverts commit f6cdd02fb4bceb4072430e3dbcb1e945809471e0. Reason for revert: Still warns about extra dependency on wayland. https://ci.chromium.org/ui/p/chromium/builders/try/linux-rel/990820/overview Original change's description: > Re-land: "Vulkan: Support Wayland" > > Implement DisplayVkWayland and WindowSurfaceVkWayland. Get window size > from native window and check egl config is just empty. An EGL wayland > test is added for testing rendering and buffers swapping. > > Re-land fixes link failure in systems with no libwayland installed. > > Bug: angleproject:6902 > Change-Id: I706af14620d6298275009f5caf93b0e60339219b > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3578765 > Auto-Submit: Antonio Caggiano <antonio.caggiano@collabora.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Jamie Madill <jmadill@chromium.org> Bug: angleproject:6902 Change-Id: I11b1fe473fceb2fddb85bd562b769d18426ce07b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3600378 Auto-Submit: Jamie Madill <jmadill@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Antonio Caggiano f6cdd02f 2021-12-09T16:52:35 Re-land: "Vulkan: Support Wayland" Implement DisplayVkWayland and WindowSurfaceVkWayland. Get window size from native window and check egl config is just empty. An EGL wayland test is added for testing rendering and buffers swapping. Re-land fixes link failure in systems with no libwayland installed. Bug: angleproject:6902 Change-Id: I706af14620d6298275009f5caf93b0e60339219b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3578765 Auto-Submit: Antonio Caggiano <antonio.caggiano@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Peter Wen 6199e905 2022-04-19T13:27:59 Switch to using //build/android:build_java Chromium is switching to "build_java" and "native_libraries_java" will be removed shortly. Bug: chromium:1038372 Change-Id: Iaef79d166f6c320360ed4d836bba0be7aa05ea33 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3594640 Auto-Submit: Peter Wen <wnwen@chromium.org> Reviewed-by: Mohamed Heikal <mheikal@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jonah Ryan-Davis 01c0bc21 2022-04-13T17:56:13 Revert "Vulkan: Support Wayland" This reverts commit 510351f2006e32ffc6da722f1fc9ea5666e9c0da. Reason for revert: Breaking ANGLE roll: https://bugs.chromium.org/p/angleproject/issues/detail?id=7202 Original change's description: > Vulkan: Support Wayland > > Implement DisplayVkWayland and WindowSurfaceVkWayland. Get window size > from native window and check egl config is just empty. > > Then add an EGL wayland test for testing rendering and buffers swapping. > > Bug: angleproject:6902 > Change-Id: I8204a5cc99f26330b74caba241bebf14c5650c2d > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3395898 > Reviewed-by: mohan maiya <m.maiya@samsung.com> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Auto-Submit: Antonio Caggiano <antonio.caggiano@collabora.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Jamie Madill <jmadill@chromium.org> Bug: angleproject:6902 Change-Id: Idd0cb78c84baeb1b2ab6910173160206901799f6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3584921 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Antonio Caggiano 510351f2 2021-12-09T16:52:35 Vulkan: Support Wayland Implement DisplayVkWayland and WindowSurfaceVkWayland. Get window size from native window and check egl config is just empty. Then add an EGL wayland test for testing rendering and buffers swapping. Bug: angleproject:6902 Change-Id: I8204a5cc99f26330b74caba241bebf14c5650c2d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3395898 Reviewed-by: mohan maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Antonio Caggiano <antonio.caggiano@collabora.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Kyle Piddington eeddb050 2022-01-27T11:36:10 Metal: Incorrect parenthization for assignment expressions Fix for Webgl tests conformance/ogles/GL/build/build_017_to_024.html Create intermediate values for assign-equals operations, as they cause issues on expansion later. Bug: angleproject:6489 Change-Id: I7fea162bd1f59c7c765868af739d6ddfc1c1747f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3421527 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Kyle Piddington <kpiddington@apple.com>
angle-autoroll 37f59b85 2022-02-07T19:34:11 Roll VK-GL-CTS from 97ceb2222747 to b594e2aabae9 (64 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/97ceb2222747..b594e2aabae9 2022-02-05 quic_mnetsch@quicinc.com Merge "Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/master" 2022-02-04 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/master 2022-02-03 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/master 2022-01-29 ilkka.saarelainen@siru.fi Add depth and stencil multisample copy tests 2022-01-29 juha.heiskanen@siru.fi Add color output check to early fragment sample count tests 2022-01-29 juha.heiskanen@siru.fi Test dynamic descriptors with different stage visibility 2022-01-29 antto.makinen@siru.fi Add a batch of GraphicsFuzz coverage tests 2022-01-29 mika.vainola@siru.fi Remove EnableBlendCase from ES 3.1 2022-01-29 srisser@google.com Delay initializing fragment_shading_rate tests 2022-01-28 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2022-01-27 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/master 2022-01-23 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2022-01-18 quic_mnetsch@quicinc.com Merge "Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master" 2022-01-16 ari.suonpaa@siru.fi Add coverage for transition between compute and indirect draw 2022-01-14 emmanuel.tanguy@broadcom.com Add missing barrier to fix multi-core issue 2022-01-14 juha.heiskanen@siru.fi Test EarlyFragmentTests effect on color output and sample counting 2022-01-14 jari.komppa@siru.fi Add more power of two checks 2022-01-14 piotr.byszewski@mobica.com Update vulkan-docs version 2022-01-14 jari.komppa@siru.fi Add missing formats to mapTextureFormat 2022-01-14 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2022-01-13 ari.suonpaa@siru.fi Move draw buffers indexed tests from ES3.1 to ES3 group 2022-01-11 pdaniell@nvidia.com VK_EXT_pageable_device_local_memory test coverage 2022-01-10 piotr.byszewski@mobica.com Rename mustpass master branch to main 2022-01-10 quic_mnetsch@quicinc.com Merge "Merge vk-gl-cts/dev/VK_EXT_image_view_min_lod into vk-gl-cts/master" 2022-01-10 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2022-01-07 corentin.noel@collabora.com gl4cMapBufferAlignmentTests: ensure that the GL_ARB_buffer_storage extension is present 2022-01-07 jari.komppa@siru.fi Update README.md files, replacing old link 2022-01-07 arkadiusz.sarwa@amd.com Add support for building with Visual Studio 2022 2022-01-07 juha.heiskanen@siru.fi Remove unused variables from occlusion query tests 2022-01-07 dneto@google.com Assert that isnan and isinf cases cover intended classes 2022-01-07 antto.makinen@siru.fi Add a batch of GraphicsFuzz coverage tests 2022-01-07 venni.ihanakangas@siru.fi Improve AHB image_formats subtest log output 2022-01-07 marcin.zajac@mobica.com OpPtrEqual OpPtrNotEqual for non-variable pointers 2022-01-07 piotr.byszewski@mobica.com Extend FSR multiview tests 2022-01-07 michal.jakubek@mobica.com Handle VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_* flags 2022-01-07 jari.komppa@siru.fi Add 8-bit blend_operation_advanced tests 2022-01-07 rgarcia@igalia.com Test constant and dynamically uniform subgroup shuffle deltas 2022-01-07 ilkka.saarelainen@siru.fi Rework platform memory limits 2022-01-07 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-cts-4.6.1 into vk-gl-cts/master 2022-01-07 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2022-01-05 quic_mnetsch@quicinc.com Notice of withdrawal of Vulkan CTS 1.2.5.x 2021-12-11 antto.makinen@siru.fi Add a batch of GraphicsFuzz coverage tests 2021-12-11 rgarcia@igalia.com Fix dot product with saturation tests 2021-12-11 piotr.byszewski@mobica.com Add dynamic rendering to attachment rate tests 2021-12-11 rgarcia@igalia.com Further VK_NV_mesh_shader test variants and fixes 2021-12-11 pdaniell@nvidia.com Fix and enable dynamic rendering multivew coverage 2021-12-11 quic_mnetsch@quicinc.com Merge "Merge dev/VK_EXT_depth_clip_control into master" 2021-12-11 ari.suonpaa@siru.fi Fix integer overflow in Random::getInt() 2021-12-11 juha.heiskanen@siru.fi TRANSIENT_ATTACHMENT_BIT store/load op test 2021-12-11 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2021-12-10 quic_mnetsch@quicinc.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2021-12-06 quic_mnetsch@quicinc.com Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master 2021-12-03 ilkka.saarelainen@siru.fi Add missing feature check to MS copy tests 2021-12-03 jarcher@nvidia.com Update Android API and permissions for OpenGL 2021-12-03 antto.makinen@siru.fi Test no-op image layout transitions in VK_KHR_synchronization2 2021-12-03 antto.makinen@siru.fi Ensure that compute shaders have a subgroup size that is uniform in command scope 2021-12-03 quic_mnetsch@quicinc.com Merge "Merge vk-gl-cts/dev/VK_ARM_rasterization_order_attachment_access into vk-gl-cts/master" 2021-12-03 juha.heiskanen@siru.fi Missing coverage for vkCmdCopyQueryPoolResults 2021-12-03 jari.komppa@siru.fi Add suite of div by zero tests 2021-12-03 ari.suonpaa@siru.fi Enable packed formats for border swizzle tests 2021-12-03 piotr.byszewski@mobica.com Add portability_subset to extensions_data.txt 2021-12-03 lionel.g.landwerlin@intel.com Verify that timeline semaphores cannot import/export SYNC_FD 2021-12-03 piotr.byszewski@mobica.com Execute FDM tests with dynamic rendering 2021-12-03 piotr.byszewski@mobica.com Execute FDM tests with legacy renderpass 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,ianelliott@google.com,ynovikov@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:6773, angleproject:6737, angleproject:4394 Change-Id: I5e8157787a821d116231640f89b67cde2cc2fce4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3442372 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Greg Thompson d635feb1 2022-02-08T11:49:21 [fuchsia] Tests using additional_manifest_fragments are CFv1. These tests will be migrated to CFv2 as their fragments (and their respective required capabilities) are migrated to CFv2. Bug: chromium:1256502 Change-Id: I9ae42c35da005fe174cb0cebec925995f4fa7026 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3447540 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Alex Gough 42cb6147 2022-01-05T07:59:51 Revert workarounds for exception handler code-gen with CFG enabled This reverts two commits:- Revert "disable cfguards for all deqp tests" This reverts commit 1d2752d84f497c8012af1f54b1b3ec52f9b5cc92. Change-Id: I6d2647340592d3b9b5f2430d4fd077835528ef0b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3244256 Revert "Disable cfguard for tcu/depq test files" This reverts commit 2ca35522660e780a13235d80c9c643dfb0e53faf. Change-Id: Iae75dc0f911a3430276909f4a14944d0f805fdf2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3241703 A fix in https://reviews.llvm.org/D114914 should make this workaround unnecessary. See https://crbug.com/1260847 for discussion. Building Chrome with the following gn args, the following tests pass. build_angle_deqp_tests = true dcheck_always_on = true is_component_build = true is_debug = false symbol_level = 2 target_cpu = "x86" use_goma = true win_enable_cfg_guards = true .\out\swangle\angle_deqp_gles2_tests.exe --use-angle=swiftshader --bot-mode .\out\swangle\angle_deqp_gles31_tests.exe --use-angle=swiftshader --bot-mode Tests: CQ Bug: chromium:1260847 Bug: angleproject:6617 Change-Id: Iff3b2a3cedb21bb16bb7dd7b30c3d3b4ecd79d78 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3368184 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Peng Huang 65720272 2021-11-26T17:42:16 Add end2end gl test for *_ANGLE_vulkan_image extensions Bug: chromium:1264439,angleproject:6741 Change-Id: I12d332995138a020ba514fba34024c3e666b8e6b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3304396 Commit-Queue: Peng Huang <penghuang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 1bcbbd3b 2021-11-18T10:53:04 Roll chromium_revision 426f5c5607..c801e56b48 (941724:943107) Change log: https://chromium.googlesource.com/chromium/src/+log/426f5c5607..c801e56b48 Full diff: https://chromium.googlesource.com/chromium/src/+/426f5c5607..c801e56b48 Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/cfe2150f91..b0986a849c * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/b138e6ce86..075dd7e228 * buildtools/linux64: git_revision:90294ccdcf9334ed25a76ac9b67689468e506342..git_revision:4aa9bdfa05b688c58d3d7d3e496f3f18cbb3d89e * buildtools/mac: git_revision:90294ccdcf9334ed25a76ac9b67689468e506342..git_revision:4aa9bdfa05b688c58d3d7d3e496f3f18cbb3d89e * buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/707d75f53e..81212d29a2 * buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/51ffc5ed5c..7f068e554e * buildtools/win: git_revision:90294ccdcf9334ed25a76ac9b67689468e506342..git_revision:4aa9bdfa05b688c58d3d7d3e496f3f18cbb3d89e * testing: https://chromium.googlesource.com/chromium/src/testing/+log/65e053eeaf..4cd7b34100 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/312bb312c9..13257ba994 * third_party/android_sdk/public: AuYa11pULKT8AI14_owabJrkZoRGuovL-nvwmiONlYEC..Ez2NWws2SJYCF6qw2O-mSCqK6424l3ZdSTpppLyVR_cC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..e6e1eb6895 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/7b33514431..1c7dec337d * third_party/r8: CgqKHWrPllIffdVKV209JAStQqR93hUpTzSwKQ5Mth8C..nqWomZTwNDoogX26WeCSoFGg6aQN1FrwzoU4hCS0duEC * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/32d7c383a4..8caa4c5164 * tools/luci-go: git_revision:0e76392e6557cc3ff8d95c3bc012540e0dbc128a..git_revision:2dfe2f218f0395673f336d17b841edf629907ae3 * tools/luci-go: git_revision:0e76392e6557cc3ff8d95c3bc012540e0dbc128a..git_revision:2dfe2f218f0395673f336d17b841edf629907ae3 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/e1dd5dfb7b..9e42d0c22f * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/ffa11379f7..19145774c9 DEPS diff: https://chromium.googlesource.com/chromium/src/+/426f5c5607..c801e56b48/DEPS No update to Clang. TBR=geofflang@google.com, BUG=None Change-Id: I628302cee721b340b722ffff2be0bf45645ac13e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3289108 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang 83fa1890 2021-11-17T12:17:31 Disable variable shadow warnings on more ES1 conformance tests The list of gles1 sources is used in several targets without a common config. Bug: angleproject:6703 Change-Id: Ib78719c9dc322075dfba05380e99ec1ada8a3265 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3289616 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang b9a8f092 2021-11-16T10:44:26 Disable variable shadow warnings on ES1 conformance tests Bug: angleproject:6703 Change-Id: Ie66b5afc12c4f29f69b8d7e205de02cadd5268a3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3285383 Reviewed-by: Jamie Madill <jmadill@chromium.org>
Alex Gough 1d2752d8 2021-10-26T11:41:58 disable cfguards for all deqp tests Previous attempt[0] to fix this was too precise, this now disables cfguards for angle tests at the angle_deqp (source_set, shared_library, test) level. See crbug.com/1260874 - This works around a codegen bug for Windows x86 that is blocking us landing CFG. Following now all pass: PASS: .\out\swangle\angle_deqp_gles2_tests.exe --use-angle=swiftshader --gtest_filter=dEQP.GLES2/functional_multisample_common_edge_big_quad --bot-mode PASS: .\out\swangle\angle_deqp_egl_tests.exe --use-angle=swiftshader --gtest_filter=dEQP.EGL/functional_color_clears_multi_thread_gles1_other --bot-mode PASS: .\out\swangle\angle_deqp_gles31_tests.exe --use-angle=swiftshader --gtest_filter=dEQP.GLES31/functional_state_query_texture_texture_2d_multisample_texture_swizzle_g_pure_int --bot-mode [0] https://chromium-review.googlesource.com/c/angle/angle/+/3241703 Test: CQ plus above Bug: angleproject:6617 Change-Id: I6d2647340592d3b9b5f2430d4fd077835528ef0b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3244256 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Alex Gough 2ca35522 2021-10-25T10:20:17 Disable cfguard for tcu/depq test files These seem to be generated with bad unwinding and cause crashes when exceptions are unwound. Specifically tcu::TestStatus RandomOrderExecutor::executeInner(TestCase *testCase, const std::string &casePath) can be built with __declspec(guard(nocf). Test: CQ .\out\swangle\angle_deqp_gles2_tests.exe --use-angle=swiftshader --gtest_filter=dEQP.GLES2/functional_multisample_common_edge_big_quad --bot-mode Bug: angleproject:6617 Change-Id: Iae75dc0f911a3430276909f4a14944d0f805fdf2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3241703 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi f3d5dac3 2021-08-23T17:25:15 Vulkan: SPIR-V Gen: Drop dependency to glslang The SPIR-V gen path is now made default. Compilation through glslang is still supported for debugging, and is enabled on the GLSL* end2end tests for smoke testing. On release builds, glslang is not supported. To test with glslang, add the following gn arg (only necessary if dcheck is disabled): angle_enable_spirv_gen_through_glslang = true Then enable the generateSPIRVThroughGlslang feature. This can be done by setting an environment variable: ANGLE_FEATURE_OVERRIDES_ENABLED=generateSPIRVThroughGlslang ./angle_deqp_gles2_tests Binary size saving: - 1.3MB on Linux (SPIR-V gen itself: 240KB) - 730KB on Android (SPIR-V gen itself: 140KB) Perf tests: - LinkProgramBenchmark.Run/vulkan_compile_single_thread * Through glslang: truncated mean: 1287033.36 * Direct SPIR-V Gen: truncated mean: 244495.91 (~80% reduction) - LinkProgramBenchmark.Run/vulkan_compile_multi_thread * Through glslang: truncated mean: 4565894.83 * Direct SPIR-V Gen: truncated mean: 1158164.10 (~75% reduction) Bug: angleproject:4889 Bug: angleproject:6210 Change-Id: I486342702977c8114e90073b97183aba115a8b2d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3115140 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Jamie Madill 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>
Jamie Madill 3666f00f 2021-09-20T16:20:50 GN: Remove the "no GTest" dEQP targets. These were unused and removing them cleans up the VS projects. Bug: None Change-Id: I1e1787ad1ceac15ecc88d9338e65b3072496066d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3173251 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 1af5c46c 2021-09-14T14:40:49 Move JsonSerializer from libANGLE to common. This lets us use the serializer from outside of libANGLE. The plan is to use it to serialize a list of supported extensions from the tests. Bug: angleproject:6379 Change-Id: Ib7b64cca32e733e342b80f893d3752318089f0c2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3163361 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 23b16743 2021-09-14T10:29:14 Fix compilation when disabling D3D back-ends. Common code areas weren't compiling when disabling combinations of the D3D9 and D3D11 back-ends. With manual testing this fixes various combinations of angle_enable_d3d9/d3d11/gl. Bug: angleproject:5925 Change-Id: Ie14f2b4c6169cf96c662e7ae6999751007d9adb0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3162836 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 2f3e4db8 2021-09-02T10:31:13 Capture/Replay: Serialize trace metadata to a JSON file. This will allow us to remove more code auto-generation for the trace tests. The trace info now can be loaded directly from JSON instead of from the autogenerated information. Bug: angleproject:5133 Change-Id: I04e22b9279b19282df274bc8defcd363d0449111 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3140218 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Alexey Knyazev 47279c72 2021-08-15T23:20:32 Adjust compressed texture validation; add test - Format check happens before target check to accommodate for unknown / disabled format enums. - PVRTC1 and ETC1 enums are not allowed for 2D Array and 3D targets. - PVRTC1 sRGB formats require enabling two extensions. - New noCompressedTexture3D limitation for older Metal versions. The test checks that only the appropriate entry points are affected after enabling compressed texture extensions. Bug: angleproject:5731, angleproject:6280 Change-Id: I4943cd3a82f60f9348215caa8639e0bc3e8b45db Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3094018 Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tim Van Patten 460618ad 2021-08-20T18:34:10 Refactor EGLMultiThreadSteps.h -> MultiThreadSteps.h The class ThreadSynchronization is very useful when synchronizing multiple threads in ANGLE tests, so it's being moved from egl_tests/EGLMultiThreadSteps.h to test_utils/MultiThreadSteps.h. Bug: angleproject:5971 Change-Id: I5df469aa68b79cf72d95e0276f42ab33a091314e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3111887 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
Jamie Madill d55d57ac 2021-08-17T14:16:07 GN: Disable unreachable code warnings in GLES 1 tests. Bug: chromium:1240679 Change-Id: Ib140cbd32386a7836acf9a4f477693b14bf3c6d1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3100590 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill d25c9d7f 2021-07-07T12:15:12 Add perf tests runner script. This script will be responsible for running the perf tests multiple times to try and stabilize measurements. We'll use it on the bots instead of just running the perf tests directly. Because the script invokes the binary multiple times, this slows down execution. Most significantly on Android, where we now need to use 20 shards, up from 6. Also marks one test as flaky on OpenGL. Bug: angleproject:6090 Change-Id: I5280035cb0bdb290a68dc6961a384eaf4b40dd4b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3011422 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi 246e95a5 2021-07-30T21:40:48 Disable Precise unittests without SPIR-V gen enabled Half the tests fail with glslang, which have the expectations set appropriately. When SPIR-V gen is disabled in build, when the unittest attempts to run the SPIR-V gen path it will use glslang instead and cause test failures. The whole suite is disabled temporarily when SPIR-V gen is disabled (i.e. non-dcheck builds). Bug: angleproject:4889 Change-Id: I8686eafef6821c6207c94f991cd8af2fb65a87ef Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3063943 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi 3036e090 2021-07-29T15:55:39 Vulkan: Direct SPIR-V Gen: Support the precise keyword The precise keyword is different in GLSL in that it defines what arithmetic operations _that have led to the value being assigned to a variable_ should be done precisely (i.e. not "contracted"). A tree traverser is implemented that detects precise access chains and applies precise-ness to the right hand side of assignment expressions to said access chains. This is only done if the shader uses the precise keyword in the first place. The algorithm for this is inspired by the implementation in glslang. This change additionally: - Fixes parser to allow precise on function parameters - Fixes GLSL code generation to output precise on struct members and function parameters. Bug: angleproject:4889 Change-Id: Ie3808c3c8c08da308e88af20f5f90379d9d14d47 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3056369 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill e635f6c2 2021-07-20T08:41:07 Add -Wno-implicit-fallthrough to GLES 1 CTS. Bug: angleproject:6198 Bug: chromium:995993 Change-Id: Ib8eb640d567c63d85645f64cc870a286227fb9c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3040160 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Kenneth Russell 4d9dbf9c 2021-07-13T15:23:30 Use "frameworks" rather than "libs" for iOS dependencies. The angle_test_expectations static library has added this dependency but it fails to build on the ios-simulator bot. Try using "frameworks" instead. Bug: angleproject:5505 Change-Id: Ia08240a042f241c7eefe0de730b6942a60047054 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3025238 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Kyle Piddington d33a2222 2021-04-26T16:56:15 Upstream Apple's direct-to-Metal backend: compile libANGLE. This change is meant to merge the metal backend changes from Apple's direct-to-Metal backend. Taken from Kyle Piddington's CL: https://chromium-review.googlesource.com/c/angle/angle/+/2857366/ The goal of this CL is to merge the metal backend code in a state that compiles, but not to switch the Metal backend over to using the direct-to-metal backend yet. Bug: angleproject:5505 Bug: angleproject:6127 Change-Id: If6783e06e0086b3a1dd25c6f53caca5cfc96cb86 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2950067 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Peter Kasting 04cb5e1d 2021-07-10T11:39:49 Disable -Wimplicit-int-float-conversion for gles1_conform. Bug: chromium:989932 Change-Id: I0038440470a6816bb0c4198af2224b7b85aa42b8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3018692 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 69c2d820 2021-06-29T11:58:41 Perf Tests: Register trace tests programatically. Using testing::RegisterTests lets us filter out the disabled configs. This helps sharding the tests because some shards were getting a very uneven distribution of real tests vs skipped tests. A couple shards were running 20 minutes, while most were about 6 minutes. More work might be needed to even that out. Bug: angleproject:6090 Change-Id: Ibdf35677cfea86dfc374a2b18bb57cd9f289ddee Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2994726 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 7df7fc7f 2021-06-20T00:05:28 Tests: Add support for --renderdoc This change adds support for a new flag namely `--renderdoc` to end2end and deqp tests. With this flag, each test automatically starts and ends a frame capture in renderdoc, working around an issue where renderdoc refuses to capture a test frame that doesn't start or end with a swap. With end2end tests, the capture starts before test set up, and ends after test tear down. With deqp tests, it starts before init, ends and restarts after each test iteration and ends after deinit. Bug: angleproject:6072 Change-Id: Ib41b816aff121bf922d9147044cc363c33a62181 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2971835 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Cody Northrop 71584e36 2021-05-27T11:50:47 Tests: Disable trace compilation for MSVC and GCC New traces are hitting string literal limits with MSVC. Since we don't use MSVC or GCC for trace development or testing, this CL disables trace compilation for non-clang setups. Bug: b/181794064 Bug: angleproject:6009 Change-Id: I0377792a049153a5505ecda4346a3cec57c12e9e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2922682 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Jamie Madill dd686e48 2021-05-11T19:08:01 Test Runner: Add test expectations parser. Moves the test expectations from dEQP into the test runner. Also updates angle_end2end_tests to take an expectations file. Includes some very simple angle_end2end_tests expectations. Note that the expectations in the file are less expressive than the skips we use in the cpp. Bug: angleproject:5951 Change-Id: Ib92235575bc3ea5f3a977ce416b0e78fe806e39b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2892274 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Jamie Madill f78927b0 2021-04-21T13:05:46 Remove libGLESv1_CM static. These entry points are already duplicated into libGLESv2. Including them in the static build causes a duplicate symbol error on Android. Bug: angleproject:2344 Change-Id: I56a2f2029e7da49215e64484c1d1316add6ff1c3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2842354 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2f808349 2021-04-16T19:21:15 Add standalone Android build. Includes necessary DEPS and GN build changes. Some folders are copied directly from Chromium because they don't exist as source mirrors or aren't available for other reasons. Bug: angleproject:2344 Change-Id: Ibb7f8a3e2288048b7aed2b0e277ca63b5a932c57 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2826480 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Le Hoang Quyen f2aa9d5d 2021-04-11T14:55:19 Reland: Metal: Support importing external metal textures This relands I4d4a88cfbb77d8b7508b787c7fec44073d3b11b0. Fixes: - uninstantiated ImageTestMetal error - failed ImageTest.ANGLEExtensionAvailability on ARM mac. Bug: angleproject:5763 Bug: angleproject:5814 Change-Id: I906fe52baefd6be3c6e00f594795bd527df01616 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2820178 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com>
Shahbaz Youssefi 1a146f07 2021-04-06T15:40:27 Roll VK-GL-CTS from c4e6dbe68e04 to ededa67cb12a (76 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/c4e6dbe68e04..ededa67cb12a 2021-04-13 timvp@google.com Always include sys/system_properties.h for Android 2021-04-09 juha.heiskanen@siru.fi Add primitive topologies for XFB query tests 2021-04-09 alexander.galazin@arm.com Merge vk-gl-cts/github-master into vk-gl-cts/master 2021-04-09 s.fricke@samsung.com Add OpImageQuerySamples with Storage Image test 2021-04-09 jdarpinian@chromium.org EXT_multisampled_render_to_texture test using ReadPixels 2021-04-08 alexander.galazin@arm.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2021-04-08 alexander.galazin@arm.com Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master 2021-04-07 alexander.galazin@arm.com Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master 2021-04-07 jajones@nvidia.com Add CMake detection logic for libdrm include files 2021-04-02 juha.heiskanen@siru.fi Add early fragment tests 2021-04-02 michal.jakubek@mobica.com Add tests for multisample resolve to level != 0 2021-04-02 boris.zanin@mobica.com Add coverage for 1D, 1D array and Cube array shadow images 2021-04-02 boris.zanin@mobica.com Add subgroup testing for ray tracing pipelines 2021-04-02 caio.oliveira@intel.com Test interaction between Workgroup explicit layout and zero initialization 2021-04-02 Alexander.Galazin@arm.com Merge "Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master" 2021-04-02 cheryl.wei@arm.com Add waived tests support for cts tools 2021-04-01 rgarcia@igalia.com Remove duplicate dataSafe function from deSTLUtil 2021-04-01 boris.zanin@mobica.com Add keys deqp-log-decompiled-spirv and deqp-log-empty-loginfo 2021-04-01 apinheiro@igalia.com Check for drawIndirectFirstInstance should only affect indirect draw calls 2021-03-31 alexander.galazin@arm.com Support GL 4.5 in the uniform location tests 2021-03-31 alexander.galazin@arm.com Support GL 4.5 in the multisample texture tests 2021-03-31 alexander.galazin@arm.com Support GL 4.5 in the EXT_texture_border_clamp tests 2021-03-30 alexander.galazin@arm.com Update Vulkan headers 2021-03-30 alexander.galazin@arm.com Support GL 4.5 in the geometry shading tests 2021-03-30 alexander.galazin@arm.com Support GL 4.5 in the tessellation tests 2021-03-30 alexander.galazin@arm.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2021-03-30 alexander.galazin@arm.com Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master 2021-03-30 alexander.galazin@arm.com Support GL 4.5 in the copy image tests 2021-03-26 michal.jakubek@mobica.com Added tests for most-negative snorm values in images 2021-03-26 alexander.galazin@arm.com Notice of withdrawal of Vulkan CTS 1.2.2.x 2021-03-25 timvp@google.com Include sys/system_properties.h in teglAndroidUtil.cpp 2021-03-25 afdx@google.com Add a batch of GraphicsFuzz tests 2021-03-25 alexander.galazin@arm.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2021-03-25 rgarcia@igalia.com QPA image viewer updates 2021-03-25 boris.zanin@mobica.com Fulfill OpControlBarrier requirement 2021-03-25 slawomir.cygan@intel.com Add an option to terminate after first failure, update READMEs 2021-03-25 slawomir.cygan@intel.com Terminate with an error if unrecognized arguments are passed to dEQP executable 2021-03-25 venni.ihanakangas@siru.fi Ensure only Unix paths are added to deqp.apk 2021-03-19 alexander.galazin@arm.com Merge vk-gl-cts/github-master into vk-gl-cts/master 2021-03-19 jbolz@nvidia.com Add tests to exercise 'readonly' SSBOs 2021-03-18 alexander.galazin@arm.com Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master 2021-03-18 slawomir.cygan@intel.com Fix required features checks in shaderRecordExplicitScalarOffset_6 test case 2021-03-18 tom.cooper@arm.com Add VK_EXT_headless_surface surface tests 2021-03-18 Junda.Liu@amd.com Fix robust buffer access result checking for partially out of bound cases 2021-03-18 tapani.palli@intel.com Use linear tiling with external_memory_host tests 2021-03-18 ancheng.qiao@arm.com Fix precision issue in NearestEdgeTests shaders 2021-03-17 alexander.galazin@arm.com Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master 2021-03-17 gleese@broadcom.com Enable shadow filtering tests for non-filterable formats 2021-03-17 rgarcia@igalia.com Add BGR and BGRA formats to image view tests 2021-03-17 alexander.galazin@arm.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2021-03-17 jari.komppa@siru.fi Add tests for standard multisample positions 2021-03-17 rgarcia@igalia.com Push constant overwrite tests 2021-03-17 rgarcia@igalia.com Test large command buffers with many draw commands 2021-03-17 rgarcia@igalia.com Test barycentric coordinates in ray tracing hits 2021-03-17 rgarcia@igalia.com Add missing mandatory features 2021-03-17 venni.ihanakangas@siru.fi Ensure WSI colorspace has no effect on image contents 2021-03-17 tapani.palli@intel.com reset minSampleShading only with OpenGL Core 4.0+ 2021-03-16 alexander.galazin@arm.com Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master 2021-03-16 alexander.galazin@arm.com Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master 2021-03-16 alexander.galazin@arm.com Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master 2021-03-15 rgarcia@igalia.com Enable validation for all custom devices 2021-03-15 rgarcia@igalia.com Remove multiview requirement in extended dyn state tests 2021-03-15 boris.zanin@mobica.com Fix recursion depth requirement in complexcontrolflow 2021-03-15 rgarcia@igalia.com Check image extent support in watertightness tests 2021-03-15 boris.zanin@mobica.com Read deserealization size from stream 2021-03-15 gleese@broadcom.com Fix flush/invalidate in mismatched_write_op tests 2021-03-15 gleese@broadcom.com Fix sync validation for mismatched_write_op tests 2021-03-15 tapani.palli@intel.com Check if image sample count supported by VkSampleCountFlags 2021-03-15 rgarcia@igalia.com Always accumulate errors in desc set random tests 2021-03-15 syoussefi@google.com Fix missing barrier in compute test 2021-03-15 syoussefi@google.com Fix missing barrier in texture buffer test 2021-03-15 ari.suonpaa@siru.fi Replace libUI with native Android AHB API 2021-03-10 gleese@broadcom.com Add a waiver for depth bias on some Broadcom GPUs 2021-03-10 alexander.galazin@arm.com Update Vulkan/GL Readme 2021-03-10 ari.suonpaa@siru.fi Update Amber 2021-03-08 toni.salmivalli@siru.fi Add a batch of Graphicsfuzz tests If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC syoussefi@google.com,angle-bots+autoroll-info@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: angleproject:5816 Change-Id: I324ce9596a62771726dc4504b2341e049818f7de Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2807533 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jonah Ryan-Davis 2d873e0c 2021-03-01T14:38:39 GL: Workaround to sanitize amdgpu renderer strings. On Linux with the amdgpu driver, the GL_RENDERER string contains precise kernel and DRM version info. We should sanitize this info before using these strings for user privacy. Bug: chromium:1181193 Change-Id: I047d1abf5b51412b4258a021761cc450385ef0fe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2727658 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Peter Kotwicz bf0c6ae1 2021-03-09T13:21:58 Improve Angle Android gtest support This CL makes angle_test() use an angle-specific gtest launcher - AngleUnitTestActivity.java. This enables building standalone Android angle without //base Chromium-Bug: 1149922 Bug: None Change-Id: Id84f3e2bd84c5017ed1988ca07534f424ebfa596 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2745535 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 67e4aff5 2021-04-02T13:17:00 Fix rapidjson build error in Skia. Instead of using defines in the header, use the same approach as we do with frame capture by defining a stub "mock" cpp file. Bug: angleproject:5805 Change-Id: Ief1cb6497ddafc9656bb0e7d6a921eff3610a7fb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2801695 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Gert Wollny b3a8033d 2021-03-31T09:34:00 JsonSerializer: use stubs when building without rapidjson Bug: angleproject:5805 Change-Id: Ibf51b8b75c3feb6efdef969effb3f50e2474c6b3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2795772 Commit-Queue: Gert Wollny <gert.wollny@collabora.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Kai Ninomiya 256100b2 2021-04-02T01:45:14 Revert "Metal: Support importing external metal textures" This reverts commit 2ec3e0a1e6890da56de9dfd3da5c9f31a3f7fbb7. Reason for revert: Test suite ImageTestMetal never instantiated https://anglebug.com/5814 Original change's description: > Metal: Support importing external metal textures > > via KHR_image_base and ANGLE_metal_texture_client_buffer > > Bug: angleproject:5763 > Change-Id: I4d4a88cfbb77d8b7508b787c7fec44073d3b11b0 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2757811 > Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com> > Reviewed-by: Kenneth Russell <kbr@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> Bug: angleproject:5763, angleproject:5814 Change-Id: Ia862aa37a6c914f6e21f9b3121c7c36d449475ea No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2801155 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Le Hoang Quyen 2ec3e0a1 2021-03-13T22:17:49 Metal: Support importing external metal textures via KHR_image_base and ANGLE_metal_texture_client_buffer Bug: angleproject:5763 Change-Id: I4d4a88cfbb77d8b7508b787c7fec44073d3b11b0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2757811 Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Yuly Novikov 3c98bb6a 2021-03-31T21:32:42 Reland "Link angle_util statically into angle_system_info_test" This reverts commit 91b6c3b1a2b12f6c834238ed680d82c3de741cd0. Reason for revert: fixing compilation on android-archive-dbg Original change's description: > Revert "Link angle_util statically into angle_system_info_test" > > This reverts commit 804226dffd9b35f88c4a64672fea2cd29c2bc6e8. > > Reason for revert: breaks compilation on android-archive-dbg. > See https://ci.chromium.org/ui/p/chromium/builders/ci/android-archive-dbg/7802/overview (seems the egl symbols can't be found?) > > Original change's description: > > Link angle_util statically into angle_system_info_test > > > > Otherwise ANativeActivity_onCreate is not found in component build. > > > > Bug: angleproject:4483 > > Change-Id: Ic4a9f66e5b7d150a3740529f866de9995550ea68 > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2689370 > > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> > > Reviewed-by: Jamie Madill <jmadill@chromium.org> > > TBR=ynovikov@chromium.org,jmadill@chromium.org > > # Not skipping CQ checks because original CL landed > 1 day ago. > > TBR=ynovikov@chromium.org > Bug: angleproject:4483 > Change-Id: I7f16f77979f7d8b1e5e5f61e48b379b910f3a743 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2697067 > Reviewed-by: Corentin Wallez <cwallez@chromium.org> > Reviewed-by: Yuly Novikov <ynovikov@chromium.org> > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bug: angleproject:4483 Change-Id: I9e6621a2f10041cc8f191d877e48710d977e8237 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2798399 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Chong Gu be52ca8a 2021-03-31T01:52:56 [Fuchsia] Use manifest fragments for Cr-Fuchsia binaries Bug: chromium:1180168 Change-Id: Ie3f2bd6bb79d971549b0422a9f1da7e713a54cc2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2796542 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Gert Wollny e0b9d4f7 2021-03-15T11:25:39 libAngle: Add Json context serializer library Bug: angleproject:5715 Change-Id: I42319fe30e42d49d7e817b14c211b5ba82a94a42 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2760324 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 91b6c3b1 2021-02-16T11:14:18 Revert "Link angle_util statically into angle_system_info_test" This reverts commit 804226dffd9b35f88c4a64672fea2cd29c2bc6e8. Reason for revert: breaks compilation on android-archive-dbg. See https://ci.chromium.org/ui/p/chromium/builders/ci/android-archive-dbg/7802/overview (seems the egl symbols can't be found?) Original change's description: > Link angle_util statically into angle_system_info_test > > Otherwise ANativeActivity_onCreate is not found in component build. > > Bug: angleproject:4483 > Change-Id: Ic4a9f66e5b7d150a3740529f866de9995550ea68 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2689370 > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> TBR=ynovikov@chromium.org,jmadill@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. TBR=ynovikov@chromium.org Bug: angleproject:4483 Change-Id: I7f16f77979f7d8b1e5e5f61e48b379b910f3a743 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2697067 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov 804226df 2021-02-11T14:53:43 Link angle_util statically into angle_system_info_test Otherwise ANativeActivity_onCreate is not found in component build. Bug: angleproject:4483 Change-Id: Ic4a9f66e5b7d150a3740529f866de9995550ea68 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2689370 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Yuly Novikov 729139c9 2021-02-01T13:32:07 Fix gn check on iOS for dEQP and trace targets Bug: angleproject:5417 Change-Id: I0e445eb4c5f3a88fbaea4599fa3d2f87b8632fb5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2665267 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov 3846cff3 2021-01-21T16:37:12 Suppress headers includes privacy checks on iOS shared libraries are hidden inside ios_framework_bundle, so technically we are not allowed to include headers from them. Ignore this check since everything works fine besides "gn gen --check". All ANGLE headers are considered public, so we don't need this check. Bug: angleproject:5417 Change-Id: I6b621132dfe85e0fb1bea4ae2b93097945a8801a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2643859 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov 124cdcb5 2021-01-13T16:36:18 Don't build angle_end2end_tests_mac_sources on iOS Getting a compile error for them: ../../third_party/angle/src/tests/egl_tests/ EGLIOSurfaceClientBufferTest.cpp:16:10: fatal error: 'IOSurface/IOSurface.h' file not found include <IOSurface/IOSurface.h> ^~~~~~~~~~~~~~~~~~~~~~~ ../../third_party/angle/src/tests/egl_tests/ EGLIOSurfaceClientBufferTest.cpp:16:10: note: did not find header 'IOSurface.h' in framework 'IOSurface' (loaded from '/opt/s/w/ir/cache/xcode_ios_12a7209.app/Contents/ Developer/Platforms/iPhoneOS.platform/Developer/SDKs/ iPhoneOS14.0.sdk/System/Library/Frameworks') Bug: angleproject:5417 Change-Id: I60198bbacc0726a9842fe37fad5b10b9afff37a4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2628129 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 5b8dec52 2021-01-12T04:11:56 Reland "Use is_apple instead of is_mac and is_ios everywhere" This reverts commit 51603c63d1cb9e36afaf2069fc069e542ac2f3fb. Reason for revert: Fixed issue that broke Skia build Original change's description: > Revert "Use is_apple instead of is_mac and is_ios everywhere" > > This reverts commit 2762641a3a1edf9665a61f40da6c160338056cb0. > > Reason for revert: is_apple is not universally defined. Breaks ANGLE roll into Skia. > > Original change's description: > > Use is_apple instead of is_mac and is_ios everywhere > > > > Bug: chromium:1161513 > > Change-Id: Id7d582f127f4b79ea6fc5b8ad39fff768c45f477 > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611312 > > Reviewed-by: James Darpinian <jdarpinian@chromium.org> > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > > TBR=jdarpinian@chromium.org,syoussefi@chromium.org > > Bug: chromium:1161513 > Change-Id: I831e60149f410044a79d9f66aa9ddd9902410fd7 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2618039 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> TBR=jdarpinian@chromium.org,syoussefi@chromium.org Bug: chromium:1161513 Change-Id: I3cf30aa047a1f208fa7d1acda1d6d4e5da7b6ad5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2622244 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov 4dd9a5e1 2021-01-11T14:22:44 Enable building angle_white_box_tests on Fuchsia Builds fine. Bug: angleproject:2475 Change-Id: I96b2b03e1be2b801c3d8579ebf44d51b6faa3e57 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2622235 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 51603c63 2021-01-08T17:49:52 Revert "Use is_apple instead of is_mac and is_ios everywhere" This reverts commit 2762641a3a1edf9665a61f40da6c160338056cb0. Reason for revert: is_apple is not universally defined. Breaks ANGLE roll into Skia. Original change's description: > Use is_apple instead of is_mac and is_ios everywhere > > Bug: chromium:1161513 > Change-Id: Id7d582f127f4b79ea6fc5b8ad39fff768c45f477 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611312 > Reviewed-by: James Darpinian <jdarpinian@chromium.org> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> TBR=jdarpinian@chromium.org,syoussefi@chromium.org Bug: chromium:1161513 Change-Id: I831e60149f410044a79d9f66aa9ddd9902410fd7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2618039 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 157ddfdc 2021-01-06T23:20:36 Build compiler_tests only if GLSL or ESSL build is enabled Most of these tests use TranslatorGLSL or TranslatorESSL (often through ShaderCompileTreeTest). In specialized builds that disable GLSL and ESSL shader generation, disable these unit tests. Bug: chromium:1161513 Change-Id: Ib87e651706f141a41ffdaebfb0cbe5168582e341 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2613202 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 2762641a 2021-01-05T23:00:14 Use is_apple instead of is_mac and is_ios everywhere Bug: chromium:1161513 Change-Id: Id7d582f127f4b79ea6fc5b8ad39fff768c45f477 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611312 Reviewed-by: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 382bf288 2020-12-24T23:56:39 Organize AST transforms per backend Most of the AST transforms are written as a workaround to an issue that affects a single backend. This change identifies such transforms and organizes them by backend. They are then only built if the respective backend is. Additionally, about half of the GL transforms are due to mac workarounds, including the large RewriteRowMajorMatrices transform. Mac-specific workarounds are additionally only built on said platform. This change reduces the ANGLE binary size: - 106KB in a Vulkan-only build on Linux - 27KB in a GL-only build on Android (60KB on Linux) Bug: chromium:1084580 Bug: chromium:1161513 Change-Id: I64b334332c0d4f848756c6538af0d8d96864c7e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2601346 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
James Darpinian 0dbe7cdd 2020-12-08T12:24:35 iOS testing support angle_white_box_tests build and runs and passes on the iOS simulator with this change. angle_end2end_tests builds and runs but crashes. Bug: angleproject:4256 Bug: angleproject:5417 Change-Id: I8817e46415c4598cbfae49804727a2e9b21baff1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2600361 Commit-Queue: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill 00643e7d 2020-07-22T20:58:49 Use Android API to get storage path. This pipes through to a system call via JNI. This will allow Chromium changes to land that were prevented because ANGLE hard-coded some parts of this path. This in turn will allow us to more easily override these paths for changes needed for Android R support. Bug: chromium:1094062 Change-Id: I20d75b8ee40d418ba5c057f618640ef896248299 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2315483 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Xiaoxuan Liu d0f99d54 2020-12-03T11:06:56 Vulkan: Fix build issue in vulkan display/headless backend. In Linux + Vulkan display/headless backend, angle tests such as angle_unittests/angle_perftests/angle_white_box_perf_tests could not be compiled successfully, fix build issues on vulkan display/headless backend in angle tests. 1. Add EGL_NO_X11 flag into vulkan display/headless backend. 2. Disable angle_white_box_perf_tests on vulkan display/headless backend. Bug: angleproject:5260 Change-Id: I579aee8b0bfaa4c0d7fdf9a6df91c1b78ec4373e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2585256 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
James Darpinian dea86294 2020-12-02T16:26:03 iOS build support libGLESv2 builds with these changes on iOS, iOS Simulator, and Mac Catalyst, using CGL or EAGL as appropriate. Tests will require more work. Fixed several errors in the EAGL code which hadn't been detected because the code wasn't built. Bug: angleproject:4256 Bug: angleproject:5417 Change-Id: I29072d82607ef2500732c5cc00318fdab4a46b31 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2570211 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Shahbaz Youssefi 8d63a7fc 2020-11-17T15:15:44 Basic support for running deqp khr gles32 tests Bug: angleproject:3647 Change-Id: Ia707ffcd41926662d1513f1a3bf49149b76f6b9c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2544920 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 973ade8d 2020-11-16T13:26:43 Optimize building prerotation deqp targets Uses source_set to share the objects created for non rotated targets. As a bonus, dEQP itself is no longer built with ANGLE_DEQP_* defines. Bug: angleproject:4901 Change-Id: I2319116e478be39150fac32a85a43787c050c76f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2540829 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 3806696c 2020-11-06T23:04:35 Fix expectations file for prerotation dEQP executables Bug: angleproject:4901 Change-Id: Ibc930a27887a3ba710168a9b122d46aac1530984 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2523548 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 06eaaac5 2020-11-06T16:33:13 Fix trace writing in angle_perftests. We can use this to produce AGI-like reports in standalone desktop. Bug: b/172704839 Change-Id: Ifc510232e3da81210e22429b6cea9800e2723e06 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2524540 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 21eb41ac 2020-11-05T16:54:25 Generate executables for prerotation deqp tests This change generates angle_deqp_gles*_rotate*_tests executables which choose the appropriate mustpass file. Bug: angleproject:4901 Change-Id: Ie6ac4b80d480b0f590b5baf1fa244fd601b5beed Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2522415 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill 3e5b6f81 2020-10-31T12:33:28 Enable writing histogram-set-json-format. This uses the protobuf histogram functionality to build up a histogram set. The test suites then output the histograms to JSON. This is only implemented for angle_perftests. Bug: angleproject:5161 Change-Id: Ia5a7868e8d8dcf4f13d83115ae622828c63ef0d9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482295 Reviewed-by: Brian Sheedy <bsheedy@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jonah Ryan-Davis 30083024 2020-10-29T10:52:53 Remove include of nonexistant directory This would include "angle:angle_common" which is not a directory. Bug: b/171848471 Change-Id: Ic4f03b174a4cd4b81470862b3ed79a58b415ad04 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2507630 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill acd15cae 2020-10-11T17:16:34 Re-land "Link C++ histogram support into angle_perftests." This is the first step in uploading histogram data instead of a gtest special format. We importing several new libraries: - tools/protoc_wrapper - third_party/protobuf - third_party/catapult (was already used for Android) No functional change. Only affects compilation. Protobuf support is disabled when not available. Bug: angleproject:5161 Change-Id: I64be0977648993b1012ff0d9e0439c5876697e36 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2497221 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2f7fc0f3 2020-10-23T09:58:56 Tests: Remove standalone duplication. Also cleans up some compiler warnings that crept in because of how we structured the test sources in GN. We also no longer need special handling for the test "main" files. Must land after http://crrev.com/c/2495003 rolls into ANGLE. Bug: angleproject:5124 Change-Id: I43ff91b5c8f00214886cd8ac2403702e5026a840 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495281 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tim Van Patten 4953f03d 2020-10-23T22:57:43 Revert "Link C++ histogram support into angle_perftests." This reverts commit 7a0263547cda936b320d80c650b69d7522ee1a9f. Reason for revert: Breaks roll of ANGLE into AOSP: ERROR at //testing/test.gni:76:5: Assertion failed. assert(_use_raw_android_executable || enable_java_templates) ^----- See //third_party/catapult/tracing/tracing/BUILD.gn:35:1: whence it was called. test("histogram_unittests") { ^---------------------------- See //src/tests/BUILD.gn:262:17: which caused the file to be included. deps += [ "//third_party/catapult/tracing/tracing:histogram" ] ^------------------------------------------------- Original change's description: > Link C++ histogram support into angle_perftests. > > This is the first step in uploading histogram data instead of a gtest > special format. We importing several new libraries: > > - tools/protoc_wrapper > - third_party/protobuf > - third_party/catapult (was already used for Android) > > No functional change. Only affects compilation. Protobuf support is > disabled when not available. > > Bug: angleproject:5161 > Change-Id: Ie28d57d7e142c437ebd51463ce3e2cafd87468d1 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482294 > Reviewed-by: Yuly Novikov <ynovikov@chromium.org> > Reviewed-by: Brian Sheedy <bsheedy@chromium.org> > Commit-Queue: Jamie Madill <jmadill@chromium.org> TBR=ynovikov@chromium.org,bsheedy@chromium.org,jmadill@chromium.org Change-Id: I62c4b926cbe82d10e460b28b5f864521e2b1f8ee No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:5161 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2495549 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Jamie Madill 7a026354 2020-10-11T17:16:34 Link C++ histogram support into angle_perftests. This is the first step in uploading histogram data instead of a gtest special format. We importing several new libraries: - tools/protoc_wrapper - third_party/protobuf - third_party/catapult (was already used for Android) No functional change. Only affects compilation. Protobuf support is disabled when not available. Bug: angleproject:5161 Change-Id: Ie28d57d7e142c437ebd51463ce3e2cafd87468d1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2482294 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Brian Sheedy <bsheedy@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill c8542d28 2020-10-22T14:10:32 Temporarily duplicate standalone tests. This switches 'angle_*_tests' to be identical to 'standalone_angle_*_tests'. Once rolled into Chromium we can then switch back to using 'angle_*_tests' and finally remove 'standalone_angle_*_tests' entirely. Must land after https://crrev.com/c/2490987 Bug: angleproject:5124 Change-Id: I1f4794d429733a43113dcba6aaaba0c047607e50 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2491932 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 19e9df68 2020-09-23T23:37:17 Re-land "Add a small unit test that dumps system info." Re-land fixes the GL APIs accidentally leaking into the test. We can use this in the trace gold tests to identify system properties. The test uses Vulkan info collection when available and dumps out the known GPU info as JSON. Bug: angleproject:4090 Bug: b/168049670 Change-Id: I1481fee14ed8c573f10164d74ec27701e1ad80ff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2433090 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 88dd1a59 2020-09-26T18:21:19 Revert "Add a small unit test that dumps system info." This reverts commit 52ee81cfdc13d3f44c1b5db041b14f236c57188c. Reason for revert: Causes build failure on Android (https://ci.chromium.org/b/8868097753228061152), and is blocking ANGLE roll (crrev.com/c/2433419) Original change's description: > Add a small unit test that dumps system info. > > We can use this in the trace gold tests to identify system properties. > The test uses Vulkan info collection when available and dumps out the > known GPU info as JSON. > > Bug: angleproject:4090 > Bug: b/168049670 > Change-Id: Ib8d2244d82b650b94818da30adab180b471af556 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2427872 > Commit-Queue: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Cody Northrop <cnorthrop@google.com> TBR=cnorthrop@google.com,jmadill@chromium.org Change-Id: I2b87c323c896be67aa9fbee2cad980927d551d7f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:4090 Bug: b/168049670 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2433089 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 52ee81cf 2020-09-23T23:37:17 Add a small unit test that dumps system info. We can use this in the trace gold tests to identify system properties. The test uses Vulkan info collection when available and dumps out the known GPU info as JSON. Bug: angleproject:4090 Bug: b/168049670 Change-Id: Ib8d2244d82b650b94818da30adab180b471af556 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2427872 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill bda2205d 2020-09-17T14:37:25 Traces: Move up from tests/perf_tests/ to tests/. The trace tests aren't strictly for performance. Since we'll be using them for correctenss testing as well it makes sense to move them out of the perf_tests/ folder. Also renames RestrictedTraceTests.md to README.md so it'll load automatically in gitiles. Bug: angleproject:4090 Bug: b/168049670 Change-Id: I8be9f1d831489a9abf534d049a93441687850142 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2416913 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Hidehiko Abe 90a9cf96 2020-09-11T02:40:34 Expand is_linux to is_linux || is_chromeos. Currently is_linux is set to true on Chrome OS build, but it is planned to set to false. This CL is the preparation to keep the current behavior. Bug: chromium:1110266 Test: Built locally. Tryjob. Change-Id: I4124dfb251d68a519fed3e08555d1aa5a694c77c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2404500 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 7d741c85 2020-07-31T15:40:17 Tests: Remove more optimizations from traces With the addition of NBA2K20, which has stressed multiple parts of our solution, we need to scale back the optimization done on the trace itself. Otherwise the link never completes. Test: angle_perftests --gtest_filter="TracePerfTest.Run/*nba*" Bug: b/160014453 Bug: angleproject:4048 Change-Id: I064813326d401cdcc5649c45255eb214cbf0a2db Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2335607 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Jamie Madill f3a38d97 2020-07-23T19:00:34 Add a custom trace tests loader. This custom loader will disambiguate the trace tests gl layer from the util GL/EGL loader. Bug: angleproject:4845 Change-Id: I5e8340eb50f736d931302f71f15f556fd9e52081 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2315627 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Manh Nguyen <nguyenmh@google.com>
Jamie Madill 9faf0cdc 2020-07-20T10:30:55 Capture/Replay: Use custom GL header. This will let us override the util loader for all new traces. It will also be easier to maintain going forward if we have to change the header again. The end goal is to run the trace tests with a custom GL layer that can intercept certain API calls. Bug: angleproject:4845 Change-Id: I028a1afdadf638998805d7b9a2cc6717cf5f0148 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2308029 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Wander Lairson Costa ee9c4fe4 2020-07-14T15:29:40 D3D: Make possible to build angle without D3D11 A few files inside the D3D11 tree are used by D3D9 and WGL backends. We add these files to the build system even when D3D11 is disabled. Also, we fix the use the of ANGLE_DEFAULT_D3D11 symbol. Bug: angleproject:4839 Change-Id: I981f4bfc60d973c02549caa737c5aed5ccf31282 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2298143 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Jamie Madill 6ca2c116 2020-07-17T13:07:24 Make trace tests a shared library. This will facilitate intercepting the GL calls and implementing emulation paths for offscreen redering. Or other EGL/GL features. It does not yet override the GLES loader and uses the shared 'angle_util' loader as it did before. Bug: angleproject:4845 Change-Id: I68806c307f59e1852999299e88dc358781817f12 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2305042 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Manh Nguyen <nguyenmh@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill 4fa75b5c 2020-07-17T12:58:50 Move restricted trace functions to cpp file. This is a refactoring change only. It will facilitate moving these functions to a shared library. A shared library will allow us to more easily override GL functions with an interception layer. The intercept layer will allow us to do emulation for features like offscreen tests. Bug: angleproject:4845 Change-Id: I0e00c0c22a26f1bb8faec30a825c71953033f8a9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2305039 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Jamie Madill 55e85549 2020-07-17T14:02:36 Lift warning from trace tests. Noticed when working on a related feature. Bug: angleproject:3630 Change-Id: I82638d37ee6d27dc824d5782c96387f0d000d585 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2305040 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Nico Weber fac68170 2020-07-08T22:19:43 Don't build vulkan_validation_layers on macOS. angle_enable_vulkan_validation_layers is false on is_mac, so it looks like they were built by accident. Guard the dep on $angle_root/src/common/vulkan:vulkan_validation_layers by angle_enable_vulkan_validation_layers instead of angle_enable_vulkan, and only define the target if angle_enable_vulkan_validation_layers is true (because src/common/vulkan/BUILD.gn gets loaded due to deps on other targets in it, and when a .gn file is loaded all the targets in it get defined). Since vulkan_validation_layers doesn't currently build on arm macs, this happens to fix a build problem there, but it also makes the build on intel macs a bit smaller. This sidesteps comment 13 on the bug. If we ever want to use the validation layers on mac, we'll have to do a real fix then. Bug: chromium:1098741 Change-Id: I8164ff13de98d34ed875c6e6d0550eae64b2d0dd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2289042 Commit-Queue: Nico Weber <thakis@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi b291ad09 2020-07-03T23:53:10 Build specialized version of glslang Bug: angleproject:4763 Change-Id: Ibb98c872a1283b9d6acde958a7c5212cf79e72df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2281618 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>