src/tests/BUILD.gn


Log

Author Commit Date CI Message
angle-autoroll 0f9c146b 2024-11-28T09:47:35 Roll Chromium from c957bc3555b2 to b640856c0ed4 (1228 revisions) Update VK-GL-CTS's _XOPEN_SOURCE version on Apple from 600 to 700 due to https://github.com/llvm/llvm-project/issues/117630 https://chromium.googlesource.com/chromium/src.git/+log/c957bc3555b2..b640856c0ed4 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,syoussefi@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry 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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/77bbb5dc9c..7ed11c6746 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/38a60f7635..9a87238031 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f1ccfe587d..b05f90caa7 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/be9e355580..a79aaef505 * third_party/android_build_tools: https://chromium.googlesource.com/chromium/src/third_party/android_build_tools/+log/e4eee387b5..52438668cc * third_party/android_build_tools/error_prone/cipd: nAUL9xKY6JWQyjoK2O_mKTqLakmTU69EX-FROc-rzNEC..n2Qwqs0Jr17AMpoYGTDACFHIM0aPsdm8g3X0jBjfDQoC * third_party/android_build_tools/lint/cipd: qft_MiuWKisqUw9hZCFTuJKi5jBZaexi7LbGkgRmrpkC..Hd1-tpL2M67CYclO3F_3WjBf70hE_XYr7tEXt0wQyvgC * third_party/android_build_tools/manifest_merger/cipd: CIvskXU9WjZMXUINb-D8kgUKUDSf6G1G1QmCja7qOa4C..zC9JbLx2HVKIMFxavlF00isXwHx72vIkFlRCLvH0rIkC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/497f6b7429..6a0960fe97 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/584e8366be..bd7f36598e * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/291ce60cce..76cb1e3b4a * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/9aff6762a3..e6303c7ffe * third_party/r8/cipd: lrcfrwv2WpEoHAk051sZiwXxKxnNIUTYYEwM3oBDlhMC..GaYs9HP0ijqgwtd-Zv0Ee7R8HCzWR4LUzNNxBoTxdQUC * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/92e2247154..cecd4aabb2 * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/5510558641..1ff4269915 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/6834b3fdbb..768236a7b2 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/c84318b6c0..d6a5c65a46 No update to Clang. Bug: angleproject:364069034 Change-Id: I1cff11e0ebb80eae2a1f62be842796cb29e45a8a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6056956 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi bc09b178 2024-11-15T13:11:04 CL: Run a subset of CTS tests on linux Bug: angleproject:372722560 Change-Id: I33980df1850384762f0a5715cc3a04314f77d60a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6026508 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov 54e8e665 2024-11-12T12:53:54 Trace tests: generate and use trace list according to gn args Generates out/<config>/gen/trace_list.json which contains the list of traces included in the build according to the angle_restricted_traces gn arg (or all traces if not set). Test runner uses that file instead of the full restricted_traces.json. Android runner pushes that file to the device to the usual location (e.g. /sdcard/chroimum_tests_root/gen/trace_list.json) This also fixes the issue where `angle_trace_tests --list-tests` lists all traces, not just those that were selected with the gn arg. Similarly, running all traces without a filter would be limited to the same list. This transitively applies to trace bundles. Bug: b/376923930 Change-Id: I63506a074d766a51b860472f7211842f8a080ecd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6011956 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Rafay Khurram 924ee1ba 2024-08-28T02:16:55 CL: Enable CTS over GTest interface * Enables all CTS test suites excluding test_subgroups * Creates one gtest-based executable per OpenCL CTS executable Bug: angleproject:372722560 Change-Id: Iae96c2f12716b3c21d5035fbf6c9d838cb812025 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5938948 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov d01f5101 2024-11-01T18:45:55 Tests: add wrappers for restricted_trace scripts Example use: out/Android/restricted_trace_gold_tests \ --bypass-skia-gold-functionality \ --filter=dota_underlords:dragon_raja out/Android/restricted_trace_perf --flags Bug: b/376300037 Change-Id: Ic3e8cb241af25a770f5d1888538d13482f877b6b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5985570 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Roman Lavrov e43d3591 2024-11-01T16:23:27 Tests: allow choosing Chromium/our test runner + screen checks Chromium test runner (build/android/test_runner.py) is currently the default runner for most suites. One exception is angle_trace_tests where we're always using our scripts instead (android_helper.py etc). We do that by setting android_test_runner_script to our runner for that angle_test instance. This CL supports setting android_test_runner_script to our script but then choose whether to run with the Chromium runner or android_helper depending on the command-line arg (--angle-test-runner) This CL also adds a check for the screen state which will be performed regardless of the runner. This is to have a fast and clean failure when the device wasn't properly initialized by the infra (see bug). The check is based on the output of `dumpsys deviceidle | grep mScreen` (this is the most generic check I found, I previously used nfc but that depends on nfc and turns out the output is device-dependent) This CL enables this mode for angle_end2end_tests. Bots will continue to run with Chromium runner as before (but with the added screen checks). Locally, we will now be able to switch to our scripts directly: out/Android/angle_end2end_tests \ --gtest_filter='*ClearTextureEXT2DMSStencil*' \ --angle-test-runner Now when running end2end tests locally (regardless of the runner) with a locked device screen, we'll see the following error right away instead of sporadic failures or stuckness during execution: Exception: Unexpected device screen state: ['mScreenOn=false', 'mScreenLocked=true']; expected: ['mScreenOn=true', 'mScreenLocked=false'] The plan is to enable this mode for all suites, after which the current local script run_angle_android_test.py will no longer be needed. Bug: b/344849382 Change-Id: I77e7733804ab37e2f3d26bf3574a52a9553e4274 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5985232 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Cody Northrop 91ea8aef 2024-10-31T12:33:35 scripts: Add restricted_trace_perf as data dep This gets it in to angle_trace_bundle.py. Bug: b/376300037 Change-Id: Iebffb105d24bd45c346d6d7085051c432039e2ef Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5980801 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi b16d105f 2024-10-03T10:25:32 Remove Desktop GL front-end support For Desktop GL applications, please use Zink! Bug: angleproject:370937467 Change-Id: Ie734634bb62a2e98c80e1b32d8b3d34624da3c04 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5905428 Reviewed-by: Geoff Lang <geofflang@chromium.org>
Cody Northrop e19377af 2024-08-21T14:52:09 Tests: Support multiple users on Android On most Android platforms, the userId is '0' and many of our defaults just work. But on some, the default is non-zero, and that complicates things. To support this, we have to specify which user is correct, which can be determined with: adb shell am get-current-user Update everywhere we were using sdcard directly and use: Before: /sdcard After: /storage/emulated/<userId> Incorporate the userId to find the application's home directory: Before: /data/data/com.android.angle.test After: /data/user/<userId>/com.android.angle.test This CL: - Starts using a user flag in our Android scripts - Updates where tests look for test data and binaries - Updates where scripts use temp and external storage - Updates script to not use sdcard at all when root - Disables run-as when user is not default Bug: b/361388557 Change-Id: I0fb556ecb2d0f6bc6569a858c290b127217d4638 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5825122 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Roman Lavrov 49a8d05c 2024-09-05T17:41:07 Tests: Add end2end test .so library to AOSP build m[mm] external/angle:libangle_end2end_tests__library produces libangle_end2end_tests__library.so I tested that integration with Chromium wrappers works with some manual patches; no integration is included in this CL. googlest/gtest dependencies replaced with platform libgtest, libgmock TestSuite heavily depends on rapidjson so it is currently excluded, only the standard gtest implementation is included (--gtest_list_tests, --gtest_filter, --gtest_output etc) This also disables support for expectation files as it is piped through TestSuite instance. Bug: b/279980674 Change-Id: I35cb2328d74a3ac778e1d93bb4fe4ac044920b6a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5838526 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Cody Northrop 327796df 2024-06-24T10:58:28 FrameCapture: Add a new CapturedTest for glActiveTexture This CL adds a new test focused on Reset of glActiveTexture. It doesn't just add a new frame since the original test was getting quite cluttered. This should provide a blueprint for adding more tests in the future. Test: capture_tests.py Bug: angleproject:345851268 Change-Id: Ieac29031f55ca133d81ce5ba26d45199de38e874 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5714395 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Mark Łobodziński <mark@lunarg.com>
Mark Lobodzinski 37b2487b 2024-05-03T09:55:04 Add LunarG api dump layer to ANGLE vulkan back-end Bug: angleproject:8623 Change-Id: Ia4dbd5915c5fe918cd65e09b468e0b8d094522f7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5601070 Commit-Queue: Mark Łobodziński <mark@lunarg.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi d193d51b 2024-06-17T22:46:08 Replace issue ids post migration to new issue tracker This change replaces anglebug.com/NNNN links. Bug: None Change-Id: I8ac3aec8d2a8a844b3d7b99fc0a6b2be8da31761 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5637912 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Matthew Denton d68395fe 2024-05-24T15:14:46 ESSL->WGSL: Emit basic function signatures ...signatures don't yet include types or parameters. See WGSLOutput_test.cpp for a sample translation. Bug: angleproject:8662 Change-Id: I93273156f72ba193441e737074bd1a8a054f2ea9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5582949 Commit-Queue: Matthew Denton <mpdenton@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Liza Burakova <liza@chromium.org>
Shahbaz Youssefi e92b8e8d 2024-04-16T13:27:19 Manual roll VK-GL-CTS from 491cfc2dbec9 to b529676d0523 (1 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/491cfc2dbec9..b529676d0523 2024-03-29 yuxinhu@google.com Move external/openglcts/data into a new subdirectory 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-team@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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Change-Id: I5e07217cca190ec243f1b700348cde0384dbf052 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5457892 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 7220307b 2024-03-13T16:13:45 Conditionally support EGL_OPENGL_API Advertize support for EGL_OPENGL_API only if angle_enable_gl_desktop_frontend is enabled. Bug: b/322142833 Tests: EGLQueryContextTest.DesktopGlApi* Change-Id: I680ea985e45e793d92fc087d21f38fd5d38f0241 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5369641 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com>
Roman Lavrov 37287687 2024-02-16T10:50:14 Android: support running angle_unittests via android_helper Allows to run: 1) locally via run_angle_android_test.py, ex: % (cd out/AndroidPerformance; ../../src/tests/run_angle_android_test.py --suite=angle_unittests --list-tests --log=debug) 2) on bots via swarming trigger, ex: % tools/luci-go/swarming trigger {usual_args_and_dimensions} -- vpython3 ../../testing/test_env.py ../../src/tests/angle_android_test_runner.py gtest --output-directory=. --suite=angle_unittests --list-tests --log=debug Bug: chromium:325124206 Change-Id: I61c4e10df349a60b1ff79694bdcdac40a40d12e4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5301624 Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
angle-autoroll 2937ee27 2024-01-08T20:01:48 Manual roll VK-GL-CTS from c92e4b2608d4 to 75a6a8315e20 (14 revisions) Includes manual ANGLE changes to reference new file names. https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/c92e4b2608d4..75a6a8315e20 2024-01-08 lorenzo@khronosgroup.org Update external sources 2024-01-07 rgarcia@igalia.com More VK_EXT_host_image_copy tests with depth/stencil buffers 2024-01-07 rgarcia@igalia.com Additional host image copy tests 2024-01-07 rgarcia@igalia.com Fix identical_memory_layout host image copy tests 2024-01-07 james.fitzpatrick@imgtec.com Check for entry points dependencies and validate all entry points from extensions 2024-01-07 rgarcia@igalia.com Add --quiet option to suppress standard output messages 2024-01-07 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.3.7 into vk-gl-cts/main 2024-01-05 gleese@broadcom.com Allow VK_KHR_vertex_attribute_divisor 2024-01-05 jbolz@nvidia.com Disable KHR attrib_divisor tests for VulkanSC 2024-01-05 cturner@igalia.com Populate all members of StdVideoDecodeH265PictureInfoFlags 2024-01-05 eilif.swensen@arm.com Add external_format_resolve to no_unknown_extensions 2024-01-05 marcin.hajder@mobica.com TransformFeedback API errors in compatibility profiles 2024-01-05 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkansc-cts-1.0.2 into vk-gl-cts/main 2024-01-02 aitor@lunarg.com Rename files/directories from master to 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-team@google.com,cnorthrop@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://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: angleproject:8475 Change-Id: Iab2df38c310becb4785828d7129fe10c6d0228fc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5177828 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Alexey Knyazev b7a31b7f 2023-11-27T00:00:00 dEQP: Treat signed integer overflow as two's complement Bug: b/307584642 Fixed: angleproject:8429 Change-Id: Ib3cdd1835d4c669a79a4553b24da676eb41e21b0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5062708 Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
mark a. foltz a75659eb 2023-11-13T16:03:26 [Cast Convergence] Remove unused GN include. This file is being removed from Chromium. It is not needed in this file and can be removed, which will avoid breakage when that happens. Bug: angleproject:8413 Change-Id: Iccc4b45393bcbc268add434b16172e90d2b9d13b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5027723 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxin Hu c22f46b5 2023-10-23T11:52:20 Update rgb-565-no-depth-no-stencil test suite names Replace the "-" with "_" in the test suite names to be consistent with other test suite name formats. Bug: b/297901032 Change-Id: Idbfc1bc7aa7cef4382e3cdd3e223db28f414f15e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4968792 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Roman Lavrov 7e8907db 2023-10-06T15:41:05 Add egl/wrapper to deqp opengl includes Needed to roll VK-GL-CTS upstream change: https://issuetracker.google.com/303881910 Bug: b/303881910 Change-Id: Idffa299cc6c1d277702167bf50e1d944febb9e7e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4915605 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Yuxin Hu 856a6ec0 2023-10-03T17:17:35 Enable rgb-565-no-depth-no-stencil tests on Android Bots Enable gles3 and gles31 rgb-565-no-depth-no-stencil tests on Android Bots. Khronos conformance package ran the gles3 and gles31 tests with rgb-565-no-depth-no-stencil configurations on Android devices: https://github.com/KhronosGroup/VK-GL-CTS/blob/main/external/openglcts/modules/runner/glcAospMustpassEs.hpp#L41 Enable the rgb-565-no-depth-no-stencil configuration tests on Android bots to cover them. Non-Android platforms do not support rgb-565-no-depth-no-stencil configuration. We should not enable it on non-Android platforms. This CL also disables this configuration from building on non-android platforms in src/tests/BUILD.gn. Bug: b/297901032 Change-Id: I23d83213818884ea679dd76bf4b001c3b636dffc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4908171 Reviewed-by: Roman Lavrov <romanl@google.com>
Yuxin Hu 503c0db1 2023-09-12T18:01:23 Add the missing multisample and rgb565-no-depth-no-stencil tests. We need different --deqp-gl-config-name values for different test applications, to create RenderTarget with different properties needed for different test applications, such as multisample, rgb formats. This CL adds an array of vector<const char*> gTestSuiteConfigParameters to store the --deqp-gl-config-name values for different test applications. Each element in this array can hold multiple const char* values. In the upcoming CLs, we can add more customized config values for each test applications, such as --deqp-screen-rotation for angle_deqp_gles*rotate*tests. Rename the gEGLConfigName to gEGLConfigNameFromCmdLine. The default value for gEGLConfigNameFromCmdLine is empty string, and its value can be overwritten by specifying --deqp-gl-config-name when running the tests from command line. If we pass --deqp-gl-config-name from command line, then use the value passed from the command line to replace the values in gTestSuiteConfigParameters. Bug: b/297901032 Change-Id: Ibf8762c55d7d0cdf7bcf33f384568587023b369c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4851048 Reviewed-by: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Roman Lavrov 1249fc1f 2023-09-07T14:39:26 Tests: Support capture_tests on Android and enable on CI Enables angle_with_capture_by_default = true on Android bots similarly to Linux and Windows. Enables the capture test on Pixel 4 and 6 bots (it takes only a few seconds to run) Enables support for capture in android_helper in general. For example, this now works the same way it would on say Linux, but runs the capture on the device an pulls files to OUT_DIR. % ANGLE_CAPTURE_LABEL=gacha_club ANGLE_CAPTURE_OUT_DIR=/tmp/capt2 ANGLE_CAPTURE_FRAME_START=16 ANGLE_CAPTURE_FRAME_END=16 out/AndroidPerformance/angle_trace_tests --gtest_filter=TraceTest.gacha_club --use-angle=vulkan --retrace-mode --max-steps-performed=20 For end2end tests it's a bit trickier as we're still using the Chromium wrappers for e.g. out/AndroidPerformance/angle_end2end_tests - which is why capture_tests.py is currently using angle_android_test_runner.py Bug: b/296397568 Change-Id: I2606e74a17c90e381bb49ec8d555a6d24851b4f7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4850889 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Steven Noonan 394699d3 2023-08-10T10:28:01 tests: skip SwiftShader tests when building without SwiftShader If we are building without SwiftShader, we shouldn't be forced to add a gtest_filter of "-*SwiftShader*" in order to run the various tests. Bug: angleproject:8291 Change-Id: Ic3513445d5d4bb402535a6f41bba818c0d15fd7a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4769826 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Auto-Submit: Steven Noonan <steven@uplinklabs.net>
Alan Zhao 5d4b3645 2023-07-31T14:04:01 Fix a missing symbol with ANGLE e2e tests angle_end2end_tests has the same issue as CaptureRelayTests which was fixed in https://crrev.com/c/4728461 where a symbol was not found during link-time on Windows due to __declspec(dllimport). Bug: chromium:1468150 Change-Id: Id943967b0f32d30ff69dfc013aafa69bd812ccaf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4735273 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Cody Northrop cdb822e7 2023-07-13T09:45:00 Revert "Android: Assert that CFI is disabled" This reverts commit 43ef50f389e97131dc487081d6c8c02373e4a22c Reason for revert: LLVM bug is fixed upstream. Fix: https://reviews.llvm.org/rG92fbb602f3b635110417e40e2f774b31798b0b1d LLVM Roll: https://chromium.googlesource.com/chromium/src/tools/clang/+/243d4473a3739d43cab35eeb0b4934bf5f7a7d05 CLs in the roll: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/+log/7586aeab..0c545a44 Original change's description: > Android: Assert that CFI is disabled > > There appears to be a bug in the interaction of CFI and > relative vtables. On armv9 it results in a crash with SIGILL > when loading traces. > > Since we can't overwrite the flags used to control this > just assert that it is correct in GN args. > > To avoid the assert, add the following to your GN args: > > arm_control_flow_integrity = "none" > > Test: Build and run traces on armv9 devices > Bug: b/278955379 > Bug: chromium:1441148 Test: angle_trace_tests on ARM v9 device with flag removed from GN Bug: b/278955379 Bug: chromium:1441148 Change-Id: Ib90405a143503896041c2522f484c234a943a6fb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4684008 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Auto-Submit: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
Yuxin Hu c934d86b 2023-06-28T16:29:10 Update dEQP-GLES mustpass List 1. Reordered gCaseListFiles. 2. Added below must pass list as they are required by the Khronos CTS: gles2-khr-noctx-master.txt gles32-khr-noctx-master.txt gles32-khr-single.txt 3. Added new test package to run the tests in these mustpass lists: angle_deqp_khr_noctx_gles2_tests angle_deqp_khr_noctx_gles32_tests angle_deqp_khr_single_gles32_tests Newly added tests will not be executed on bot yet. There will be follow-up CL to add these tests on bot. Bug: b/286921997 Change-Id: Ibc7dbf81dca67ad7be440d559f5b4ee0211c6c41 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4654841 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com>
Yuxin Hu 2283d2d0 2023-06-15T18:40:28 Update the mustpass list that dEQP-EGL tests uses Android CTS and Khronos CTS use different set of dEQP tests. android/cts contains mustpass lists for Android CTS. We have test coverage in the Android CTS in Android testing infra, and we would like ANGLE standlone deqp test runner to cover the Khronos CTS. Update the dEQP-EGL test runner to use the mustpass list that Khronos CTS uses. Since the test lists changed, some tests in expectation files are no longer needed, as they are not within Khronos CTS mustpass list. Keeping them in the expectation file will cause test runner exception as the test runner does check if the test listed in the expectation file is in the mustpass list. Bug: b/286921997 Bug: angleproject:6277 Bug: angleproject:7506 Bug: angleproject:6528 Change-Id: I7851b854322985f564cbb56d804f04f663d947aa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4619627 Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Chris Forbes <chrisforbes@google.com>
Roman Lavrov 6e99d6bc 2023-06-22T09:14:11 Only build angle_capture_tests_trace when building traces Some PGO build failed in Chromium. Standalone ANGLE testing is currently sufficient. Bug: chromium:1456291 Change-Id: I5a685020afdfe152348d282a28379c3b628d5964 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4636681 Commit-Queue: Roman Lavrov <romanl@google.com> Auto-Submit: Roman Lavrov <romanl@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Roman Lavrov 5aa818fd 2023-06-20T15:08:03 Assert !is_official_build in Android builds. Bug: angleproject:7381 Change-Id: I658cb0389fc5a12726ea873c3a2d5afb006b6953 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4628674 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Roman Lavrov 46ff02f8 2023-05-18T13:52:29 Capture/Replay: Initial setup for angle_capture_tests Implements the first part (FrameCapture) of the proposal go/frame-capture-and-interpreter-testing Adds a basic test (CapturedTest) with a few frames. This test gets captured by capture_tests.py into a temporary directory and the resulting files are diff'ed with the files under expected/ A diff fails the test. When capture changes, the workflow would be to run the command indicated by the error message in the test which will overwrite the files with new ones so that they can be added to the CL. Example test failure on capture change: https://chromium-swarm.appspot.com/task?id=62b5f4034527c610 when testing https://crrev.com/c/4598046/3 Tests in CI: https://screenshot.googleplex.com/77o8vZVuj8AbFRj Also adds a "angle_capture_tests_trace" lib with the trace just to test that this capture also builds, the lib is not currently loaded by anything. Bug: b/286067106 Change-Id: I7d5f6eed088d84f9e3eb8a72b24b1d92515fff38 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4545408 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Cody Northrop 43ef50f3 2023-06-08T15:35:17 Android: Assert that CFI is disabled There appears to be a bug in the interaction of CFI and relative vtables. On armv9 it results in a crash with SIGILL when loading traces. Since we can't overwrite the flags used to control this just assert that it is correct in GN args. To avoid the assert, add the following to your GN args: arm_control_flow_integrity = "none" Test: Build and run traces on armv9 devices Bug: b/278955379 Bug: chromium:1441148 Change-Id: I71bf93dca9bd15d6c66ad2a7223d9bbd0c54392e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4602027 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Roman Lavrov b508f8ab 2023-06-08T10:51:09 Inline remaining _angle_trace_common* vars Used only once after these rules were reorganized. Bug: b/276474703 Change-Id: Ie01f20781ee1ca6f04fd19a9f37769d66561bde8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4600614 Auto-Submit: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Roman Lavrov 961788fd 2023-05-05T11:35:38 Capture/Replay: reorganize trace-related gni Move trace-related code from gni/angle.gni to src/tests/angle_traces.gni Rename template angle_trace_library to angle_trace_libs as the idea is for it to build multiple libs. Name outside-of-apk lib group ${target_name}__unpacked_libs which is more consistent with how targets are usually named in gn, and makes the dependency explicitly tied to template instantiation. Bug: b/276474703 Change-Id: I316f2a549063b8ebae177f4ffc0d4a8de1942384 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4508387 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Roman Lavrov 3ad1d702 2023-05-04T15:57:43 angle_trace_tests_android_binaries: test -> group We don't need it to be a test to begin with. But I looked into it because test with use_raw_android_executable=True makes things really complicated due to the way this is implemented upstream: ''' this __dist target here https://crsrc.org/c/testing/test.gni;drc=acb6ab509901650450fc387c0d9f09eb6f3f3248;l=265 which uses create_native_executable_dist which copies files according to the list of libs: https://crsrc.org/c/build/config/android/rules.gni;drc=a8c26a11f6cf763a5e81b2bced40584a678b9b8a;l=94 which is actually generated not at build time but by gn gen (also called when editing gn args) and so the inputs are not the libs themselves but this file which only contains a list of file names so when libs change there is no change to the inputs of this rule.. so it doesn't get invoked and the copy doesn't happen ''' One caveat is we need to produce a list of .so libs as a data dependency for them to be picked up by isolate Bug: b/276474703 Change-Id: I375a5be8499f13311654244036e36c60d945c363 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4507534 Auto-Submit: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Roman Lavrov 1ad27152 2023-04-18T12:17:00 Switch angle_trace_tests scripts to android_helper out/Android/angle_trace_tests {args} replaces (cd out/Android; python3 ../../src/tests/run_angle_android_test.py {args}) changes this generated file: % grep angle_android_test_runner out/Android/bin/run_angle_trace_tests args = ['@WrappedPath(../../src/tests/angle_android_test_runner.py)', 'gtest', '--output-directory', '@WrappedPath(.)', '--wrapper-script-args', '--runtime-deps-path', '@WrappedPath(gen.runtime/src/tests/angle_trace_tests__test_runner_script.runtime_deps)', '--suite', 'angle_trace_tests'] android_helper.py is already what we use for running traces on bots (we don't invoke out/Android/angle_trace_tests when IsAndroid()) so this change affects only local runs Keep run_angle_android_test.py to be able to run other suites, but now it takes --suite instead of a positional arg (which is consistent with how scripts are invoked on CI) Bug: chromium:1441148 Change-Id: I5af10e8df7d9a651e0a9d52e47e3bce28d7a931b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4442006 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Roman Lavrov f46f3908 2023-05-01T14:06:16 Capture/Replay: fix interpreter lib placed inside/outside APK libangle_trace_interpreter is a shared library loaded the same way as binary trace libraries, so they should all go together either inside or outside the APK. Before this change this lib would end up inside the APK when binary libs were configured to stay outside of the APK. Bug: b/276742336 Change-Id: I690d63dcec94893692d6838bb816f9ec2477dfe1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4495327 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
Cody Northrop 35461e60 2023-04-12T20:02:08 Android: Build traces outside of APK Our trace list has gotten too large for a single APK (2GB). To continue supporting compiled traces, we can now place the libraries in the test application's home directory, which is discoverable and executable without root. To build and run with all traces, use `angle_trace_perf_tests` as your build target, then use the local Android helper script: $ autoninja -C out/<config> angle_trace_perf_tests $ (cd out/<config>; ../../src/tests/run_angle_android_test.py \ angle_trace_tests --filter='*among_us' \ --verbose --local-output --verbose-logging \ --fixed-test-time-with-warmup 10) To continue using bundled libraries, specify your trace list in GN args using `angle_restricted_traces` and use steps that match other platforms: $ autoninja -C out/<config> angle_trace_tests $ out/Android/angle_trace_tests --gtest_filter='*among_us*' \ --verbose --local-output --verbose-logging \ --fixed-test-time-with-warmup 10 Bug: b/276474703 Change-Id: I3829cf7016e21894eee8890e2b0d527e8214f04e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4420279 Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
angle-autoroll 03f0e51d 2023-04-14T19:51:54 Roll VK-GL-CTS from a3d054bf72ab to b1e5b9348e77 (21 revisions) Define DE_FENV_ACCESS_ON based on https://github.com/KhronosGroup/VK-GL-CTS/commit/9f306457b48b3f8258ca44462003ef39b80a7515 https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/a3d054bf72ab..b1e5b9348e77 2023-04-14 gleese@broadcom.com Assert that the number of output buffers is correct 2023-04-14 piotr.byszewski@mobica.com Merge vk-gl-cts/vulkansc-cts-1.0.1 into vk-gl-cts/main 2023-04-14 piotr.byszewski@mobica.com Merge vk-gl-cts/opengl-cts-4.6.3 into vk-gl-cts/main 2023-04-14 piotr.byszewski@mobica.com Merge vk-gl-cts/opengl-es-cts-3.2.9 into vk-gl-cts/main 2023-04-14 piotr.byszewski@mobica.com Test multiviewport with fragment density map 2023-04-14 rgarcia@igalia.com Test EDS3 feature interactions 2023-04-14 rgarcia@igalia.com Fix build with GCC 13 2023-04-14 gleese@broadcom.com Modify the max_vertex tests to have room for all attributes 2023-04-14 gleese@broadcom.com Share shader code in vertex_input tests 2023-04-14 marcin.zajac@mobica.com Add tests for manual derivatives with subgroups 2023-04-14 gleese@broadcom.com Fix some indentation in descriptor indexing tests 2023-04-14 gleese@broadcom.com Change descriptor_indexing tests to use stdint types 2023-04-14 gleese@broadcom.com Trivial simplification to descriptor_indexing tests 2023-04-14 gaopan24@hisilicon.com Fix upper Lod bound in image lod query tests 2023-04-14 cturner@igalia.com Revert "Fix VUID-vkCmdDecodeVideoKHR-pDecodeInfo-07267 validation error." 2023-04-14 cturner@igalia.com Try to inform the compiler when dynamically changing the rounding mode. 2023-04-14 marcin.zajac@mobica.com Vulkan video 1.3.244 patch 2023-04-14 ziga@lunarg.com Initialize VkSparseImageMemoryRequirements2 struct in memory tests 2023-04-14 rgarcia@igalia.com Add dynamic color blend variants without dynamic logic op 2023-04-14 rgarcia@igalia.com Test vkCmdDrawIndirect*Count* with multiview 2023-04-14 piotr.byszewski@mobica.com Merge vk-gl-cts/vulkan-cts-1.3.5 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-team@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: None Change-Id: I4e0756379eb4fcf408bc9d142ef9a14eb300897e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4427126 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Roman Lavrov 2c7f31af 2023-04-13T11:47:34 Trace Interpreter: Move to a shared library. Based on https://crrev.com/c/4178024 but does only one thing: makes trace interpreter a shared library (as if it was a compiled trace) I am not sure what impact this actually has on the TracePerfTest callbacks (mentioned in the CL above) as I see onEglMakeCurrent callback getting called without this CL as well. Anyways, this makes things a bit more consistent. * Gets rid of TraceReplayInterface * TraceInterpreter is now an implementation detail * Need to additionally pass list of trace files to TraceLibrary (new SetTraceInfo replay export) * GetResourceIDMapValue is just moved as is to the right lib Bug: b/276742336 Change-Id: I67ea9fbcb4f7db999ab71c8443ea91c5631df942 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4423869 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Ian Vollick 9199e77d 2023-03-30T17:25:33 [ios] simulator fixes for angle_unittests Disables some tests that do not currently work in the iOS simulator. Bug: angleproject:8116 Change-Id: I66bb9a6e2a5d10a567824e9fac163e7fd6b6a474 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4393495 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Mohan Maiya 1d9b8d80 2023-01-24T16:50:32 Reland "Add support for glShaderBinary" This is a reland of commit 228973e73135924ddf6116e0b63eff5a1ccbf232 with the following fixes - 1. Apply patch from Yuly to fix chromium build errors 2. Fix ShaderBinaryTest instantiation call 3. Add ShaderBinaryTest to expectations file for IOS Original change's description: > Add support for glShaderBinary > > This patch adds the following - > 1. ANGLE_shader_binary extension and GL_SHADER_BINARY_ANGLE token. > 2. Compiler support to generate shader binaries. > 3. Update compiler to use SH_SPIRV_VULKAN_OUTPUT as output type for > Vulkan translator. > 4. Support to load GL_SHADER_BINARY_ANGLE binaries. > 5. end2end tests for glShaderBinary. > > Tests: ShaderBinaryTest* > Bug: angleproject:7833 > Change-Id: I191d5ba7c4d5304696f5e743c851dc945fa57858 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4137306 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: mohan maiya <m.maiya@samsung.com> > Reviewed-by: Charlie Lao <cclao@google.com> Bug: angleproject:7833 Change-Id: I21135c52e2bae955342a99aff5631ba0e687eff1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4195852 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov 0c9cbf39 2023-01-26T12:07:51 Revert "Add support for glShaderBinary" This reverts commit 228973e73135924ddf6116e0b63eff5a1ccbf232. Reason for revert: breaks compile on ANGLE into Chromium roll https://cr-buildbucket.appspot.com/build/8790942326644064097 https://cr-buildbucket.appspot.com/build/8790942759045412865 https://cr-buildbucket.appspot.com/build/8790942417069789217 Leaks detected on ASAN https://cr-buildbucket.appspot.com/build/8790946657703508337 Original change's description: > Add support for glShaderBinary > > This patch adds the following - > 1. ANGLE_shader_binary extension and GL_SHADER_BINARY_ANGLE token. > 2. Compiler support to generate shader binaries. > 3. Update compiler to use SH_SPIRV_VULKAN_OUTPUT as output type for > Vulkan translator. > 4. Support to load GL_SHADER_BINARY_ANGLE binaries. > 5. end2end tests for glShaderBinary. > > Tests: ShaderBinaryTest* > Bug: angleproject:7833 > Change-Id: I191d5ba7c4d5304696f5e743c851dc945fa57858 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4137306 > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Commit-Queue: mohan maiya <m.maiya@samsung.com> > Reviewed-by: Charlie Lao <cclao@google.com> Bug: angleproject:7833 Change-Id: Ice19576acbc1351810ff0cd769ac17ad6c0abdf3 No-Try: true No-Presubmit: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4197375 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>
Mohan Maiya 228973e7 2023-01-24T16:50:32 Add support for glShaderBinary This patch adds the following - 1. ANGLE_shader_binary extension and GL_SHADER_BINARY_ANGLE token. 2. Compiler support to generate shader binaries. 3. Update compiler to use SH_SPIRV_VULKAN_OUTPUT as output type for Vulkan translator. 4. Support to load GL_SHADER_BINARY_ANGLE binaries. 5. end2end tests for glShaderBinary. Tests: ShaderBinaryTest* Bug: angleproject:7833 Change-Id: I191d5ba7c4d5304696f5e743c851dc945fa57858 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4137306 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: mohan maiya <m.maiya@samsung.com> Reviewed-by: Charlie Lao <cclao@google.com>
Roman Lavrov 2b1bc4fd 2023-01-09T12:17:17 Upload angle metrics to the gs bucket in skia perf format. ConvertToSkiaPerf converts the data format from angle_metrics.json to what skia perf ingests. Injestion happens automatically when the gs bucket is updated. Example data from this CL on non-perf bots with upload enabled (smoke mode so actual values aren't meaningful): https://angle-perf.skia.org/e/?queries=buildername%3Dlinux-test%26metric%3Dwall_time%26test%3Dtrex_200 Bug: angleproject:7299 Change-Id: Ica700b586e08c205968fbc3c1d15cf742ad537f4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4148167 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill aaee3c23 2022-11-30T14:24:13 Build and test ANGLE with Vulkan secondary CBs. This will allow us to run tests with both permutations of ANGLE (custom secondaries & Vulkan secondaries) in the same build directory. It will also allow us to run these configs as tests on our infra. This CL adds a few simple test to CI. Bug: angleproject:6811 Change-Id: I053f8cc5bafc2a7ab7d0665da9301f0ba7f8417f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4067806 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Nicolas Capens 938f4372 2022-11-30T15:30:23 Move trace_event into anglebase This originates from Chromium's base/trace_event/ so it doesn't need to be under a third-party folder. Bug: b/260093525 Change-Id: Iab7a40569b6c1f91454f099c07bf51e3ce4b65df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4068342 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill a9868110 2022-09-15T17:29:04 Add support for testing with Mesa + Zink. To run a trace test with zink, use --use-gl=zink. Bug: angleproject:7689 Change-Id: I70073756f903db1c224fe6175d55be4cad637aca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3899382 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill dc62b3ee 2022-10-10T21:00:16 Capture/Replay: Add trace interpreter. Also adds a self-test using the retrace script. Bug: angleproject:7752 Change-Id: I1985b47250bef99726d2ca2d90bef859208e357e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3965128 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com>
Jamie Madill 0d635faf 2022-10-21T09:43:13 Enable capture by default on release non-Android bots. This will enable running the trace interpreter tests with ANGLE. Also this cleans up a case where we now default turning off the trace tests when we're building with non-clang. Bug: angleproject:7752 Change-Id: I7019bb969d859e06fafc7621e8620b8a2375261e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3971079 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> Auto-Submit: Jamie Madill <jmadill@chromium.org>
Jamie Madill 11f8f537 2022-10-17T16:59:50 Capture/Replay: Improvements to self-test. - print errors in the replay test - catch missing serialization - clean stale json output files before each replay - add flag to show replay stdout - fix help message Bug: angleproject:7731 Change-Id: Ibeb780f417bdbed4b249038920963dd1bd68f4aa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3962248 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tiago Vignatti 4be8294c 2022-10-06T09:50:28 Tests: Enable EGL_ANGLE_iosurface_client_buffer tests on iOS This enables EGL_ANGLE_iosurface_client_buffer extension tests on iOS platform. A few OpenGLES related tests had to be suppressed though. I'm getting the following: [==========] 96 tests from 1 test suite ran. (960 ms total) [ PASSED ] 66 tests. [ SKIPPED ] 30 tests, listed below: [ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRX8888IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRX8888IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToRG88IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToRG88IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR8IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR8IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES2_Metal [ SKIPPED ] IOSurfaceClientBufferTest.RenderToR16IOSurface/ES3_Metal [ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRA1010102IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToBGRA1010102IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRA1010102IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRA1010102IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToRGBA16FIOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToRGBA16FIOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToRGBA16FIOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToRGBA16FIOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToYUV420IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToYUV420IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToYUV420IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToYUV420IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToP010IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.RenderToP010IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToP010IOSurface/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromToP010IOSurface/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.MakeCurrent/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.MakeCurrent/ES3_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRX8888IOSurfaceWithTexBaseMaxLevelSetToZero/ES2_OpenGL [ SKIPPED ] IOSurfaceClientBufferTest.ReadFromBGRX8888IOSurfaceWithTexBaseMaxLevelSetToZero/ES2_Metal Test: iPhone 13 and ./iossim -d 'iPhone 13' -c \ '--gtest_filter=\*IOSurfaceClientBufferTest\*' angle_end2end_tests.app Bug: angleproject:5491 Change-Id: Id7c489ae41b11442a2dd06174b2c279894e83401 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3957539 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill 0e0ea026 2022-10-13T18:29:33 Split trace tests out into angle_trace_tests. This makes angle_perftests strictly for microbenchmarks. The trace tests are a better separated target because they are for both gold correctness tests and performance. You can now use the GN arg "build_angle_trace_tests" to control building the trace tests. "build_angle_trace_perf_tests" is still supported for compatibility. Updates the infra scripts to use this new trace tests target. Also updates the build so by default we'll build the trace tests if you check them out, without needing a custom arg. Also updates docs. Bug: angleproject:7755 Change-Id: I2b1ae67799234cc1aefe7cda5f3af945c3f867fd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3953340 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi dd0fc335 2022-09-26T22:56:29 GLES1: Make CTS verbose The `machine` parameters were uninitialized (set to 0 as globals). As a result, the test failure messages were not emitted, making it harder to understand what is failing. Bug: angleproject:3408 Change-Id: Ib8351755af24e01736314d1832160edf10a8e767 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3920894 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Greg Thompson 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>
Eddie Hatfield 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>
Yuly Novikov 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>
Roman Lavrov 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>
Roman Lavrov 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>
Greg Thompson 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>
Eddie Hatfield c54ed790 2022-07-21T10:38:47 Get desktop GL conformance tests to build The target for these tests is angle_deqp_gl_tests. Bug: angleproject:7533 Change-Id: I290822671d99da020f9a6a1f02bee43987644bf9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3766435 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Eddie Hatfield <eddiehatfield@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Eddie Hatfield 6e6f3e6d 2022-07-29T11:13:24 Convert GLenum to string for failed trace prereq message Bug: angleproject:5784 Change-Id: I14bc01afe97a2475d8b0f278840a279b663da7db Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3794304 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Eddie Hatfield <eddiehatfield@google.com>
Peng Huang 3dd6f5f7 2022-07-24T18:49:44 Reland "Disable share context lock for Chromium" This is a reland of commit e1741f4ba7dae4f6f09829b9152360544c912d1f Original change's description: > Disable share context lock for Chromium > > Bug: chromium:1336126 > Change-Id: I93b4e738a8816e6b318e5d5823bc9130f17deb37 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3781368 > Reviewed-by: Geoff Lang <geofflang@chromium.org> > Commit-Queue: Peng Huang <penghuang@chromium.org> Bug: chromium:1336126,angleproject:7537 Change-Id: I15811bc2fef0ba22f6ac13d51c72ed96b2a12507 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3792046 Commit-Queue: Peng Huang <penghuang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 83dfd839 2022-06-07T11:57:07 dEQP: Allow running against system GL. Bug: angleproject:7396 Change-Id: I6d6231ebfdea0f1df483c5764b086b14f8384d3d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3692266 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi ea138236 2022-07-12T15:51:05 Remove suppression for passing dEQP tests Numerous GLES3.2 tests are now passing. Bug: angleproject:5557 Bug: angleproject:5579 Bug: angleproject:5978 Bug: angleproject:6441 Change-Id: I6e42a3590390ff984432586c1cd642b20fcd758f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3758704 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
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>