Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| df48c027 | 2021-02-02 13:34:29 | Vulkan: Don't request aliased FB attachments. This produces undefined pixel values in GL. We can also return UNSUPPORTED if required and still be conformant. This fixes an assert in the gfx-rs portability implementation. Bug: angleproject:5601 Change-Id: Ifb84ad9b5e2365360a81cddba766b0bea81f2d51 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2668311 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 18a5e7a6 | 2021-02-04 11:19:21 | Enable packing extensions for the Vulkan backend The following extensions are ES2 extensions which become core in ES3: - EXT_unpack_subimage - NV_pack_subimage Since the Vulkan backend already fully supports ES3, it should be ok to enable these for ES2 contexts. This fixes all YUV related viz_unittests failures when using SwANGLE with the passthrough command decoder. Bug: chromium:1060139 Change-Id: I24ffd7a58f576799b93fe91e6be4032ca3175eda Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2676201 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org> | ||
| 4e8a848d | 2021-02-03 14:59:16 | Tests: Add Shadow Fight 2 trace TBR: jmadill@google.com,timvp@google.com Test: angle_perftests --gtest_filter="*shadow_fight_2*" Bug: angleproject:5610 Change-Id: I80c6c44e19d77124096ed5970f99fbb6157bf03b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2674482 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> | ||
| fff0a72e | 2021-02-03 14:03:57 | Tests: Add Hay Day trace TBR: jmadill@google.com,timvp@google.com Test: angle_perftests --gtest_filters="*hay_day*" Bug: angleproject:5608 Change-Id: Ib0e259f193ed08ac80f1ae7b1a738c62a235d572 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2673070 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> | ||
| 63e7ab8d | 2021-02-03 13:05:41 | Tests: Add One Punch Man trace Full app name is: ONE PUNCH MAN: The Strongest (Authorized) Test: angle_perftests --gtest_filter="*one_punch_man*" Bug: angleproject:5607 Change-Id: Ib887fb06e53238e56ff5b3e2d45e5d37522a87e2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2673881 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 54367a3e | 2021-02-02 19:31:33 | Capture/Replay: Support glCopyImageSubData with compressed formats Special Forces Group 2 uses glCopyImageSubData() to copy compressed texture data, which requires special handling for ANGLE's frame capture since compressed texture data can't be read back. To support this, when glCopyImageSubData() is called with textures using compressed formats, a new mCachedTextureLevelData entry will be created for the destination texture which is a copy of the source texture data. Note that this implementation only supports copying the full level data. http://anglebug.com/5604 will track adding support for partial level copies if an app requires that in the future. Bug: angleproject:5592 Bug: angleproject:5604 Change-Id: Ibce13f91f838fd691269c796fbeb5b9c6133c6aa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2669955 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Tim Van Patten <timvp@google.com> | ||
| 2dfb3fcd | 2021-02-03 10:55:58 | Tests: Add 8 Ball Pool trace Test: angle_perftests --gtest_filter="*eight_ball_pool*" Bug: angleproject:5606 Change-Id: Ied7392ecb5148280e1b4cee65c7c63a0baee24fe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2673064 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 2c685a41 | 2021-02-03 11:20:20 | Fix the perf test runner calibration. This path was broken for the white box unit tests. Also adds argparse handling to the runner so we can more flexibly override command line arguments. Previously the broken calibration was causing some of the tests to run only a single test iteration when measuring. This could lead to low quality measurements. Bug: angleproject:5573 Change-Id: Ic1cb2b2553774a361325f290440c40b2ff90db5e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2672702 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 89f50584 | 2021-02-03 08:51:04 | Vulkan: Add ExtendedDirtyBitType bitset ExtendedDirtyBitType qualifies DIRTY_BIT_EXTENDED dirtybit. Clip control code path can now set the appropriate ExtendedDirtyBitType when there is a change in state. Also remove the ClipSpaceOrigin member in the Vulkan backend that cached front-end state. Bug: angleproject:5471 Tests: dEQP-GLES2.functional.clip_control.* Change-Id: I8dbb509ef940e7905439d32483fd67a8fc171a6e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2673062 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Mohan Maiya <m.maiya@samsung.com> | ||
| 573d7f34 | 2021-02-01 10:36:56 | Test Runner: Pick single/multi-process mode automatically. This enables multi-process when running with more than one test config. This saves developers from remembering to add the arg. It can also simplify our test configurations by allowing us to omit the default arguments. On Android by default we stay with single process. It also changes the --bot-mode flag into --single-process and --multi-process which override the default behaviour. Bug: angleproject:5585 Change-Id: I3dd885a8a8e6604c224693c546ff5d15224e016e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2664246 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| ffb36559 | 2021-02-03 10:22:43 | Tests: Add Temple Run 2 trace TBR: jmadill@google.com,timvp@google.com Test: angle_perftests --gtest_filter="*temple_run_2*" Bug: angleproject:5605 Change-Id: I4b60b5f258e57dda44df9186c981764d4633a277 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2673063 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> | ||
| ad985fcd | 2021-02-02 21:35:04 | Tests: Add Minecraft trace Test: angle_perftests --gtest_filter="*minecraft*" Bug: angleproject:5603 Change-Id: I8befbbb49762a14beea1863f4bb76e676cde0d8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2669959 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 4e1aa85e | 2021-02-02 16:51:39 | Tests: Add RAID: Shadow Legends trace Test: angle_perftests --gtest_filter="*raid_shadow_legends*" Bug: angleproject:5602 Change-Id: I4df06d09db57bb3d6ab0dcaf86e84f418c248a0b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2668066 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com> | ||
| 6cc845bb | 2020-12-07 18:14:50 | Vulkan: Add support for EXT_blend_func_extended This implementation utilizes vulkan's dualSrcBlend feature. Expose this extension if the underlying vulkan backend allows the use of this feature. Test: angle_end2end_tests --gtest_filter=EXTBlendFuncExtendedDrawTest* Bug: angleproject:5074 Change-Id: I7d2f611df89d65e5cac35158cb5f41a0ebd58aae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2593151 Commit-Queue: Brandon Schade <b.schade@samsung.com> Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 4a09df13 | 2021-02-02 17:52:56 | Vulkan:Fix wrong outputCount of emulated RGB copies. The output count of shaderParams equals componentCount divided by Ed. To avoid losing the last data,replace division with UnsignedCeilDivide function. Bug: angleproject:5598 Change-Id: I079d72f4eefa3d6b0f5d80ada25829fea673410c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2666869 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 43e39e1e | 2021-01-29 13:41:56 | Tests: Add Manhattan 3.1 trace Note: This trace is longer than most at 100 frames. This is to help get more accurate data on how transform feedback is behaving. It also allows us the opportunity to trim to smaller sections if we wish, and get more reliable results on unstable systems. Test: angle_perftests --gtest_filter="*manhattan_31*" Bug: angleproject:5589 Bug: angleproject:5591 Change-Id: I76db8a56832d04ea4d335bd81ff98ba1679add5f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2659850 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com> | ||
| 7e81056a | 2021-02-01 11:16:14 | Vulkan: Support integer type incomplete texture Support both signed and unsigned integer type incomplete textures. Bug: angleproject:5502 Bug: angleproject:4432 Tests: IncompleteTextureTestES3.*IntegerType* dEQP.KHR_GLES31/core_sample_variables_mask_rgba8*i_* Change-Id: Ic8c972aac0ca8589b26333b66dd0cc5fb5134043 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2613245 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 572afd90 | 2021-01-29 22:45:29 | Disable SH_SCALARIZE_VEC_AND_MAT_CONSTRUCTOR_ARGS workaround. It causes incorrect compilation of some shaders. The original graphics driver bugs that motivated enabling it have been fixed, at least on one of the platforms (macOS). Tested with new WebGL conformance test in https://github.com/KhronosGroup/WebGL/pull/3214 . Bug: chromium:1165751 Change-Id: Iee9747769ca918aab143592d6cf158ce02a75ee0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2661024 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| 4a426e1f | 2021-02-01 12:10:46 | Vulkan: Add missing variable inits to ContextVk. This was preventing testing with the viewport flip disabled. Bug: angleproject:5596 Change-Id: I5cc39eb2e1b431625f2f1498ab73828961af42ee Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2664249 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 729139c9 | 2021-02-01 13: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> | ||
| 0d175f30 | 2021-01-20 16:34:40 | Tests: Add eFootball PES 2021 trace Test: angle_perftests --gtest_filter=TracePerfTest.Run/*efootball_pes_2021* Bug: angleproject:5564 Bug: angleproject:5517 Change-Id: I9738876b6a6c365984cecce01f2f09e0260b41cc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2656989 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com> | ||
| 85efb9d5 | 2021-01-26 14:39:19 | Log dEQP QPA files as test artifacts. This adds artifact output to the test runner. We add a fake test at the start of a test run that owns the artifacts. Bug: angleproject:5236 Change-Id: Ice8001bf1f2aafbd8123fee76e0e7fcc3e5a8a0c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2657535 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> | ||
| b15de455 | 2021-01-27 13:58:42 | Remove extension check in validation of ES3.2 entry points Bug: angleproject:3582 Change-Id: I563c6d77b825afd44809db0d08dc4842a5f93b6a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653914 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 0be050a4 | 2020-09-23 15:12:56 | Pass GL_VERSION info through ANGLE's GL_RENDERER string Chrome needs ANGLE to pass through the underlying driver vendor and version, which cannot always be determined by the SystemInfo library. This is done by construction GL_RENDERER in the frontend through combining GL_VENDOR, GL_RENDERER, and GL_VERSION from the backends. Example changes are in the doc: https://docs.google.com/document/d/1p0dvrLlu8NKhO-RCU5gqlQ_LvcQj-ZqhvfwSk1n3Sz8/edit?usp=sharing Bug: chromium:1126526 Bug: chromium:1131248 Bug: chromium:1134669 Bug: chromium:1169861 Change-Id: Ia618ebcd7f3caaeb376b4b6a03446732efdaeecb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2427383 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| 62387fc6 | 2021-01-27 13:58:01 | Vulkan: Enable geometry/tessellation deqp KHR 3.2 tests Preliminary triaging is done for the failing tests. Additionally, the tests are only enabled for windows for now, due to failures on the Android and Linux bots, likely due to old drivers. Locally, the failures on Linux match the expectations for windows. Bug: angleproject:5557 Bug: angleproject:5579 Change-Id: I72d998097fad495c21414917ef09e132274f7c8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653913 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| 61f60161 | 2021-01-27 13:57:13 | Vulkan: Set missing geometry/tessellation limits Bug: angleproject:5557 Bug: angleproject:5579 Change-Id: Idb8ebc0c3beee8f273d0df3b4e0d84722a8590b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653912 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| c6a8bc4a | 2021-01-30 14:58:22 | Fix a crash in DynamicBuffer::~DynamicBuffer() The crash is because mBufferFreeList is not moved from the rhs value for DynamicBuffer's move constructor. Bug: chromium:1170339 Change-Id: I7d41b775ab56af8fa9412369d5a4008f59da3053 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2661615 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| eae262e7 | 2021-01-27 13:56:49 | Vulkan: Fix image layout barriers for tessellation shaders Also fixes a bug where invalid stages may be specified for example if AllGraphicsReadOnly or DepthStencilReadOnly layouts are used and geometry or tessellation shaders are not supported by the implementation. Bug: angleproject:5557 Change-Id: Ia25a6aec8138c67701c63da65783263d8a7bda27 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653911 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| 6d86a0fe | 2021-01-29 11:08:04 | Fix mActiveImageShaderBits not updated in PPO's executable Allows the backend to rely on this bitset always being valid, instead of working around the bug. Bug: angleproject:5587 Change-Id: I25e1304c0e5e34b5fc1677a819315574603ed034 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2658885 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| d5ca645e | 2021-01-29 13:29:49 | Capture/Replay: Set uniform buffer offset alignment During capture, we need to set a common uniform buffer offset alignment so the trace will be more portable. The offset used by the trace needs to be divisible by the device's actual value for GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT. Empirically I've seen the following values supported by devices: ARM (16), Intel (32), Qualcomm (128), Nvidia (256) Test: Manhattan 3.1 MEC Bug: angleproject:5589 Change-Id: I071b6ae7be4c827eb8df4a8b39db901226d0f00b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2659849 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com> | ||
| 37a0dced | 2021-01-28 17:52:05 | Vulkan: Disable clip space transform based on EXT_clip_control When depth is set to "ZERO_TO_ONE_EXT" using EXT_clip_control API, don't transform the z position in shader since it now matches Vulkan's depth range. Toggle transformPositionToVulkanClipSpace accordingly. Bug: angleproject:5471 Tests: dEQP-GLES2.functional.clip_control.depth_mode_zero_to_one Change-Id: I7e715cb3c98cecf5aaa5cdc3822a3a83bae9c720 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2615864 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| b1deba2f | 2021-01-28 16:06:51 | Vulkan: Don't emit spec const declaration in compute shaders Bug: angleproject:5070 Change-Id: I74becfeac88b4a8ff66dd36670792082d0b941cd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2658882 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| a5ab7974 | 2021-01-28 12:32:10 | Turn on vulkan backend for android ndk level < 26 Fixes two issue for build Vulkan backend for android ndk level < 26, * Disable Vulkan validation layers for android ndk level < 26 * Share vulkan memory allocator implementation with chrome to avoid duplicated symbols link errors. * Only run vulkan backend test with Android P or newer Note: This change will break android-binary-size try bot, we need to update expected_static_initializer_count to 4 at [1] while rolling this change into chromium. [1] https://source.chromium.org/chromium/chromium/src/+/master:chrome/android/static_initializers.gni;l=19?q=expected_static_initializer_count&ss=chromium%2Fchromium%2Fsrc Bug: chromium:1170339 Change-Id: Idb9238d8f339724c4d8f9ac136305b95ff06fae4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2656980 Commit-Queue: Peng Huang <penghuang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| b4fd4628 | 2021-01-27 15:56:58 | Revise WebGL's shaderSource validation. Per discussion in the WebGL working group, shaderSource no longer generates INVALID_VALUE for sources containing characters outside the ESSL character set. Compilation and/or linking is still specified to fail when illegal constructs are used. With this change, https://github.com/KhronosGroup/WebGL/pull/3206 passes with the passthrough command decoder. Revise WebGL compatibility tests to follow the new rules. Bug: chromium:1171506 Change-Id: Id132e0b64fa94b373f2732acf2a7071f38f0d4ff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2654264 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Kenneth Russell <kbr@chromium.org> | ||
| 80a4223e | 2021-01-28 17:51:31 | Vulkan: Handle changes to viewport when clip origin is modified The expected view port is different from current viewport translation when the clip origin is the upper left. So now, it has four different view port translations based on clip origin and y-flip of framebuffer. - add query and state management for EXT_clip_control - add dirty bit for clip control - change viewport, scissor and cull face when clip origin changes Bug: angleproject:5471 Tests: dEQP-GLES2.functional.clip_control.* Change-Id: I78dc752c3287b09f25496034e0d0d2724138010c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2615863 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 6cfbe252 | 2021-01-27 13:42:55 | Fix geometry/tessellation checks to account for ES3.2 Bug: angleproject:5557 Bug: angleproject:5579 Change-Id: Iae54940cefb5ba516dc173413b35b646e1968ba6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653906 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| 74f7be6d | 2021-01-28 14:04:47 | Vulkan: Rectify typo in EXT_texture_format_sRGB_override The extension string for EXT_texture_format_sRGB_override was missing the "format" substring. Bug: angleproject:4561 Change-Id: I19788191b589b64639b036d2bb54508077fca7e8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2658355 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| e419222d | 2021-01-28 17:14:02 | MSAA PreRot: Make MultisampleTest use rectangular window This will make it easier to fix/prevent bugs with MSAA-swapchain windows, which are not currently pre-rotated properly on Android. Bug: b/175793022 Change-Id: Ia51446db62c8ec94313ae75fd87ad8e9477f76e2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2656997 Commit-Queue: Ian Elliott <ianelliott@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 2dae09e8 | 2021-01-27 13:54:25 | Fix draw mode validation of PPOs with geometry/tessellation The properties related to geometry and tessellation shaders were not being copied from the Program's exectuble to the Program Pipeline's. Bug: angleproject:5557 Bug: angleproject:5579 Change-Id: Ied6ff82c7e30f24504c9a3f5c008181b179b07ff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653909 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| ddba70da | 2021-01-27 13:52:12 | Fix xfb mode validation with geometry/tessellation In the presence of geometry and/or tessellation shaders, transform feedback mode must match what these shaders produce, instead of what's passed to glDrawArrays. Bug: angleproject:5557 Bug: angleproject:5579 Change-Id: I6a21621e66b31553ed6a3a50c3aebf60e1ac7be5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653908 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| 122a1cc5 | 2021-01-26 20:06:24 | Fix several vulkan backend problem on Android. * Load AHardwarebuffer API dynamically, so vulkan backend can be built with old NDK, but can work with newer android releases. * Do not link with libvulkan on android. * Expose EGL_ANDROID_get_native_client_buffer extension with vulkan backend. Bug: chromium:1170339 Change-Id: Idf7f6867a86ae40ba6d57a86e419c610ba404ba8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653506 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Peng Huang <penghuang@chromium.org> | ||
| 4ec7021c | 2021-01-27 16:41:45 | Report angle_restricted_trace_gold_tests as interrupted on Exception Otherwise step is reported as failed but build as succeeded Bug: chromium:1153299 Change-Id: Id21d7ceafd04553634463be5acb64c070d251abb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653859 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> | ||
| 2baa6288 | 2021-01-27 13:55:36 | Fix validation of glCreateShaderProgramv for geometry/tessellation Bug: angleproject:5557 Bug: angleproject:5579 Change-Id: I581d7485d0e8771f3f23dea4255139d56052bee9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653910 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| 53105997 | 2021-01-28 07:42:15 | Initialize some missing vulkan function pointers Those methods are used by VMA. However VMA can get those methods by itself, if null function pointers are provided for creating the VMA. But it will cause problem, when ANGLE & Chromium are sharing one VMA implementation, since the VMA implementation in chromium will be built with VMA_STATIC_VULKAN_FUNCTIONS=0 & VMA_DYNAMIC_VULKAN_FUNCTIONS=0. Bug: chromium:1170339 Change-Id: I5bf435698e4e361bfa7a6afce84390ccc4355b53 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2655795 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| a408ce83 | 2021-01-27 13:48:27 | Fix geometry shader draw mode validation The draw mode (as passed to glDrawArrays) was being compared with the transform feedback mode in the presence of geometry shaders, but the two are completely unrelated. Bug: angleproject:5579 Change-Id: I03bff97f79fe8d8a4354a6ea3abfed58c1e600eb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2653907 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| 5e0a8f9b | 2021-01-27 13:46:08 | Translator: Enable geometry and tessellation in ES3.2 Symbols that these extensions introduced were only accepted if the extension directive was present. This is not necessary for es 320 shaders. This change adds a new tag to builtin variable and function declarations in the translator, namely "essl_extension_becomes_core_in" which makes gen_builtin_symbols.py automatically create two entries for the builtin; one with the specified level and extension, one with the core level and without extension. Entries in builtin_function_declarations.txt can potentially be deduplicated as a follow up to take advantage of this tag, though likely an anologous "glsl_extension_becomes_core_in" needs to be introduced. Bug: angleproject:5557 Bug: angleproject:5579 Change-Id: I84c19f48a3ccc89d82d80a4f35f7833205bbc88f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2649449 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| badcf3bd | 2021-01-27 17:14:43 | Vulkan: Enable fbo.invalidate.whole.unbind_blit_msaa_[color|stencil] These test failures were fixed with a recent SwS CL: https://swiftshader-review.googlesource.com/c/SwiftShader/+/52088 Bug: angleproject:5044 Test: dEQP-GLES3.functional.fbo.invalidate.whole.unbind_blit_msaa_color Test: dEQP-GLES3.functional.fbo.invalidate.whole.unbind_blit_msaa_stencil Change-Id: I36034c72e28fc07ecff0eaca31745c97f054b77e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2654526 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 5006a573 | 2021-01-26 17:15:10 | Capture/Replay: Capture glUniformBlockBinding() eFootball PES 2021 uses glBindBufferRange(), which requires glUniformBlockBinding() to create the pairing of uniform block indexes to buffer bindings. The uniform buffer indexes that are assigned when each program is linked can differ between drivers, so the glUniformBlockBinding() calls need to be recorded to get the correct index values for the glBindBufferRange() calls. Bug: angleproject:5564 Change-Id: I909e05d5b1cc50e592b887bd130aa80cdb1bb40f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2650993 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 351e6e8c | 2021-01-26 17:08:59 | Add 'UniformBlockIndex' struct Add the new structure 'UniformBlockIndex'. This is in preparation for capturing glUniformBlockBinding() calls, which requires the (new) corresponding ParamType::TUniformBlockIndex. Bug: angleproject:5564 Change-Id: I88613dd96d058659dd253e8088fab49670c32316 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2651287 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> | ||
| ea0f3496 | 2021-01-25 12:47:27 | GL: Update VertexArrayGL to not store per-context state. Move StateManagerGL and FunctionsGL members out of VertexArrayGL and query them directly from the context in methods. Bug: angleproject:5577, chromium:1167179 Change-Id: I376f3eff15fbd9855c5956737064f56d54acbceb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2647868 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| f6925344 | 2021-01-25 13:13:33 | Trace Tests: Update expectations. Bug: angleproject:5530 Change-Id: I48a6dc5753406e6dd6cd1845f1f28fcbfc485e34 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2647871 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| e7ca0aa2 | 2021-01-24 17:46:26 | Fix crash in multi-context D3D11 backend. The crash occured due to a lack of marking a context dirty on eglMakeCurrent(), resulting in a situation where a thread B would call eglMakeCurrent() but before issuing additional GL calls, thread A would issue a draw command. Prior to this change, context state would only be marked dirty on gl calls. Test: dEQP-EGL.functional.sharing.gles2.multithread.* dEQP-EGL.functional.multithread.* dEQP-EGL.functional.render.multi_thread.* dEQP-EGL.functional.color_clears.multi_thread.* Bug: b/177602915 Change-Id: I765e0423002a373f94ea459b81b6e6f6942870d2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2646609 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Doug Horn <doughorn@google.com> | ||
| de53e308 | 2021-01-26 12:44:04 | Metal: Fix XFB failures on ARM. Metal back-end needs to generate 2 versions of XFB shader: - one version without XFB emulation code for rasterized draw. - one version with XFB emulation code for draws with rasterization disabled. Based on a change by le.hoang.q@gmail.com Bug: chromium:1167763 Change-Id: I2858859e15b18701fadff09092bb08778c4a7e64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2648636 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Le Hoang Quyen <le.hoang.q@gmail.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 4921e457 | 2021-01-22 22:36:13 | Vulkan: Avoid unnecessary pipeline rebinds Bug: angleproject:5528 Change-Id: I5502498fa5d6767f55635fe9fff949d7fd644f4f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2645640 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| c38413f8 | 2021-01-26 15:04:38 | Make glmark2 benchmark output parsing more resilient On Linux, the following info messages are being output which are seemingly harmless: INFO: EGL CRITICAL: eglQueryString: display is not initialized. INFO: EGL ERROR: eglGetPlatformDisplayEXT: Bad platform type. These lines are now parsed and forwarded to output. Bug: angleproject:3139 Change-Id: Ia9feb2aef4c1809283588d6e5fc1b6a51ae8812b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2648641 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| f9afaaee | 2021-01-25 13:46:22 | GL: Remove in-thread link status check from parallel link path. A call to checkLinkStatus was wrongly placed in the nativeParallelCompile path, which ended up blocking on shader linking, rendering parallel compilation useless. Bug: chromium:1169477 Bug: chromium:1099763 Change-Id: Id2c5fe31e651abac76207c93919fd83d79f30556 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2647987 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> | ||
| 9bbcd86a | 2021-01-25 10:52:35 | Capture/Replay: Fix instanced array client data. Enables a bunch of self-tests. Bug: angleproject:5530 Change-Id: Idd14574ba0f3d44124e153ccb32fec7318baf217 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2647745 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| 6689a54d | 2021-01-21 00:36:14 | Vulkan: autogen for SPIR-V instruction build and parse Handwritten SPIR-V instruction parse and build code is replaced with autogenerated functions based on the SPIR-V grammar. Bug: angleproject:4889 Change-Id: I09d724fd944e79c03fe4eadca3ee3e3ef0b49872 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2644721 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| cc5083e0 | 2021-01-15 10:29:36 | Compression of the data from vkGetPipelineCacheData. The size of pipelineCacheData sometimes is greater than 64k which cannot be saved because of the Android blob cache limitation (single cache data size should be < 64k). Implement the compression to store more cache data. Bug: angleproject:4722 Change-Id: I435b086d70d0e6378f1141464ae2bafbe076f193 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2631511 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| cfb9c30c | 2021-01-25 10:54:09 | Capture/Replay: Apply skips correctly on SwS. The skips listed currently were explicitly for ES2_Vulkan instead of applying to both desktop and SwS Vulkan implementations. This CL swaps the expectations to use wildcards so they will work for both. Bug: angleproject:5530 Change-Id: Iae83207411296cb819bb0a25d2247cb4af863adb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2645723 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| 3623868e | 2021-01-22 12:24:50 | Trace Tests: Add xvfb command line option. This will enable running the tests on Linux. Bug: angleproject:5530 Change-Id: I7cd2155fac89d395a8bebacb2f1a44be0e7d3739 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2644723 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| 3c3b82ab | 2021-01-21 20:21:34 | Tests: Add Hearthstone trace Test: angle_perftests --gtest_filter="*hearthstone*" Bug: angleproject:5571 Change-Id: Idc6535bbf817cd62d34aa9e684604be068455520 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2644143 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| c51c3548 | 2021-01-19 14:15:54 | Vulkan: Unconditionally expose OES_shader_io_blocks All relevant tests pass, so no longer conditioned to exposeNonConformantExtensionsAndVersions. Bug: angleproject:3580 Change-Id: I9b398bd962831fabf0ec39ad9aad3b200717d087 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2636687 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 3846cff3 | 2021-01-21 16: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> | ||
| e60ce3da | 2021-01-21 16:42:17 | Capture/Replay: Allow testing with multiple versions. This embeds the context version and device type info into the replay. The self-tests then can create the correct display and context types. This fixes testing against SwiftShader which is necessary for the bots. Bug: angleproject:4759 Change-Id: If9da6bfdc1c2b315ccd7e453872fc84063277054 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2643363 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| b745f6df | 2021-01-21 14:41:00 | Capture/Replay tests: Fixes for goma & depot tools. Adds the depot tools path to be specified via the command line. This will allow the bots to specify working directory locations. Also adds quotes around the goma path in the gn args. Bug: angleproject:5530 Change-Id: I1291a8cdf4e36e55786403b4d9a6ce8565093352 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2642894 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| ff5f715e | 2021-01-19 16:46:04 | Properly fail upon program binary version mismatch Return angle::Result::Stop instead of Incomplete when Program::deserialize detects version mismatch. This causes the caller, Program::loadBinary, to stop trying to load it. At least with the Vulkan backend, trying to load it results in a crash. Added test case to ProgramBinariesAcrossPlatforms which exhibits the old crash. Bug: angleproject:5567 Change-Id: I2ebb27cee0aa895855504f758992b4dfec3f4aa3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2639078 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Steven An <stevenan@google.com> | ||
| 9ccd3536 | 2021-01-20 18:19:41 | Capture/Replay: Capture all indexed buffer bindings during MEC "eFootball PES 2021" binds uniform buffers via glBindBufferRange() before any frames haves been rendered and then uses those bound buffers for all subsequent frames. A recent fix captured the UBOs that were also bound as GL_UNIFORM_BUFFER, but failed to capture all indexed buffers bound only with glBindBufferRange(). This CL captures all indexed uniform, atomic counter, and shader storage buffers during MEC setup. Bug: angleproject:5564 Change-Id: I0e638ec4407a091f943b9640e8fc6a7c9f4c4e08 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2640424 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Tim Van Patten <timvp@google.com> | ||
| 70f493d6 | 2021-01-20 14:22:14 | Tests: Add Subway Surfers trace Note this differs from the previous trace for the app, "subway_surfer_500". The previous trace is no longer compatible with the replay harness and could not be re-recorded due to using Vulkan at the time. Test: angle_perftests --gtest_filter="*subway_surfers*" Bug: angleproject:5569 Change-Id: If941a3f0e88e3e1aee7fb7db736e623f66a65de6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2641098 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com> | ||
| 535d4783 | 2021-01-20 14:14:02 | Vulkan: Flush if sync object is pending during SyncVk::getStatus() When a glGetSynciv() is performed for GL_SYNC_STATUS, we should flush any pending commands if a sync object is pending a flush, since the caller is interested in the status of a fence. This will guarantee that the work is submitted to the hardware and eventually completes. This is accomplished by moving mSyncObjectPendingFlush from ContextVk to ShareGroupVk, so that any sync objects used by any contexts within the share group are submitted to hardware and the required work completes. Bug: angleproject:5306 Bug: angleproject:5425 Test: FenceSyncTest.BasicOperations Change-Id: I2e2681ad01fda429ba37f061c9bac5eb91f800fd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2641095 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com> | ||
| 26e02593 | 2021-01-15 12:38:46 | Capture/Replay: Erase texture from mCachedTextureLevelData When the caller issues a glCompressedTexImage call, we need to delete the cached texture data, since the texture size/data are being respecified and the old data is now stale. This fixes MEC for "Klondike Adventures". Bug: angleproject:5549 Change-Id: Ie788e2bf39f7a29ec6bc55f95d6f570f1d22d659 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2633071 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> | ||
| f5d56799 | 2021-01-20 10:00:54 | Do not make context current during context deletion. ANGLE will make a context current during deletion, so ANGLE can release related resources, but for an external context, the API user should make sure the native context is current during deleting the ANGLE external context, so ANGLE doesn't need to make the context current. Bug: angleproject:5509 Change-Id: Ia4cee4e3965e9e9e811e3f989f6f6d72bd940f41 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2640593 Commit-Queue: Peng Huang <penghuang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| 203154b5 | 2021-01-18 10:43:07 | Vulkan: Remove swiftshader workaround for missing gl_Position The following line was added by the translator to work around a swiftshader bug where no gl_PerVertex declaration (and hence no gl_Position) would fail an assertion: gl_Position = gl_Position; The swiftshader bug is fixed, so this line can be removed. Bug: b/176161380 Change-Id: I68a8e0d9cd8b97e9d294a119c2daa4ab64ec863f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2633729 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 9f4b159b | 2021-01-19 12:48:15 | Translator: Avoid vector copies with multi-replacement Turns push_backs into emplace_backs and changes the TIntermSequence constructor argument to &&. Bug: angleproject:5535 Change-Id: I640ce879b6ade48a28dea6385ebb7a95cb8304ff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2636680 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| bb766000 | 2021-01-20 16:58:16 | Vulkan: Move Flush during SyncHelper::clientWait() earlier The checks and call to contextVk->flushImpl() needs to be moved before the timeout check to ensure that the vkEvent is flushed to HW eventually when the caller is waiting on it, even if they don't specify a timeout. Bug: chromium:1060139 Test: CopyOutputScalingPixelTest.ScaledCopyOfDrawnFrame/48 Change-Id: I725ea492aaf21e291fe3e5b9ae11ea009e59e019 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2640423 Commit-Queue: Alexis Hétu <sugoi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Alexis Hétu <sugoi@chromium.org> | ||
| f0286e63 | 2021-01-19 12:38:46 | Translator: Stop allocating TIntermSequence The functions that take a TIntermSequence always copy out / Swap the contents away. This change makes all TIntermSequences live on the stack instead of being newed. Bug: angleproject:5535 Change-Id: I942f1c5e57b00199d5308183f71bd9e18b0608bd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2636679 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 137271ff | 2021-01-13 14:34:12 | Support specifying array slice for D3D11 texture EGLImage Client can specify array slice for creating the SRV/RTV with EGL_D3D11_TEXTURE_ARRAY_SLICE_ANGLE. Test: D3DTextureTest.TextureArrayImage* Bug: angleproject:5538, chromium:1116101 Change-Id: I81cb2823df2145f1d05ad1526b0e36d6a0724d5e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2628609 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org> | ||
| bb3adfa4 | 2020-12-01 15:43:13 | Rename ShaderVariable::structName to structOrBlockName Bug: angleproject:3580 Change-Id: Ic53a5267972f153dad2e20948e493e9767a45d16 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2568247 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| df33d561 | 2021-01-19 11:42:35 | EGL: Respect eglMakeCurrent with a null context. Our context virtualization code would try to optimize this case and leave the current context bound when possible. This has the side effect of leaving the current surface bound too, even if it was deleted. During Chrome's window resizing, it deletes the window, calls eglMakeCurrent with null and then recreates the window. This causes an error because the window still exists because it was left current in ANGLE. Bug: chromium:1167718 Change-Id: I857be88be48dfa9c0dd9173f235e155e727e3014 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2637717 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| 2ebff7f2 | 2021-01-20 08:39:40 | Support switch surfaces for external context. WebView may change surfaces due to resizing. So we need to support switching surfaces with the external context. Bug: angleproject:5509 Change-Id: Id91eed092a63b3740fd796e0a3cb819ae18baaa9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2639077 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Peng Huang <penghuang@chromium.org> | ||
| 0ae61c25 | 2021-01-20 10:40:24 | Capture/Replay tests: Use failure exit code. This will allow the test step to fail when run in CI. Bug: angleproject:5530 Change-Id: I7c156438ded82aa7191b8b597a9a52200c0efe57 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2638989 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> | ||
| ea71c6b6 | 2021-01-12 14:13:35 | Vulkan: Emulate R32F images with R32UI GL requires that imageAtomicExchange be supported for r32f formats. However VK_FORMAT_FEATURE_STORAGE_*_ATOMIC_BIT is nearly unsupported everywhere without some Vulkan extension that brings in unnecessary support. This GL feature is emulated by transforming the shader to use r32ui for all images that originally specified r32f. floatToUintBits and uintBitsToFloat is used to maintain correct usage of the image* builtin functions. Bug: angleproject:5535 Change-Id: Ie607089935d3283b3ffa054f4b4385b81fb8f53d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2635453 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| a4d05638 | 2021-01-18 14:58:22 | Capture/Replay: Don't serialize compile resources string. The resources string gets changed dynamically during capture. This breaks the regression tests because they were comparing for identity. Bug: angleproject:5530 Change-Id: I0734f735577a5ff4c9083adb8f25a37aad3c0e37 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2634830 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| 2b242f53 | 2021-01-17 14:24:53 | Vulkan: Simplify RewriteCubeMapSamplersAs2DArray This change is mostly done to remove an unnecessary helper in ReplaceVariable.cpp. Tested locally, as the bots all support ES3.1+. There are a few failures, with or without this change. Bug: angleproject:5556 Change-Id: I7bd2d4294c9dc164146d713db6b45cbc73e59c16 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2633437 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| 186fe990 | 2021-01-15 15:49:30 | Vulkan: Redo RewriteAtomicCounters With MonomorphizeUnsupportedFunctionsInVulkanGLSL and RewriteArrayOfArrayOfOpaqueUniforms transformations run, it is no longer possible to encounter array of array of atomic counters, or have any passed to functions. As a result, RewriteAtomicCounters is greatly simplified. Additionally, it is no longer necessary to pass binding/offset information for atomic counters around and they can use constants. This change removes dependency on the shaderStorageBufferArrayDynamicIndexing Vulkan feature. Bug: angleproject:3726 Bug: angleproject:3881 Change-Id: Ia43092a668f60d009eccbbceeed5deaf105a5895 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2633687 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 64c89120 | 2021-01-19 21:51:23 | Suppress incomplete texture tests on mac/arm Bug: chromium:1168370 Change-Id: I5f3e1b76b4efd21f3655d6995293ff4bbbebea17 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2639273 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 382f016d | 2021-01-19 15:35:19 | Vulkan: Retain OpSource in SPIR-V Needed by AGI. It's a small instruction, and there's only one of it. This change makes the SPIR-V transformer retain this instruction even on release. Bug: b/177556123 Change-Id: I0a2ba8afe55018b08f25abd8a139b64b2a5f6f11 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2636691 Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| 0739f07a | 2021-01-19 23:54:20 | Revert "Add support for building in Flutter Windows UWP configuration" This reverts commit 68ac4e43aa67c4bac9df639d80079648ea86dbe9. Reason for revert: Crashes Chrome GPU process startup on Windows x86 See crbug.com/1168272 Original change's description: > Add support for building in Flutter Windows UWP configuration > > Bug: angleproject:5527 > Change-Id: Idf5a4cbb6f84b24fa2448157cab1b6a3bce4d8be > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2620580 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Jamie Madill <jmadill@chromium.org> TBR=geofflang@chromium.org,stuart.morgan@gmail.com,jmadill@chromium.org,james@clarkezone.io # Not skipping CQ checks because original CL landed > 1 day ago. Tbr: jmadill@chromium.org Bug: angleproject:5527, chromium:1168272 Change-Id: Ifb37c8026253c6a7c334d5b6c83018c888a9f51c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2638572 Commit-Queue: Austin Eng <enga@chromium.org> Reviewed-by: Austin Eng <enga@chromium.org> | ||
| 08e385b4 | 2021-01-15 17:31:19 | Tests: Add Klondike Adventures trace Test: angle_perftests --gtest_filter=TracePerfTest.Run/*klondike_adventures* Bug: angleproject:5548 Change-Id: I1bab7696f3db6cb3b3be9d1f3e241891586a9cc8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2634204 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 192a0147 | 2020-10-08 16:47:35 | Multithreading in D3D11 minimum viable product Bug: b/168046573 Change-Id: I676a148333cbf5e9ca508768503e62cb14d8eeb0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2629618 Commit-Queue: Doug Horn <doughorn@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Trevor David Black <vantablack@google.com> | ||
| 2e0490ee | 2021-01-18 14:21:46 | Capture/Replay: Serialize float states properly. Previously we were always casting to int. Instead add a float serialization helper function. Bug: angleproject:5530 Change-Id: Ifc80e1dbad9da8a04b3b013c3a3ffa60444f6d26 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2634829 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| 7489bb2e | 2021-01-19 14:35:59 | Suppress failing tests on mac ARM Bug: chromium:1167763 Change-Id: I7f88bd60119dd630ea7733228baff97598bfd739 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2636688 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| b912eec5 | 2020-11-27 11:08:41 | Vulkan: Support GL_EXT_tessellation_shader. Shader translator changes done in http://crrev.com/c/2633936 Adds a new DIRTY_BIT_PATCH_VERTICES state to Context. Supportes state query and transform feedback. 4 test suppressions remain as follow-up fixes. Adds a new varying packing mode for a simple Vulkan rule set. Based on work by Mohan Maiya (m.maiya@samsung.com). Test: dEQP-GLES31.functional.tessellation.* Bug: angleproject:3572 Change-Id: I4cad2cca30adb754fd12c83027673906541f566a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2568234 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| acf2985d | 2021-01-19 10:33:14 | Vulkan: Add integer type incomplete texture tests Add tests for both signed and unsigned integer texture types. Bug: angleproject:5502 Bug: angleproject:4432 Tests: IncompleteTextureTestES3.*IntegerType* Change-Id: I22e451424d19c3e525cd08ad4c16e1150d9d2467 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2613244 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| dd6ac664 | 2021-01-18 16:30:18 | Tests: Add Asphalt 8 trace Test: angle_perftests --gtest_filter="*asphalt_8*" Bug: b/150484427 Change-Id: I6a5f1feec61466eae55c1a2464272aba797ed56c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2636602 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com> | ||
| f45e625f | 2021-01-18 21:56:46 | Fix image bindings with an image after an image array of array The logic to calculate the image binding offset for each element of an array of array of images was incorrect, in that it used the arraySize accumulated so far to offset the next image's binding. Bug: angleproject:5535 Change-Id: I2dc3ce7bbf7b77302d1b56b4701bec2e990fdae1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2635452 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> | ||
| feb470cc | 2021-01-19 10:10:18 | Test Runner: Prevent race by not resetting timeout. This instead only sets the timeout when tests start to run. That way the timeout should always be at least the default timeout and we won't get into a situation where the watchdog times out the test immediately when the test starts. Bug: angleproject:5562 Change-Id: I6b12bb8fe8edcf35f46ba4fb106fdf80ff9402a1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2637182 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| 2e3786ed | 2020-12-18 13:19:16 | Capture/Replay: Use glUniform1iv on samplers, ignore images In OpenGL, GL_INT is expected for sampler uniforms. Before this our emitted code was using the underlying return type, which can be unsigned, leading to glUniformuiv. Also, don't try to set image uniforms with glUniform calls, it is not allowed. Test: Fortnite MEC Bug: b/170755560 Change-Id: I6786df487285fee77cfe792dfa85eb17feb155e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2611557 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com> | ||
| e670fc72 | 2021-01-18 15:51:42 | Implement shader compiler changes for Tessellation. Numerous rule changes to support validating Tessellation Control and Evaluation shaders. New per-patch inputs and output variable support. Includes a new traverser step that validates barrier function calls. Functionality changes upcoming in http://crrev.com/c/2568234 Bug: angleproject:3572 Change-Id: If8da1c21d30efa12c60ed0d6c3f8cf0b27e4c86f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2633936 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> | ||
| 20f8828c | 2021-01-15 16:04:29 | Capture/Replay: Fixes for compressed texture cache Some compressed block sizes don't align properly to surface dimensions. For instance, ASTC_6x6_UNORM populating a 64x64 surface. Our FrameCapture code was assuming block alignment and was losing data. To handle this, round the dimensions up to natural block alignment before doing any scaling math. This also fixes the problem we've had of losing small mip levels due to scaling. Test: Aztec Ruins MEC Bug: b/160808198 Bug: angleproject:5552 Change-Id: I194cdac87f7361f85539e78f85069b336ffb1f36 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2634205 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com> |