src


Log

Author Commit Date CI Message
Shahbaz Youssefi 6381d7f1 2019-12-10T23:19:23 Vulkan: Avoid linear search in shader on varying location assignment Glslang wrapper was trying to identify whether the varying is declared in each of the out/in shaders by looping through the macro symbols that need replacement. This change instead adds stage information to PackedVarying assigned when collecting varyings. Glslang wrapper then simply tests the bitfield for the stages of interest. Bug: angleproject:3571 Change-Id: I29614e3e62d7df88e413c1732ac04e24243f167a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1954677 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuly Novikov 3c75d244 2019-12-11T15:52:14 Suppress more dEQP-GLES31.functional.shaders.helper_invocation.* tests Failures discovered when running locally on Pixel 2 with recent OS. Bug: angleproject:4110 Change-Id: I14cde5456a0d7802c60ed3bc771fc371b0834087 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1962541 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 49135f68 2019-12-10T11:27:09 Vulkan: Fix descriptor pool init in presence of atomic counters The descriptor pool was initialized with the number of atomic counter buffers, but we always use 8 storage buffers for atomic counter buffer emulation regardless of how many atomic counter buffers there. This change fixes the descriptor pool initialization by requesting 8 storage buffer descriptors if there are any atomic counter buffers. Bug: angleproject:4199 Change-Id: Ide58c013cba8ac46228dba795a82304b97ee83ac Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1959489 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tim Van Patten <timvp@google.com>
Shahbaz Youssefi e4eb75da 2019-12-06T11:10:47 Vulkan: EXT_gpu_shader5 support: dynamically uniform indexing Bug: angleproject:3569 Change-Id: I5abb7f2889fa5173457497d4156a3dadbcf77640 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1954613 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Ian Elliott fa467885 2019-12-11T06:31:36 Vulkan: Update Linux-specific multisample failures Bug: angleproject:3565 Change-Id: I429268ba679dff924b229d289ced7148c1d86fdb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1961594 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Courtney Goeltzenleuchter 4ad8b55e 2019-12-03T10:07:41 Return valid qualifier after error Using EvqLast for the variable causes us to hit an assert in sh::getQualifierString when we try to print a later error message. Just use the appropriate qualifier regardless that it's not valid for a compute shader, we've output the error. Bug: angleproject:4187 Change-Id: If6fa5dea07d7b6e0d3307485f41d59c5ea7f1c4c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1948525 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
James Darpinian d6053daa 2019-12-05T17:46:23 Remove tabs from source files. WebKit's Subversion repo refuses to commit source files that contain tabs. Bug: angleproject:3439 Change-Id: I0a804bcfa0375a98e19945e20297c90d31106827 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1954410 Commit-Queue: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Hyunchang Kim caa6eccd 2019-10-27T13:46:56 Vulkan: Implement Transform Feedback support via extension Implemented transform feedback extension path. Where VK_EXT_transform_feedback is supported, extension path will be taken over an emulation path. Extension path has advantages in terms of performance. BUG=angleproject:3206 Test: dEQP-GLES3.functional.transform_feedback.* angle_end2end_tests --gtest_filter=TransformFeedbackTest* Change-Id: Ia07c23afb289d9c67073469a97b714ec96f5265a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1882767 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Ian Elliott 9906bccc 2019-12-10T09:59:17 Vulkan: Update bugs for multisample texture failures After additional debugging, new bugs were filed and bug numbers were updated. Bug: angleproject:3565 Bug: angleproject:4197 Bug: angleproject:4212 Bug: angleproject:4213 Change-Id: I7211df7d19280f2fba482394c23a887e6ea5e002 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1959490 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Shahbaz Youssefi 9af3e137 2019-12-05T15:35:33 Vulkan: EXT_gpu_shader5 support: fma Add the fma() builtin function to ESSL. Bug: angleproject:3569 Change-Id: Ic8419b4c117ecdd8b47aa733bf7aff9ee7579bbf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1954484 Reviewed-by: Jiajia Qin <jiajia.qin@intel.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
David Benjamin 351307eb 2019-12-10T10:47:41 Fix potential indexing into an empty vector in ANGLE tests The tests are failing after "Warning: incomplete system info collection" which suggests systemInfo.gpus is empty. Check for that before indexing into the vector; defaulting the active index to zero in https://chromium-review.googlesource.com/c/angle/angle/+/1925031 was not sufficient and the line still needs a bounds check. Bug: chromium:923166, chromium:1032552 Change-Id: Ic9716830403e0dfcfa5d11539537c2a39e0e2386 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1959488 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Commit-Queue: Ian Elliott <ianelliott@google.com>
Brandon Schade 3eaf6294 2019-11-25T18:08:18 Vulkan: Add options to select more device types Add support to set a default device type using existing ANGLE_DEFAULT_PLATFORM environment variable. The valid vulkan options are as follows: vulkan - vulkan with device hardware vulkan-null - vulkan with null device (Mock ICD) swiftshader - vulkan with swiftshader Bug: angleproject:3998 Change-Id: I15f00e8024818fbaf674ca6fcdbcdac5a90cace2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1956140 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
David Benjamin f60da874 2019-11-19T18:45:45 Fix out-of-bounds access bug in ANGLE tests When not filled in, as in Android, activeGPUIndex is -1. This is fine for Android because it doesn't use vendorID, but the function computed vendorID unconditionally without checking for -1. Default activeGPUIndex to 0 instead of -1. Note code still needs to check for systemInfo.gpus.empty(). This caused crashes when _LIBCPP_DEBUG=0 was enabled. Bug: chromium:923166 Change-Id: If4d1dff9553a580fd92bc0497fc092789d07ed93 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1925031 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Jonah Ryan-Davis 6e4004dd 2019-12-06T14:41:17 Add metal display type to angle_deqp_tests Adds --deqp-egl-display-type=angle-metal for running the deqp tests on Mac. Note: does not add any test suppressions for metal. Bug: angleproject:2634 Change-Id: I8f8d3a83cf93a5b930b05af9f0075a9ce435823a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1954612 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Shahbaz Youssefi 27c89d2b 2019-11-25T10:22:01 Vulkan: fix BufferVk::map() synchronization 4398b2b6a2ac13034dff249d8c049c4047b5fed2 made finishToSerial() in BufferVk::map() conditional to whether the serial is in use to work around a performance regression. Notes: - Prior to 087f1384f233792921d34c0ca5b5a90fac75b070, finishToSerial already did that, but that check was inadvertently removed. - finishToSerial waits for the smallest serial that's bigger than or equal to the requested serial. - The flush() call in BufferVk::map() was conditional to whether the serial is in use, but it really meant to check whether the buffer has pending commands in the graph. The end result is that there was an unnecessary flush in BufferVk::map() if we had to wait for a previous serial to finish. This change makes the flush conditional to whether the buffer has pending commands in the graph, and the finishToSerial call to whether the serial is not yet finished. Bug: angleproject:3994 Change-Id: Idca436ef2439bcc8c59396a07b2591c1dfadd669 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1932341 Reviewed-by: Brandon Schade <b.schade@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Xinyi He 36ab960e 2019-12-04T14:13:05 Vulkan: Resize the result vector in EGLChooseConfigTest end2end test Resize the defaultConfigs vector to its actual size to avoid using nullptr elements to get attributes. BUG=angleproject:4195 Change-Id: I3cbad9ee8c2c9faeaa30f72a04cf2c071f79db19 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1949985 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Ian Elliott 92183a26 2019-12-06T11:27:33 Vulkan: Latest Intel driver fixes 2-sample standard positions Update the expectations file to expect these to pass on all Vulkan drivers now. Bug: angleproject:4198 Change-Id: I38982db1e23706f0063795757dfe1d8c8c45294a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1955697 Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Ian Elliott c6458072 2019-12-05T11:45:10 Fix multisample renderbuffer compliance (e.g. 3->4 samples) This change ensures that the following spec language is correctly implemented: the resulting value for RENDERBUFFER_SAMPLES is guaranteed to be greater than or equal to samples and no more than the next larger sample count supported by the implementation. For example, if 2, 4, and 8 samples are supported, and if 5 samples are requested, ANGLE should use 8 samples, and return 8 when GL_RENDERBUFFER_SAMPLES is queried. Note: There is a known problem with NVIDIA OpenGL driver that causes another test to be expected to fail. Bug: angleproject:2222 Bug: angleproject:4196 Change-Id: I28921badf9568427799b0af347198b5df06c2aaa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1954444 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Ian Elliott <ianelliott@google.com>
Jonah Ryan-Davis 63c15519 2019-12-05T12:59:13 Also use GL_RENDERER to determine vendorID ~10% or more Linux users* do not have AMD/ATI in the GL_VENDOR, only in GL_RENDERER. Our heuristics only checked GL_VENDOR, so this CL adds GL_RENDERER to the string being checked to find the vendor ID. (*According to https://feedback.wildfiregames.com/report/opengl/feature/GL_VENDOR) Bug: angleproject:4204 Change-Id: Ie89080b4431fdf02a4ca09709973ea3f271a3e84 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1953486 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Jamie Madill b92ec244 2019-12-06T15:08:54 Revert "Re-land "Add new test runner harness."" This reverts commit e20560faf1de86c01198143ef7733a12a098a90b. Reason for revert: Now fails on Linux CFI and also is a bit flaky. Original change's description: > Re-land "Add new test runner harness." > > Re-land changes: > > * Unit test is suppressed in ASAN > * --deqp-case is fixed > * Debug layer errors should correctly work with failure expectations > > Original message: > > The ANGLE test harness is a harness around GoogleTest that provides > functionality similar to the Chromium test harness. It supports: > > * splitting a test set into shards > * catching and reporting crashes and timeouts > * outputting to the Chromium JSON test results format > * multi-process execution > > Unit tests are added in test_utils_unittest.cpp. > > Bug: angleproject:3162 > Change-Id: I841f2b5dfe51f7f44dac68324bdf6afd418b8bfb > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1948240 > Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> > Reviewed-by: Yuly Novikov <ynovikov@chromium.org> > Commit-Queue: Jamie Madill <jmadill@chromium.org> TBR=ynovikov@chromium.org,ianelliott@google.com,jonahr@google.com,jmadill@chromium.org Change-Id: Ibfd65b8b18ead3a232abb6cb75fd6489b0ff5f38 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:3162 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1954570 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jonah Ryan-Davis 11e6944e 2019-12-05T13:12:10 Linux AMD crash when src blit region outside framebuffer Linux AMD has a crash on an assert in the mesa driver that the source rectangle for blitFramebuffer be inside the framebuffer. Add Linux AMD to the existing workaround for this case. Note: this will duplicate some work on Linux AMD if the blit call is outside the framebuffer and also very large (the adjustSrcDstRegionBlitFramebuffer workaround) Bug: 1014370 Change-Id: I1afd1c92ab07dba6814d6b87ff7c3c19a19bdc0e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1953487 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Ian Elliott 4576f1d0 2019-12-05T10:10:48 Vulkan: Implement multisample textures This functionality is exercised by running angle_deqp_gles31_tests with the following sets of command arguments: --gtest_filter=dEQP.GLES31/functional_texture_multisample* --use-angle=vulkan --gtest_filter=dEQP.GLES31/functional_state_query_texture_level_texture_2d_multisample* --use-angle=vulkan --gtest_filter=dEQP.GLES31/functional_state_query_texture_texture_2d_multisample_texture_immutable* --use-angle=vulkan The following are some high-level design notes: - Texture::setStorageMultisample() handles converting the "requested number of samples" to the actual number of samples used (e.g. converting 3 to 4), supported by the underlying back-end). The actual number used is stored in gl::TextureState::mImageDescs, for use by other GLES commands. - ANGLE uses the Vulkan standard sample locations/positions. If the underlying Vulkan driver's VkPhysicalDeviceLimits::standardSampleLocations is false, ANGLE limits itself to GLES 2.0 (i.e. before GLES 3.0 which adds multisample renderbuffers). - The Vulkan specification currently doesn't support ANGLE providing support for GLES 1-sample textures, because of the following Vulkan specification statement: - If the image was created with VkImageCreateInfo::samples equal to VK_SAMPLE_COUNT_1_BIT, the instruction must: have MS = 0. - At least one Vulkan driver returns different VkPhysicalDeviceLimits::*SampleCounts for different formats. Because of this, ANGLE does a logical-AND of all values in order to only support the commonly-available numbers of samples. The detailed design document is located at: https://docs.google.com/document/d/1NiM8gAR74iGGXGTE6IP1ChdDUZjhtXRuJdtEp_wGFEM/edit?usp=sharing Bug: angleproject:3565 Bug: angleproject:4103 Bug: angleproject:4104 Bug: angleproject:4196 Bug: angleproject:4197 Bug: angleproject:4198 Change-Id: I28921badf9568427799b0af347198b5df06c2db0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1919982 Commit-Queue: Ian Elliott <ianelliott@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi d68bf3e2 2019-12-04T12:30:56 Fix image/sampler uniform range in presence of atomic counters The change that introduced images to the front-end placed them at the end of the uniforms list, so the loop that was calculating the image range was starting from the end of that list. The change that introduced atomic counters to the front-end placed them at the end of the uniforms list too, but the image range loop was not adjusted to take this fact into account (neither was the sampler range loop for that matter). If a shader used both images and atomic counter buffers, the image range was calculated as empty. Similar issues would arise if the shader used both samplers and atomic counters. A test is added where a shader has a default uniform, a UBO, an SSBO, an image and an atomic counter, to make sure any combination of these resources doesn't result in a bug. Bug: angleproject:4190 Change-Id: I7818ee5258dd964215a18acfd7c3d6515b61c595 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1950655 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Shahbaz Youssefi 6e532b8c 2019-12-05T11:16:16 Fix compute shared memory size validation When a struct was involved, the required size for each field was added up, but also multiplied by its array size. However, when calculating the field size, the array size was already multipled in. This resulted in the calculated size to be larger than it actually is, resulting in failures in KHR-GLES31.core.compute_shader.shared-max. Bug: angleproject:4173 Change-Id: I900c17fa65decdeb20c3651c3342295fed2f7c61 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1953483 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 795a3559 2019-12-03T11:31:18 Vulkan: EXT_gpu_shader5 support: precise The precise keyword is used in tessellation shaders but introduced in this extension. EXT_gpu_shader5 introduces a handful of features to shaders. This change only implements the `precise` keyword. Bug: angleproject:3569 Change-Id: I2252b79098eb8ba2d2faa040d7eaed7548b7051e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1939851 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill e20560fa 2019-12-04T13:18:36 Re-land "Add new test runner harness." Re-land changes: * Unit test is suppressed in ASAN * --deqp-case is fixed * Debug layer errors should correctly work with failure expectations Original message: The ANGLE test harness is a harness around GoogleTest that provides functionality similar to the Chromium test harness. It supports: * splitting a test set into shards * catching and reporting crashes and timeouts * outputting to the Chromium JSON test results format * multi-process execution Unit tests are added in test_utils_unittest.cpp. Bug: angleproject:3162 Change-Id: I841f2b5dfe51f7f44dac68324bdf6afd418b8bfb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1948240 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi af52f9c6 2019-12-03T14:11:17 Fix tests checking for major version > 3 The tests meant to do getClientMajorVersion() >= 3, but in a few locations accidentally did > 3. Bug: angleproject:3569 Change-Id: Ie69898348982c6aae7dac265a18229c257dbfbda Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1947458 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Ian Elliott 5f857839 2019-12-04T15:30:50 Improve current multisampled renderbuffer/texture support This is split off from a change to implement multisampled textures for the Vulkan back-end, and will come before that change. The changes include: - Make a common utility rx::GetSamplePosition() function. D3D11 and Vulkan use the same standard sample positions/locations for 1, 2, 4, 8, and 16 samples. The D3D11 back-end has a utility function for this, which is being moved to a common location--for use by both the D3D11 and Vulkan back-ends. - Texture::setStorageMultisample() handles converting the "requested number of samples" to the actual number of samples used (e.g. converting 3 to 4), supported by the underlying back-end). The actual number used is stored in gl::TextureState::mImageDescs, for use by other GLES commands. - Change some end2end tests to not make assumptions about the supported number of samples, but to properly query what is supported. Bug: angleproject:3565 Bug: angleproject:4196 Change-Id: I1dc12fedd0f8fb4975f90d87486e443b069b7141 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1948535 Commit-Queue: Ian Elliott <ianelliott@google.com> Reviewed-by: Ian Elliott <ianelliott@google.com>
Jamie Madill e3c25715 2019-12-03T14:08:36 gn: Minor improvements. Renaming "all" targets to reduce duplication. Also add libGLESv1_CM to "angle". And remove "shader_translator" since we already had "angle_shader_translator". An attempt to work around "invalid COFF sections" error that is popping up on the MSVC try bots. Bug: None Change-Id: I105aa5e59f67173643a3a2071b2aff345b5a6135 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1947457 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi fab10c23 2019-12-04T11:34:42 Vulkan: Optimize unused uniform cleanup in glslang wrapper Bug: angleproject:3803 Change-Id: Ib260c86c68e5b11deaec8658cd9768af9b44e086 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1949629 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi c3f0352d 2019-12-04T12:13:00 Re-enable atomic counter tests on !windows There is a bug that prevents us from running these tests on the windows bots. This change enables them on other platforms so we don't lose coverage. Bug: angleproject:3738 Change-Id: I9b546c3223499af88b347f8a01be8edb245c19a7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1950654 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 61c6aecc 2019-11-28T14:30:18 Vulkan: Fold read access into write flags on buffer writes This could lead to a subtle bug: Say we use a buffer as a storage buffer and write to it. We then must issue a memory barrier before using it as a uniform buffer. However we would set the SHADER_READ bit as a read mask on a storage buffer access. This seems like it could lead to a missing barrier. Bug: angleproject:4178 Change-Id: I486002739b7fb000ffacc0a1e996784b7875e7ba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1943034 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
shrekshao a654d351 2019-12-02T18:12:24 Turn on fboRenderMipmap for D3D11 Bug: 1023747 Change-Id: I8ca320432aad663e2a6d70f494692df518376258 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1947710 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shrek Shao <shrekshao@google.com>
Courtney Goeltzenleuchter b40c65ce 2019-12-03T10:12:34 Split out core.compute_shader expectations The failures have been triaged and split into more specific bugs. Bug: angleproject:3601 Change-Id: Icb262a047bba78a11d710e479ad659a9fa1caf1a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1948524 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Tim Van Patten <timvp@google.com>
Courtney Goeltzenleuchter 33a00efd 2019-11-27T09:21:45 Add Compute Shared Memory Size Validation Add tracking of shared memory declarations in compute shaders. Test:   angle_deqp_gles31_tests --gtest_filter=dEQP.GLES31/functional_debug_negative_coverage_callbacks_compute_exceed_shared_memory_size_limit Bug: 4173 Change-Id: If2a86d467a82f73fa5b2ee0ced752701acfe1872 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1934653 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tom Anderson 5f3456e3 2019-12-03T14:16:19 Expose GL_ARB_sync for GL BUG=chromium:1028799 R=jonahr CC=vasilyt Change-Id: Id17c4061b206953b1e904bf7938cb371612e33fd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1948534 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Shahbaz Youssefi 249cb200 2019-12-03T11:10:06 Translator: Rename TIntermInvariantDeclaration to ..GlobalQualifier.. This is to support the upcoming `precise` keyword. Bug: angleproject:3569 Change-Id: Idbcc8fd6f261757dbbf81b381e7a2dae938d8101 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1947451 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi a5045ac3 2019-12-03T11:02:17 glslang.l: refactor extension checks Bug: angleproject:3569 Change-Id: I7cbbaa4d1cdd4dd4268f28e06c907958cff9b4e8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1947450 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 5efb36b9 2019-11-25T16:14:55 Automatically call flex/bison if necessary ANGLE translator's parser code generation is changed to use the binaries of flex/bison stored in the cloud. scripts/run_code_generation.py now automatically runs these files if the input files change. Bug: angleproject:3419 Change-Id: Icce4247f93b27baf8ee12dbb16112fa2cc98c111 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1940572 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 62a93045 2019-12-02T15:19:15 Vulkan: Fix WaW same-layout image transitions These transitions were incorrectly handled by an execution barrier alone, but that's not per spec. Write-after-write hazards always need a memory barrier. Bug: angleproject:3347 Bug: angleproject:3554 Change-Id: Id2d2579888e0b59e589fcdd52416363f2cf5cf97 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1943546 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 8f31872c 2019-12-03T18:34:52 Revert "Add new test runner harness." This reverts commit fb40d231c3e2ee7c38f8445ef5defc0ab0f5f15d. Reason for revert: Has a bug with the ASan build and also has a few bugs with ANGLE standalone test expectations an filter. Bug: chromium:1030192 Bug: angleproject:4193 Original change's description: > Add new test runner harness. > > The ANGLE test harness is a harness around GoogleTest that provides > functionality similar to the Chromium test harness. It supports: > > * splitting a test set into shards > * catching and reporting crashes and timeouts > * outputting to the Chromium JSON test results format > * multi-process execution > > Unit tests are added in test_utils_unittest.cpp. > > Bug: angleproject:3162 > Change-Id: Idb15f113de8eb32db12bc93542de93b08d7c1447 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1478016 > Commit-Queue: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Yuly Novikov <ynovikov@chromium.org> TBR=ynovikov@chromium.org,jonahr@google.com,jmadill@chromium.org Change-Id: I647e747571784b1ca7c1d0687193c70a63eb08d1 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:3162 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1947456 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang f0f46772 2019-12-03T10:21:58 D3D9: Log the exact error code generated by D3D9 device creation. BUG=1029091 Change-Id: I552627dd18d0d5b48c02bff12c9368c724a65f54 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1947448 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Geoff Lang ff83dabf 2019-12-03T10:10:53 Skip flaky BlendMinMaxTest.RGBA16F/ES2_Metal. BUG=angleproject:4185 Change-Id: I236d4372ab22e9083d00cf13fa2ad682a1d42f14 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1947447 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Ethan Lee 7e753cb7 2019-12-03T10:05:24 Fix UWP build Bug: angleproject:4186 Change-Id: I4fcfe2553f209e191d88058fe30d31c88a61f69f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1947446 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang e4ac2ff3 2019-11-28T16:30:15 GL: Make GL_EXT_texture_format_BGRA8888 enableable. Disable returning BGRA as an implementation read format unless GL_EXT_texture_format_BGRA8888 is exposed. WebGL doesn't support this extension and returning BGRA as an implementation read format is invalid. TEST=functional/gles3/negativebufferapi.html TEST=functional/gles3/integerstatequery.html BUG=angleproject:4179 Change-Id: I313721f09da0e455128b88b129bd34338d47af73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1943407 Reviewed-by: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Jamie Madill c4faeb79 2019-11-25T10:33:52 Use SwiftShader-based ICD generation. We moved this into the SwiftShader repo proper in: https://swiftshader-review.googlesource.com/c/SwiftShader/+/38491 We can remove ANGLE's custom rules. Also removes the layer generation script which was now unused. Also cleans up the Vulkan back-end BUILD.gn a bit. Bug: dawn:283 Change-Id: I490e8e8fc6fcadec58aca53a157ce7c4a47def3c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1932340 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill fb40d231 2019-12-02T16:39:18 Add new test runner harness. The ANGLE test harness is a harness around GoogleTest that provides functionality similar to the Chromium test harness. It supports: * splitting a test set into shards * catching and reporting crashes and timeouts * outputting to the Chromium JSON test results format * multi-process execution Unit tests are added in test_utils_unittest.cpp. Bug: angleproject:3162 Change-Id: Idb15f113de8eb32db12bc93542de93b08d7c1447 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1478016 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Shahbaz Youssefi 9601a548 2019-11-23T23:44:52 Vulkan: implement external semaphore barriers glWaitSemaphoreEXT and glSignalSemaphoreEXT functions optionally request buffer and image barriers to be performed by the implementation. If any barriers are present, a single global memory barrier is inserted to take care of memory accesses. In both functions, buffer and image memory barriers are used to perform queue ownership transfers to ANGLE's queue (glWaitSemaphoreEXT) or the EXTERNAL queue (glSignalSemaphoreEXT). In glWaitSemaphoreEXT, the given layouts are information regarding how the external entity (the caller) has modified the images' layouts, and is used to update ANGLE's internal state tracking. Bug: angleproject:3289 Bug: 1026673 Change-Id: Ic478a8813df727c89413c8ae2adf42b5c1d06069 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1933016 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Michael Spang <spang@chromium.org>
Shahbaz Youssefi 190d9a81 2019-11-29T09:57:40 Fix RenderingLimitToDefaultFBOSizeWithNoAttachments test MAX_DRAW_BUFFERS has a minimum value of 4. This test was unconditionally using 6 draw buffers. Bug: angleproject:4092 Bug: angleproject:4180 Change-Id: I069874a6402da1cb007bf9504e68b9910951cf63 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1944527 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Alexis Hétu <sugoi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 745999a9 2019-11-19T12:59:02 Add test for multithreaded shared-context resource The test does this: 1. Context 1: Read Texture 1 and draw into Framebuffer 1 2. Context 2: Read Texture 1 and draw into Framebuffer 2 3. Context 1: Delete Framebuffer 1 4. Context 1: Flush 5. Context 2: Modify Texture 1 Issue is Texture 1's mCurrentReadingNodes contains one node from each context's command graph, one of which is deleted at step 4. At step 5, a dependency is added from both nodes (one already deleted) to a new node, causing use-after-free. Bug: angleproject:4130 Change-Id: I06720aec20d0b49114937f1cd9b193a4f1df9d8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1924790 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Geoff Lang 47a1fda2 2019-12-02T09:23:45 D3D: Log why a renderer fails to initialize. BUG=1029091 Change-Id: I80a69f5d5294522d7229976f41ba5a61a6c2724d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1945891 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Tim Van Patten ca1b0fb8 2019-11-25T12:13:01 VULKAN: dEQP-GLES31.functional.debug.negative_coverage.get_error.buffer.framebuffer_texture2d Add the following SWANGLE test failure to deqp_gles31_test_expectations.txt: dEQP-GLES31.functional.debug.negative_coverage.get_error.buffer.framebuffer_texture2d Bug: angleproject:3590 Test: None Change-Id: I0f234ea2d7a90e2b95220b152cb0da3822df1ef3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1933764 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Tobin Ehlis <tobine@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Xinyi He 19f9f414 2019-11-29T10:30:25 Vulkan: Textures incorrect on Android maps with Vulkan Backend The issue was fixed, but adding a regression test to avoid it again. glMemoryBarrier inserts a memory barrier and breaks the submission order, which causes the copyBufferToImage happens before copyImageToBuffer and image corruption. This test fails on commit 052167b, and can pass on the latest build. Bug: angleproject:4074 Change-Id: Icc42dd7b2ba167815b223085ce933682654ce760 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1943848 Commit-Queue: Ian Elliott <ianelliott@google.com> Reviewed-by: Ian Elliott <ianelliott@google.com>
Antonio Maiorano ea0dcd4b 2019-11-29T15:51:14 Use Vulkan rectangle lines to emulate OpenGL multisampled lines SwiftShader recently added support for multisampled Bresenham lines to be spec compliant with Vulkan, so now Angle must explicitly request non-Bresenham lines when multisampling is enabled. Bug: angleproject:4087 Change-Id: Ie854746144894e3e0a68622e985cbd4ba7781ac3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1944529 Commit-Queue: Antonio Maiorano <amaiorano@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jonah Ryan-Davis bc82fb14 2019-11-28T16:58:19 Suppress failing end2end tests for ASAN builds GLSLTest_ES31.StructArraySample and ComputeShaderTest.DispatchComputeIndirect both hit stack-buffer-overflow errors with ASAN enabled, using the vulkan backend. Right now ASAN is only tested on Mac, so these are only hit when Mac is using swiftshader-vulkan. Bug: 1029378 Change-Id: Ie590f73c29be44f683fd47fe4da139e1b5f96289 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1943408 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Shahbaz Youssefi 82219d28 2019-11-26T10:17:11 Vulkan: fix alpha values in convert vertex shader When reading vertex attributes, GLES requires the y and z components to be filled with 0 if missing, and the alpha channel to be filled with 1.0 for float types and 1 for integer types. At the same time, this change reduces the number of variations in this shader. Bug: angleproject:3192 Change-Id: I1bdf491952c296962fa9160f2d29d415eb3d570d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1936708 Reviewed-by: Jaedon Lee <jaedon1.lee@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jonah Ryan-Davis 5afd5ec6 2019-10-25T10:53:40 Vulkan support for MacOS (using SwiftShader) Created a new WindowSurface/Display for MacOS/Vulkan, along with some GN changes to get it working. Bug: 1015454 Change-Id: I3f7a12f173795efe598856c702ce53b1e50831eb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1880163 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 39f3ccda 2019-11-28T17:45:01 Suppress SimpleStateChange failure on Metal NVIDIA BUG=angleproject:4177 TBR=geofflang@chromium.org Change-Id: I642e4bd3650b5b6beb6d9b18106d787c5dbc14f6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1942348 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Jamie Madill fc3ec57d 2019-11-27T21:43:22 Reland "Vulkan: Accelerate Texture PBO updates" This reverts commit 27d3c9399925d23726880ef910b9068fa39307cf. Reason for revert: Investigation is unable to reproduce the regresion. Shows up on the perf CI. Original change's description: > Revert "Vulkan: Accelerate Texture PBO updates" > > This reverts commit efb45edaefc07fc7120ebbde83bbc84876afda1a. > > Reason for revert: Significant perf regression on several benchmarks. > See bug for more details. > > Bug: chromium:1027098 > > Original change's description: > > Vulkan: Accelerate Texture PBO updates > > > > If the format of the image and the PBO match, > > use a vkCmdCopyBufferToImage transfer operation. > > > > Test: angle_end2end_tests --gtest_filter=*PBOCompressedSubImage* > > angle_end2end_tests --gtest_filter=*PBOWithMultipleDraws* > > dEQP-GLES3.functional.texture.specification.tex*image*d_pbo* > > Bug: angleproject:3777 > > Change-Id: I3f271024a635be113202a16f8893a199c194172d > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1906203 > > Reviewed-by: Cody Northrop <cnorthrop@google.com> > > Commit-Queue: Mohan Maiya <m.maiya@samsung.com> > > TBR=cnorthrop@google.com,syoussefi@chromium.org,jmadill@chromium.org,m.maiya@samsung.com,b.schade@samsung.com > > # Not skipping CQ checks because original CL landed > 1 day ago. > > Bug: angleproject:3777 > Change-Id: I774655962e9ab5a866b9324002fb8edae8550834 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1939927 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Jamie Madill <jmadill@chromium.org> TBR=cnorthrop@google.com,syoussefi@chromium.org,jmadill@chromium.org,m.maiya@samsung.com,b.schade@samsung.com Change-Id: I8560a2e70de230eac3256a1df5eb2ecaa6f26bcf No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1027098, angleproject:3777 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1939852 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
James Darpinian c4f889fb 2019-11-25T16:53:04 Fix format/internalformat confusion Bug: angleproject:4084 Change-Id: I24a184b78bef2994a3045b141ecd72a49d66cfdf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1934890 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Shahbaz Youssefi 232d009d 2019-11-27T10:12:23 Fix string literal comparison in validation String literals shouldn't be compared by pointer, especially if the literal is declared in a header (so the two pointers can come from different translation units, because the string literal might have a different copy in each). Use strcmp instead. Bug: angleproject:4175 Change-Id: I6002ccb185f48928b67ce8a7b3508e427761a8c3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1940568 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2ed71c81 2019-11-27T11:42:08 Vulkan: Isolate DisplayVk.h from Display.cpp. With this change we no longer can access Vulkan (or Volk) headers in the ANGLE front-end. The only header that needs to be visible is the new "DisplayVk_api.h". This will simplify a bit of Volk integration. Also reworks how the entry points and headers are exposed to the tests. Bug: angleproject:3740 Change-Id: Ic1434f304619427ed6ad6370bc090ceb7858df94 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1936707 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com>
Jonah Ryan-Davis 2a72553d 2019-11-25T14:22:50 Add EGLSurfaceTest.ResizeWindowWithDraw This test will ensure the backbuffer is also properly resized when the window is resized. Bug: angleproject:4167 Change-Id: I1d73f07379b4f05e453520e22ef1369f51182197 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1934311 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill ea1c2400 2019-11-27T10:49:57 Suppress -Wsizeof-array-div in dEQP. Until the upstream bug is fixed. Tracked in https://gitlab.khronos.org/Tracker/vk-gl-cts/issues/2127 Bug: angleproject:4176 Change-Id: I094735e1153c83439db54b43545297466ef2e2c7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1940570 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Le Hoang Quyen b6148c3a 2019-11-21T10:13:44 Metal: re-enable end2end tests Bug: angleproject:4157 Change-Id: Ia7e29c32696c84556e9ea527fc48b086b1bc4766 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1940007 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi 74d4bf98 2019-11-26T15:34:11 Remove !empty() assert on FastVector::data() The user of the API is allowed to call data() on an empty vector. Bug: 1026414 Change-Id: I41ea65c50b94115ace7930d75cd8f14782548d6c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1937807 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 27d3c939 2019-11-27T11:39:41 Revert "Vulkan: Accelerate Texture PBO updates" This reverts commit efb45edaefc07fc7120ebbde83bbc84876afda1a. Reason for revert: Significant perf regression on several benchmarks. See bug for more details. Bug: chromium:1027098 Original change's description: > Vulkan: Accelerate Texture PBO updates > > If the format of the image and the PBO match, > use a vkCmdCopyBufferToImage transfer operation. > > Test: angle_end2end_tests --gtest_filter=*PBOCompressedSubImage* > angle_end2end_tests --gtest_filter=*PBOWithMultipleDraws* > dEQP-GLES3.functional.texture.specification.tex*image*d_pbo* > Bug: angleproject:3777 > Change-Id: I3f271024a635be113202a16f8893a199c194172d > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1906203 > Reviewed-by: Cody Northrop <cnorthrop@google.com> > Commit-Queue: Mohan Maiya <m.maiya@samsung.com> TBR=cnorthrop@google.com,syoussefi@chromium.org,jmadill@chromium.org,m.maiya@samsung.com,b.schade@samsung.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: angleproject:3777 Change-Id: I774655962e9ab5a866b9324002fb8edae8550834 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1939927 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi f8482560 2019-11-26T15:47:48 Don't use too many color attachments in clear test GL_MAX_COLOR_ATTACHMENTS has a minimum value of 4. The test was unconditionally using 5 attachments. Bug: angleproject:4172 Change-Id: I793c297b50e3fdc54f75e2c5608508279028359f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1937808 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Mohan Maiya c373dfd8 2019-11-22T08:48:22 Vulkan : Handle dirty state correctly when there are muiltiple VAOs If vertex array object binding is changed, we need to update the pipeline cache with the attribute information of the newly bound VAO. We cache the strides of attributes because emulated attributes will have strides that don't match the stride info cached in its binding struct. Also added a test case that switches between multiple VAOs. Bug: angleproject:4127 Test: angle_end2end_tests.exe --gtest_filter=SimpleStateChangeTestES31.MultipleVertexArrayObjectRendering Change-Id: I4f23aec33d5aa5988baa41f3c63db5534daf75ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1917453 Reviewed-by: Tobin Ehlis <tobine@google.com> Commit-Queue: Tobin Ehlis <tobine@google.com>
Shahbaz Youssefi 88752889 2019-11-20T14:09:52 Vulkan: Fix barriers w.r.t sampled->storage image update df415528411f97454e765ff6a83ed1cbc90a7d13 implemented a feature where images are not created with the storage flag until needed. This is a necessary optimization. There were a few misuses of the BufferHelper::onRead/Write helpers that set up the appropriate barriers that this change fixes. Bug: angleproject:3816 Change-Id: I7e62d98b7325f938152a1972f4ebee083ed319c2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1924989 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Xinyi He <xinyi.he@arm.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Sunny Sun <sunny.sun@arm.com>
Shahbaz Youssefi 5b2740c5 2019-11-22T11:55:25 Vulkan: Remove unnecessary barrier in image -> buffer copy There was already a changeLayout call that inserted an imageBarrier. A TRANSFER_SRC to TRANSFER_SRC barrier was unnecessarily (and manually) added afterwards that was pointless. Bug: angleproject:3816 Change-Id: I8177487fc843fa5869c7b5063c74602933a81d58 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1929270 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Sunny Sun <sunny.sun@arm.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Xinyi He a57c1fb6 2019-11-26T15:08:26 Vulkan: Large builtins overflow during string construction in glslang It is fixed in the glslang that the string size expands to 200, so remove the workaround in the commit 4c7db77. Bug: angleproject:4120 Change-Id: Iacc17259a68b3c92763c309a61b7fd87b130edc6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1936074 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com>
Le Hoang Quyen 4cef8a49 2019-11-26T00:04:00 Metal: Support depthRange near > far Metal doesn't natively support near > far depthRange, need to emulate it via shader. Bug: angleproject:2634 Change-Id: I1885cad3467478a0dcc4b25b7d41f980b9e03103 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1919282 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Courtney Goeltzenleuchter 4b53273c 2019-11-21T09:42:42 Vulkan: Fix validation issue with swiftshader Need to check that a VBO is actually bound (or rather no client arrays are bound) and return appropriate error. Test: angle_deqp_khr_gles31 --use-angle=swiftshader --gtest_filter=dEQP.KHR_GLES31/core_draw_indirect_negativenoVBOarrays Bug: angleproject:3564 Change-Id: Ic200993f9afcc3b43706ac0b509b10fa905857f7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1922303 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com>
Ethan Lee a825eb70 2019-11-21T11:37:17 Implement BaseVertex draw calls for Vulkan, OpenGL, NULL contexts. This adds support for the following functions: - glDrawElementsBaseVertex - glDrawRangeElementsBaseVertex - glDrawElementsInstancedBaseVertex Bug: angleproject:3582 Bug: angleproject:3402 Bug: angleproject:4166 Change-Id: I83770f62e3a918c0965fd4ca8c7d9e598b8b4154 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1929083 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Le Hoang Quyen e5b474c6 2019-11-19T23:04:00 Metal: support ANGLE_instance_arrays/EXT_instance_arrays Also added TRIANGLE_FAN & LINE_LOOP instanced draws test cases. Bug: angleproject:2634 Change-Id: I84740a7221ab49710cf23767c81fa2d303aad364 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1919280 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Cody Northrop 6430e5e0 2019-11-20T19:56:10 Enable frame capture on Android This CL gets capture/replay working on Android again. * Updates where Android frame captures are written * Uses debug system properties to prime Android environment variables * Adds a configurable target Context to the capture_replay sample * Updates capture/replay documentation for Android Bug: angleproject:4036 Test: Captured TRex on Android, replayed on Linux Change-Id: I94b4f6dc77468cd179b9d884b4dcd4afa56bd28c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1928056 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
shrekshao fb1c2fe8 2019-11-13T11:10:39 EXT_texture_norm16 readpixels fix Adding validation logic for RGBA16 readpixels. Change readPixels format from UNSIGNED_BYTE to UNSIGNED_SHORT in the test. FYI: According to https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_texture_norm16.txt ReadPixels format and type used during CopyTex* are limited to RGBA Bug: 1024387, 1000354, angleproject:1365, angleproject:4089 Change-Id: I70517f255fe335f60e55bdf15f7ebf82e3de0800 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1914127 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shrek Shao <shrekshao@google.com>
Courtney Goeltzenleuchter f3d35f8f 2019-11-22T14:24:52 Suppress flaky failure with Win7/NVIDIA/D3D11 Seeing intermittent failure on this test only on Win7/NVIDIA/D3D11. Suppress for now. Bug: angleproject:4163 Change-Id: Idfa44516a194dcd5710622d11801ce089c1e829d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1931338 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Xinyi He 4c7db77e 2019-10-31T15:42:31 Vulkan: Set limitation on maxComputeWorkGroupCount According to Table 20.45 and Chapter 17 in the ES 3.1 spec, MAX_COMPUTE_WORK_GROUP_COUNT is get as a GLint by using GetIntegeri_v. However, it is an unsigned integer in the Vulkan. It needs to set limitation on maxComputeWorkGroupCount[] during translating. 1. Change the data type to GLint stored in Caps. 2. Ensure that the limitation is set during initialization. 3. Add workaround for angleproject:4120 Bug: angleproject:4066 Change-Id: I1659ba1d560e30b9599cace0feeab8a18890c3ff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1890586 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Ethan Lee 37ba927e 2019-11-20T01:51:12 UWP: Implement GetPathSeparatorForEnvironmentVar Bug: angleproject:4142 Change-Id: Idb5e1b540d9ac7ab802357f247b41a6546173a35 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1925254 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tim Van Patten c5c096aa 2019-11-15T15:36:16 Enable Compute Shader Program Input Queries Compute shader inputs were not being tracked in the Shader or Program states, causing program interface queries to fail. This change treats compute shader inputs (all built-ins) as Attributes and pipes them through from the Compiler to the Program to enable input queries. While compute shader inputs are not technically attributes (or varyings), the ANGLE code understands and handles attributes and a program can never have both a vertex and compute shader, so there can't be any conflicts. The naming of these variable lists should probabaly be revisited at some point to better handle these different use-cases. Bug: angleproject:3596 Test: dEQP-GLES31.functional.program_interface_query.program_input.resource_list.compute.empty Change-Id: Ie52cd59041868cfdb5d3d759bb4ec53c8d5b38d5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1919557 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Tim Van Patten <timvp@google.com>
Le Hoang Quyen 6fcc0bb8 2019-11-21T01:19:40 Metal: Re-add end2end test configs (running test is still disabled) angle_test_instantiate.cpp & angle_test_instantiate_apple.mm: - Disabled metal platform selection on pre-10.13 mac devices for Bug: angleproject:4153 Explicitly disabled tests on metal: - DifferentStencilMasksTest.DrawWithDifferentMask - PointSpritesTest.PointSizeAboveMaxIsClamped - WebGL2ReadOutsideFramebufferTest.CopyTexSubImage3D This requires the crash fix in http://crrev.com/c/1924101 Bug: angleproject:4153 Bug: angleproject:2634 Change-Id: I95046d731a8ba7414cf1a1f4b6f2940282725872 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1926389 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Shahbaz Youssefi 84c074cf 2019-11-20T15:32:44 Vulkan: Simplify AppendToPNextChain use The function is turned into a template to avoid the reinterpret_cast at call sites. Additionally, uses Vulkan's own VkBaseOutStructure instead of a bespoke definition. Bug: angleproject:4027 Change-Id: Ib236d44a12c0363e7e89b9bf2ed5ab8166252730 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1924992 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com>
Le Hoang Quyen 05af7590 2019-11-20T01:04:00 Metal: Fix FramebufferMtl's read-after-delete Due to late verification, ContextMtl might call onFinishedDrawingToFrameBuffer() on a deleted framebuffer object inside syncState() Fix: - Switch to call onStartedDrawingToFrameBuffer() on new FBO instead of calling onFinishedDrawingToFrameBuffer() on old (and possibly deleted) FBO. - Also discard framebuffer only takes effect per render pass. The discard flag will be reset when render pass starts. Bug: angleproject:4144 Change-Id: I7c6c96862892f1c241ce4af3b61862fa4b710a94 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1924101 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
jason 7c95d081 2019-11-12T15:42:43 Fix crash during resizes when using the OpenGL renderer on Windows Partial revert of f06076396afa8585e19e140f4a8b02720ede77e5 Address test failures Guard context reset in DisplayWGL::makeCurrent with !mUseDXGISwapChains BUG=chromium:1004117 Change-Id: I9b6eb7bc83a6e4b1a21fa0703404e41c6090730d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1913314 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Tobin Ehlis 97267272 2019-11-20T15:07:48 Vulkan:Remove exceptions for passing tests These two test groups are now passing so removing from exceptions file: dEQP-GLES31.functional.state_query.integer.max_framebuffer_samples* dEQP-GLES31.functional.state_query.integer.max_uniform_locations* Bug: angleproject:3520 Change-Id: I47634a52d3306202f944dc9548ba44c3dda8fc91 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1924993 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Tobin Ehlis <tobine@google.com>
Brandon Schade b8e748be 2019-11-07T18:00:50 Vulkan: Add an end2end test to log GLES capabilities Logs information listed at: https://opengles.gpuinfo.org/listcapabilities.php in CSV format The list from gpuinfo doesn't include capabilities introduced by extensions Test: angle_end2end_tests.exe --gtest_filter=*PrintGLESCapabilities* Bug: angleproject:4093 Change-Id: I59c82879ee2e3486269aa0cb40e2ee6c6e646ec5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1917443 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jamie Madill 5530b3ff 2019-11-20T17:13:04 Update dEQP KHR-GLES31 expectations. Bug: angleproject:3596 Bug: angleproject:4132 Bug: angleproject:4145 Bug: angleproject:4146 Bug: angleproject:4147 Bug: angleproject:4148 Bug: angleproject:4150 Change-Id: I5495c31f5c2d85a9c3f7d177c53e800f50675354 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1925389 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2ba626dc 2019-11-20T17:13:02 Work around dEQP KHR-GLES31 bug with tess/geom support. dEQP was inadvertendly requiring the presence of these extensions to even run the tests. There's a WIP fix to the dEQP tests and this CL implements that fix as a temporary workaround until we can update dEQP. Fixes several tests in KHR-GLES31.core.constant_expressions and KHR-GLES31.core.shader_macros. They now correctly return unsupported. Bug: angleproject:4143 Change-Id: I110beb2f18fd29f8f02b2ab166cfcfcfae80c2c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1924620 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 10f41ebb 2019-11-19T12:53:36 GN: Make dEQP import libEGL/libGLESv2 as data_deps. This removes the hard link dependency on ANGLE. Allows us to use ANGLE dEQP tests with msan. Otherwise they were complaining about missing shared libraries. Also would eventually let us test ANGLE dEQP tests against a native driver. Was done as a part of investigating SwapBuffers crashes on SwiftShader. Bug: angleproject:4060 Change-Id: I569de15573c8eb7808bd7783f1a514655d1c6422 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1898207 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tobin Ehlis c1776c61 2019-11-13T11:36:35 Vulkan:Add Swiftshader configs Add Swiftshader configs to existing test instantiation macros for all ESX variants. This causes Swiftshader to be used to run end2end tests. Added detection code to know when tests are running on Swiftshader and skipping a number of fails initially. Note that when running ANGLE end2end tests within Chromium build on Win32 bots there were crashes with Swiftshader config for tests that should have been skipped. Due to this, just skipping Swiftshader configs on Win32 for now. Bug: angleproject:4081 Bug: angleproject:4092 Change-Id: I32527a62304c5fad90f645b372edf9411ca2b212 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1914126 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Jonah Ryan-Davis 4193e212 2019-11-20T11:03:09 Clean up dontUseLoopsToInitializeVariables condition This workaround is ported from chrome's dont_use_loops_to_initialize_variables workaround, which is enabled on Qualcomm Adreno devices. Better to check for Qualcomm than !NVIDIA Bug: 784817 Change-Id: I2f8314ca97aeca7fdcea60ef9d2fb9e64f075a32 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1924625 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Brandon Schade efb45eda 2019-09-24T09:23:53 Vulkan: Accelerate Texture PBO updates If the format of the image and the PBO match, use a vkCmdCopyBufferToImage transfer operation. Test: angle_end2end_tests --gtest_filter=*PBOCompressedSubImage* angle_end2end_tests --gtest_filter=*PBOWithMultipleDraws* dEQP-GLES3.functional.texture.specification.tex*image*d_pbo* Bug: angleproject:3777 Change-Id: I3f271024a635be113202a16f8893a199c194172d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1906203 Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Mohan Maiya <m.maiya@samsung.com>
Jonah Ryan-Davis f9c3eaf4 2019-11-19T15:19:04 Add ability to disable all ANGLE features Chrome has a --disable-gpu-driver-bug-workarounds flag that needs to be able to be forwarded to ANGLE Bug: 1016377 Change-Id: Ied6c8656742e25c32d508b8bfe76a902d82bcf93 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1925249 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Courtney Goeltzenleuchter 8392b118 2019-11-20T16:57:08 Revert "Metal: Enable end2end tests." This reverts commit 0bb42e091b77f174632434a05789b2ce632bd902. Reason for revert: https://bugs.chromium.org/p/chromium/issues/detail?id=1026633 Causing failures on Mac bots. Original change's description: > Metal: Enable end2end tests. > > Explicitly disabled tests: > - DifferentStencilMasksTest.DrawWithDifferentMask > - PointSpritesTest.PointSizeAboveMaxIsClamped > - WebGL2ReadOutsideFramebufferTest.CopyTexSubImage3D > > Bug: angleproject:2634 > Change-Id: I76ab450c06d0e1be1e7469a8b9c6497684c3ca54 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1906607 > Commit-Queue: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> TBR=geofflang@chromium.org,jonahr@google.com,jmadill@chromium.org,le.hoang.q@gmail.com Change-Id: Iaa4264834170a49c274f186d3d74f57714c84b32 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:2634 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1926378 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Courtney Goeltzenleuchter 41352a8f 2019-11-19T16:32:45 Update expecatations for Program Pipeline tests Tests that depend on Program Pipeline that had generic bug IDs have been collected under anglebug.com/3570 as the program pipeline work tracker. Bug: angleproject:3570 Change-Id: Ifefd445376f16c48d872eb5abf63bad7d6e4c99a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1925531 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jiawei Shao 0303cf6b 2019-10-30T16:46:38 OpenGL: Port all Intel-related workaround conditions from gpu_driver_bug_list.json This patch ports all the Intel-related shader workarounds defined in gpu_driver_bug_list.json used by Chromium validating command buffer into ANGLE so that they can also take effect in Chromium passthrough command buffer. Bug: 1020467 Bug: 642605 Bug: 403957 Change-Id: I8e4866fc34d5e8f1b2f4dbfa8e526b80249ba166 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1889386 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shahbaz Youssefi b066177a 2019-11-19T15:13:20 Vulkan: Remove duplicate shader variation ConvertVertex's UintToUint and HalfFloatToHalfFloat were generating identical shaders. Bug: angleproject:3802 Change-Id: I8eb2d55debbc5501f191830a2723b02d0d1f0827 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1925248 Reviewed-by: Tim Van Patten <timvp@google.com> Reviewed-by: Hyunchang Kim <hckim.kim@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Le Hoang Quyen 0bb42e09 2019-11-19T23:04:00 Metal: Enable end2end tests. Explicitly disabled tests: - DifferentStencilMasksTest.DrawWithDifferentMask - PointSpritesTest.PointSizeAboveMaxIsClamped - WebGL2ReadOutsideFramebufferTest.CopyTexSubImage3D Bug: angleproject:2634 Change-Id: I76ab450c06d0e1be1e7469a8b9c6497684c3ca54 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1906607 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>