forked from google/angle
-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update merge #1
Merged
Merged
Update merge #1
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Adds the PowerVR VendorID into the accepted vendor list, and prevent basic GL line emulation from being ran on PowerVR hardware as it's not required on those platforms, yet causes CTS failures when enabled. Fixes a variety of line failure tests across OGLES3/3.1 test suites seen on PowerVR hardware. Bug: angleproject:5145 Change-Id: I7383f1c09d026b8d33e6fbda66418c5f8b7f90bd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2462094 Reviewed-by: Geoff Lang <[email protected]> Reviewed-by: Jamie Madill <[email protected]> Commit-Queue: Shahbaz Youssefi <[email protected]>
When releasing buffer/image to external, the necessary barrier was recorded on the "outside render pass command buffer". However, if the resource was used in the current render pass, that render pass should have closed before this, otherwise the barrier was reordered before it which is incorrect. Bug: chromium:1136367 Bug: chromium:1135792 Bug: angleproject:5002 Change-Id: I237d5e6bb46189a4ce61c2f4602e356955cc87a9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468456 Commit-Queue: Shahbaz Youssefi <[email protected]> Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Charlie Lao <[email protected]>
This dramatically speeds up Android shards that use batches of hudreds of tests. Because ANGLE already has the test list, it no longer needs to call GTest with an enourmous gtest_filter. Bug: angleproject:5164 Change-Id: I28fee2f36c50006f2a35a4dcd90f44f8ebe4f78c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468464 Commit-Queue: Jamie Madill <[email protected]> Reviewed-by: Yuly Novikov <[email protected]>
These produce low memory warnings on Quadro when run multi-process. Bug: angleproject:5162 Change-Id: Ibef3a8ea9119d923a538181387c30562d503bcb6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2466782 Commit-Queue: Jamie Madill <[email protected]> Reviewed-by: Yuly Novikov <[email protected]>
Bug: angleproject:5158 Change-Id: I3c29adf36f6f31f23bf662c2d7d6c4d05d8e9028 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2466781 Commit-Queue: Jamie Madill <[email protected]> Reviewed-by: Courtney Goeltzenleuchter <[email protected]> Reviewed-by: Yuly Novikov <[email protected]>
The perFrameWindowSizeQuery feature was enabled for Arm, based on a faulty dEQP test, that says that it is resizing a window on Android, but doesn't actually. The Arm team has verified that this feature is no longer needed for Arm/Mali, and so it is being removed. Bug: b/170733470 Bug: angleproject:5150 Change-Id: I8b9d7cb45983b6bbf8d52d37bf5b237f2c3e4fe4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468176 Reviewed-by: Courtney Goeltzenleuchter <[email protected]> Reviewed-by: Ian Elliott <[email protected]> Commit-Queue: Ian Elliott <[email protected]>
This makes interoperation with Chromium tests easier. For instance when triggering tests with scripts when using sharding. And also using the run/ wrapper scripts instead of run_gtest_angle_test. Bug: angleproject:5158 Change-Id: Ia5b1f94c02a081caf576615175791fff4e0d3fb3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464030 Reviewed-by: Courtney Goeltzenleuchter <[email protected]> Reviewed-by: Yuly Novikov <[email protected]> Commit-Queue: Jamie Madill <[email protected]>
Bug: b/167275320 Bug: angleproject:4836 Change-Id: Iedbe1dfc8562c4c28477bf6a5a298620fcd48a67 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468457 Commit-Queue: Shahbaz Youssefi <[email protected]> Reviewed-by: Charlie Lao <[email protected]> Reviewed-by: Jamie Madill <[email protected]>
clearImmediatelyWithRenderPassOp is removed and the draw path is used for the scissor. That path was added to avoid creating a large number of graphics pipelines due to the scissor state. This is now done by using dynamic state for scissor in the draw path for clear. Running the following dEQP tests without and with dynamic state for scissor: dEQP-GLES3.functional.fragment_ops.depth_stencil.stencil_ops.* the number of graphics pipelines is reduced from 95392 to 16. Bug: angleproject:4617 Bug: angleproject:4836 Change-Id: Ib373d8cd23ca2b67e6fd26aa2a1103f281f7e473 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2463985 Commit-Queue: Shahbaz Youssefi <[email protected]> Reviewed-by: Charlie Lao <[email protected]> Reviewed-by: Jamie Madill <[email protected]>
Bug: b/167275320 Bug: angleproject:4836 Change-Id: Ic5da615931f13e1ce34f486f163d4f28c8af9287 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468458 Commit-Queue: Shahbaz Youssefi <[email protected]> Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Charlie Lao <[email protected]>
gl::DrawBuffersVector was used to hold the clear values, but that didn't have enough space for depth/stencil clear values if MAX draw buffers where used and cleared. The added test in this change exposes the vkCmdClearAttachment Qualcomm bug (previously presumed to affect color clears only) with depth/stencil buffers, so the workaround is expanded to avoid vkCmdClearAttachment entirely. Bug: b/159808300 Change-Id: I27c58d9b534bce0bdd27cc53fc64e139f1363c1a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2455166 Commit-Queue: Shahbaz Youssefi <[email protected]> Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Courtney Goeltzenleuchter <[email protected]>
https://chromium.googlesource.com/chromium/src.git/+log/a6b7134c40b1..20d60a8527d7 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC [email protected] on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/28f65f7116..4af5c075ce * testing: https://chromium.googlesource.com/chromium/src/testing/+log/225e4dc4d6..a8c1307999 No update to Clang. Bug: angleproject:5124 Tbr: [email protected] Change-Id: I82d32eb5b80daa8d26491b4399289e00283c3f65 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2470543 Reviewed-by: angle-autoroll <[email protected]> Commit-Queue: angle-autoroll <[email protected]>
This makes trigger.py use the same code paths as the bots when they trigger standalone ANGLE tests. Fixes launching tests via trigger.py on Linux because of using the 'windowed_test_launcher' method that used xvfb. Bug: angleproject:5114 Change-Id: I073631270b5b69aac8f3f0f6378bd71f951ce8e6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464425 Commit-Queue: Jamie Madill <[email protected]> Reviewed-by: Courtney Goeltzenleuchter <[email protected]> Reviewed-by: Yuly Novikov <[email protected]>
Use vkGetPhysicalDeviceSurfaceCapabilitiesKHR() instead of ANativeWindow_getWidth() & ANativeWindow_getHeight(). The former gives the proper size of the window, where the latter gives the size of the device's display (which is the default size of a window). Bug: b/168327817 Change-Id: I524116b7b07bf2ec7637fe2874806c5eb8318171 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464920 Reviewed-by: Tim Van Patten <[email protected]> Reviewed-by: Courtney Goeltzenleuchter <[email protected]> Commit-Queue: Ian Elliott <[email protected]>
Some users on Linux/Wayland are reporting issues rendering Chrome unusable when ANGLE exposes GLX_OML_sync_control. This CL adds a new feature to ANGLE to disable this extension, but for now we leave the feature off by default, so users can test it via command line flags. Bug: chromium:1137851 Change-Id: I804ea935fe441c4794b93ee62ca335e78b9e453a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468216 Reviewed-by: Geoff Lang <[email protected]> Commit-Queue: Jonah Ryan-Davis <[email protected]>
…ision) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/9d4b40ae645e..f121d1252b2a 2020-10-13 [email protected] best_practices: Fix bug introduced in refactor If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC [email protected] on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: [email protected] Change-Id: I2f2e559f16ca493d079fc13ef5f48aa16bd6c265 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2470736 Reviewed-by: angle-autoroll <[email protected]> Commit-Queue: angle-autoroll <[email protected]>
Add support for GL_OES_texture_cube_map_array to the Vulkan backend if the underlying ICD supports creation of of cube array ImageViews Bug: angleproject:3584 Test: dEQP-GLES31.functional.fbo.color.texcubearray.* Change-Id: I636cbf347d718abfc1600119b312578370b8e02e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2437989 Commit-Queue: Shahbaz Youssefi <[email protected]> Reviewed-by: Shahbaz Youssefi <[email protected]> Reviewed-by: Jamie Madill <[email protected]>
These two tests are causing the driver internally to OOM. dEQP-GLES3.functional.multisample.fbo_max_samples.constancy_sample_coverage_inverted dEQP-GLES3.functional.multisample.fbo_max_samples.constancy_both Bug: angleproject:5162 Change-Id: I6960b4b171efb2f74b42a82d8ecafce1edb167c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2469958 Commit-Queue: Jamie Madill <[email protected]> Reviewed-by: Jamie Madill <[email protected]>
If depth/stencil is not loaded, and it's not written to during the render pass, then treat it as if it was invalidated so storeOp can be set to DONT_CARE and its corresponding resolve attachment (if any) removed. This is especially useful for MSRTT as a resolve attachment is added at the start of render pass, and this optimization will give it a chance to undo that if depth/stencil was not actually used in the render pass. This situation can arise for example if a render pass is created for the sole purpose of clearing color. This change includes a bug fix for missing depth/stencil on*Access in the UtilsVk blit/resolve path. Bug: angleproject:4836 Change-Id: Ifc8eea3e6ffb3eb4bba19f03d1358f151ec69c44 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2453468 Reviewed-by: Charlie Lao <[email protected]> Reviewed-by: Jamie Madill <[email protected]> Commit-Queue: Shahbaz Youssefi <[email protected]>
Simplified and made faster for devices that return VK_ERROR_OUT_OF_DATE_KHR (and VK_SUBOPTIMAL_KHR). Bug: b/168327817 Change-Id: Iec3dad8d528eb7d3645062a6736b397514432829 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2464921 Commit-Queue: Ian Elliott <[email protected]> Reviewed-by: Tim Van Patten <[email protected]> Reviewed-by: Courtney Goeltzenleuchter <[email protected]>
These tests are failing for unknown ordering reasons: dEQP-GLES2.functional.fbo.render.texsubimage.after_render_tex2d_rgba dEQP-GLES2.functional.fbo.render.texsubimage.between_render_tex2d_rgb dEQP-GLES2.functional.fbo.render.texsubimage.between_render_tex2d_rgba Bug: angleproject:5169 Change-Id: I25e592f6aa50cf80b0d60f04085c42cb1169dd31 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2472517 Commit-Queue: Jamie Madill <[email protected]> Reviewed-by: Jamie Madill <[email protected]>
dEQP-EGL.functional.swap_buffers_with_damage.resize_after_swap.* dEQP-EGL.functional.swap_buffers_with_damage.resize_before_swap.* See issue for more details. Bug: angleproject:5170 Change-Id: Id0376dcb26514dffc09a28e9ad7b2ade8d50b8c7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2472518 Reviewed-by: Jamie Madill <[email protected]> Commit-Queue: Jamie Madill <[email protected]>
Consolidate error info into a structure in preparation of threading work. Also preserves the meaning of the data until it's rendered to a string for consumption by GL. Bug: b/154030730 Change-Id: I8cde7133c817d77fdb117efc1c11edc94f615da3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2468537 Commit-Queue: Courtney Goeltzenleuchter <[email protected]> Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Tim Van Patten <[email protected]>
…etrieved" This reverts commit 4dae43d. Reason for revert: VVL rolled with the fix. Original change's description: > Vulkan: Disable vkCreateDevice-physical-device-features-not-retrieved > > Disable > UNASSIGNED-BestPractices-vkCreateDevice-physical-device-features-not-retrieved > while the Khronos issue is investigated. > > Bug: angleproject:5149 > Change-Id: I680cf264d6356cf219826902d7fdf2304e27ebab > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2461475 > Commit-Queue: Tim Van Patten <[email protected]> > Reviewed-by: Jamie Madill <[email protected]> > Reviewed-by: Shahbaz Youssefi <[email protected]> [email protected],[email protected],[email protected] # Not skipping CQ checks because original CL landed > 1 day ago. Bug: angleproject:5149 Change-Id: I0a338983ac0804d5bb0e41e592f177372be66d5c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2471556 Reviewed-by: Jamie Madill <[email protected]> Commit-Queue: Tim Van Patten <[email protected]>
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/c2553a315f5c..5c64374dd6cb If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll Please CC [email protected] on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: [email protected] Change-Id: Ia678f7bcac2750fc489f639e151f56b77468d8c0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2470737 Reviewed-by: angle-autoroll <[email protected]> Commit-Queue: angle-autoroll <[email protected]>
Disables the following tests due to them failing on the ARM-based Mac DTKs: * GLSLTest_ES3.GLVertexIDIntegerTextureDrawArrays/ES3_OpenGL * OcclusionQueriesTest.MultiQueries/ES2_Metal * TransformFeedbackTest.TwoUnreferencedInFragShader/ES3_OpenGL * WebGL2CompatibilityTest.CopyMip1ToMip0/ES3_OpenGL Bug: chromium:1132295 Change-Id: I557e3c978d884e9beeafb4f43676271edcd36a87 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2472532 Reviewed-by: Jamie Madill <[email protected]> Commit-Queue: Brian Sheedy <[email protected]> Commit-Queue: Jamie Madill <[email protected]>
Bug: angleproject:3593 Change-Id: I6d3a55a3112f5f9b20ef33c859a60b2952bfbc2f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2444209 Commit-Queue: Mohan Maiya <[email protected]> Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Shahbaz Youssefi <[email protected]>
GLES1ConformanceTest.Blend/ES1_Vulkan Bug: angleproject:5171 Change-Id: I2f3bb0d53676ed54e1fb74816e7c93a8e44042a3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2472536 Reviewed-by: Jamie Madill <[email protected]> Commit-Queue: Jamie Madill <[email protected]>
This CL adds support for dumping the VMA stats string, which can be given to VmaDumpVis.py to visualize the allocations that the VMA has performed. To enable dumping the string, set: RendererVk.cpp rx::kOutputVmaStatsString = true Copy the desired JSON output into a text file, and pass that to VmaDumpVis.py: python3 \ third_party/vulkan_memory_allocator/tools/VmaDumpVis/VmaDumpVis.py \ -o stats.png stats.txt The legend for the visualization is available at: https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator/tree/master/tools/VmaDumpVis Bug: angleproject:2162 Test: Manual verification Change-Id: Ic8c1002805dd57e594df724bcf1cdbc1d1599a3e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2472525 Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Charlie Lao <[email protected]> Commit-Queue: Tim Van Patten <[email protected]>
Previously GL_NONE were being used, causing nativegl::SupportsNativeRendering to think the bound texture wasn't renderable, and TextureGL::copySubTextureHelper (called via CopyTexSubImageCHROMIUM) to use CPU readback. This affected the WebGL DrawingBuffer's premultiplyAlpha:false code path. Thanks to geofflang@ for the patch. Bug: chromium:1136613 Change-Id: Iee650156983f880fa802b3a17d3989f5a9322e91 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2472535 Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Geoff Lang <[email protected]> Commit-Queue: Kenneth Russell <[email protected]>
This would include "angle:angle_common" which is not a directory. Bug: b/171848471 Change-Id: Ic4f03b174a4cd4b81470862b3ed79a58b415ad04 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2507630 Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Geoff Lang <[email protected]> Commit-Queue: Jamie Madill <[email protected]>
https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/483a71c5130e..e69b9b7294af 2020-10-25 [email protected] Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master 2020-10-25 [email protected] Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/master 2020-10-24 [email protected] Notice of withdrawal of Vulkan CTS 1.1.6.x 2020-10-24 [email protected] Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/master 2020-10-23 [email protected] ANGLE waiver for GLES XFB array element capture 2020-10-23 [email protected] Fix depth/stencil resolve compatibility tests 2020-10-23 [email protected] Fix validation errors in AHB tests 2020-10-23 [email protected] Add create and destroy object tests for the VK_EXT_device_memory_report extension 2020-10-23 [email protected] Add tests for clamping of depth values 2020-10-23 [email protected] Implement custom border color tests If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: [email protected],[email protected] Change-Id: I2cd46cab1b48ccd22233cf4ea938590bab4d0945 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2507709 Reviewed-by: angle-autoroll <[email protected]> Commit-Queue: angle-autoroll <[email protected]>
https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/8308d6744d50..428654245ad3 2020-10-28 [email protected] Configure vulkan.pc when pkg-config is available If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-loader-angle-autoroll Please CC [email protected] on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: [email protected] Change-Id: Ic3137a446d4e977d94168c2e9abb1fc23d49974b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2507094 Reviewed-by: angle-autoroll <[email protected]> Commit-Queue: angle-autoroll <[email protected]>
…isions) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/87b0951f8dba..a72e7b987746 2020-10-28 [email protected] tests: Add invalid stride test for GetQueryPoolResults 2020-10-28 [email protected] corechecks: Added 4519 vuid for GetQueryPoolResults stride 2020-10-28 [email protected] stateless: Add a missing "not" to ValidateGreaterThan If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC [email protected] on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: [email protected] Change-Id: I3c1003765bf75b46f22781458a81e13378ebe451 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2507093 Reviewed-by: angle-autoroll <[email protected]> Commit-Queue: angle-autoroll <[email protected]>
Prior changes had made it so we no longer were spacing out the output correctly. Bug: None Change-Id: Icf81b579271f2b4c8fa5a1d90d323dc062f23585 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2507635 Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Geoff Lang <[email protected]> Commit-Queue: Jamie Madill <[email protected]>
The definition _LIBCPP_ABI_UNSTABLE breaks std::string in Android AOSP builds, starting with GetHelperExecutableDir(), but others fail later if that's worked around. Instead, we'll disable that flag with a GN arg for AOSP rolls. Bug: angleproject:5263 Test: Build on AOSP and launch Cuttlefish Change-Id: Ia4b293a5ce0b09206f4ed87a5a442e544e2021c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508529 Reviewed-by: Geoff Lang <[email protected]> Commit-Queue: Tim Van Patten <[email protected]>
Add support for shader builtins and enable the extension. Bug: angleproject:3578 Tests: dEQP-GLES31.functional.*image_atomic* Change-Id: Idd45b2ee62efe1474c6c5947c77da64ff2221bf6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2505540 Commit-Queue: Mohan Maiya <[email protected]> Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Shahbaz Youssefi <[email protected]>
This will force "GN analyze" to pick up changes in the gold tests when all that GN sees is a new SHA1 file. In effect a SHA1 change means all the sources in a trace have changed. Bug: chromium:1143507 Change-Id: Idf44045ebd5d2bda9380b339e95d336b6804ce8a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508530 Commit-Queue: Jamie Madill <[email protected]> Reviewed-by: Yuly Novikov <[email protected]> Reviewed-by: Cody Northrop <[email protected]>
Bug: angleproject:5265 Change-Id: I1d3f1802398472c0da2d00526bd7eb52f6596bea Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508532 Reviewed-by: Jamie Madill <[email protected]> Commit-Queue: Yuly Novikov <[email protected]>
Descriptor pools need to live as long as the descriptor sets that are allocated from them. Using Serials while building a command to judge a pool's lifetime is prone to errors, since a command's Serial value isn't known until the command is submitted, leading to deleting pools too early relative to when the descriptor set is actually used. This CL updates DescriptorPoolHelper to inherit from Resource, so the descriptor pools can be retain()'ed. This allows the Resource's counter to indicate that a pool is in use until the command's Serial is known and can be recorded to indicate when the command completes. This prevents descriptor pools from being destroyed before the command completes (while the descriptor sets are still in use), or even before the command has been submitted. Destroying a descriptor pool resets all of the descriptors that were allocated from it, which can trigger a variety of VVL errors depending on when it's erroneously performed. This CL also adds the necessary retain() calls for the descriptor pools. In particular, the pools need to be retained each time a cached descriptor set that was allocated from it is re-used. This is relatively simple with the current design, since we always clear the descriptor set caches whenever a new pool is allocated, so the descriptor pool binding is always accurate. Bug: angleproject:5030 Test: VulkanMultithreadingTest::MultiContextDrawSmallDescriptorPools() Change-Id: Iac9e7efef338f169a6bf8ac3b2140e03dd326641 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2504457 Reviewed-by: Jamie Madill <[email protected]> Reviewed-by: Courtney Goeltzenleuchter <[email protected]> Commit-Queue: Tim Van Patten <[email protected]>
In Python 3, you have to be careful to distinguish between bytes and strings when reading from subprocesses; the code to read the commit position was failing to do that in one place. Bug: chromium:1112471 Change-Id: Ifbfba6872f762d7e5d7e356772e93b4a7ee1dfeb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508746 Commit-Queue: Dirk Pranke <[email protected]> Commit-Queue: Jamie Madill <[email protected]> Reviewed-by: Jamie Madill <[email protected]>
Crashes on Mac Mini 8.1 Bug: angleproject:5268 Change-Id: I18cab39a8b6a8703e798cd8fb14d498a3a611eec Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508969 Reviewed-by: Yuly Novikov <[email protected]> Commit-Queue: Yuly Novikov <[email protected]>
Bug: angleproject:5267 Change-Id: I41a7c7c07701e0236a85becd93f2d23db2cdaa8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508538 Reviewed-by: Yuly Novikov <[email protected]> Commit-Queue: Yuly Novikov <[email protected]>
DepthStencilFormatsTest.DepthStencilReadback_Float/ES2_OpenGL DepthStencilFormatsTest.DepthStencilReadback_UInt/ES2_OpenGL Bug: angleproject:5269 Change-Id: I223c80d8c8ac47176d5a4ecdff34f6ce27286284 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508971 Reviewed-by: Yuly Novikov <[email protected]> Commit-Queue: Yuly Novikov <[email protected]>
Bug: angleproject:5270 Change-Id: I11ec5f9eef3989ac99a618bf5ab707484710a254 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508972 Reviewed-by: Yuly Novikov <[email protected]> Commit-Queue: Yuly Novikov <[email protected]>
Bug: angleproject:5271 Change-Id: I644b28670ce0501407797f7ae7e749a66a63d84e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508975 Reviewed-by: Yuly Novikov <[email protected]> Commit-Queue: Yuly Novikov <[email protected]>
This changes from returning a vector to directly returning a pointer to the binary data for the serialized state. The second cleanup is to use a ContextID as a wrapped type which simplifies the output formatting code. Bug: angleproject:5247 Change-Id: Ieb8afdb9326a12968dd2d69c05e1ed811b93abff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2506198 Reviewed-by: Courtney Goeltzenleuchter <[email protected]> Reviewed-by: Cody Northrop <[email protected]> Commit-Queue: Jamie Madill <[email protected]>
Bug: angleproject:4988 Change-Id: I59facc66aaa2af216d3a6c6ef1e4efa934a45cb8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2506779 Reviewed-by: Shahbaz Youssefi <[email protected]> Commit-Queue: Shahbaz Youssefi <[email protected]>
https://chromium.googlesource.com/chromium/src.git/+log/80c364fa8e53..1e88b939ff30 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC [email protected] on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/899545e432..5cdd7aaa22 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/e74c871704..98789ba90c * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/d24a1910b9..dbf0550693 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/{catapult_..24bd418544 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/f9b4a22424..12b3cd36d8 * tools/luci-go: git_revision:576741d3eed0fa33971fb34cd823650e6f5b47fb..git_revision:1a022d3a4c50be4207ee93451255d71896416596 * tools/luci-go: git_revision:576741d3eed0fa33971fb34cd823650e6f5b47fb..git_revision:1a022d3a4c50be4207ee93451255d71896416596 * tools/luci-go: git_revision:576741d3eed0fa33971fb34cd823650e6f5b47fb..git_revision:1a022d3a4c50be4207ee93451255d71896416596 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/1d51f2aa14..88a308c1a4 No update to Clang. Bug: angleproject:2930,angleproject:3020,angleproject:3111,angleproject:3481,angleproject:5213,angleproject:5227,angleproject:5259 Tbr: [email protected] Change-Id: I41975759f796173e010b3f986815ff845f3b2da0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2508985 Reviewed-by: angle-autoroll <[email protected]> Commit-Queue: angle-autoroll <[email protected]>
https://swiftshader.googlesource.com/SwiftShader.git/+log/c1839ee3cedd..e6c9497255c6 2020-10-29 [email protected] Fix LLVM pointer element type 2020-10-29 [email protected] Avoid false-positive MSan error for thread_local 2020-10-29 [email protected] Update Marl to 3285a2dfb 2020-10-28 [email protected] Temporarily support both ORCv1 and ORCv2 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC [email protected] on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: [email protected] Change-Id: Ibcf37e0128989e89d6e5ec2cf5033f1cf2d599f6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2509671 Reviewed-by: angle-autoroll <[email protected]> Commit-Queue: angle-autoroll <[email protected]>
…ision) https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/a72e7b987746..f673b4e6ebf3 2020-10-29 [email protected] build: Reconcile final 158 VUID inconsistencies If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-validation-layers-angle-autoroll Please CC [email protected] on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md Bug: None Tbr: [email protected] Change-Id: Icdc92303ef357bdb2f5390402af65c0d8209e82e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2509672 Reviewed-by: angle-autoroll <[email protected]> Commit-Queue: angle-autoroll <[email protected]>
The type information is redundant with the parameters. Cleans up both the debugger and text-based traces. Bug: b/170249632 Change-Id: I00f96dc1d69ec7a8c5ca24b1a275f3bc7c29d376 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2507636 Reviewed-by: Ian Elliott <[email protected]> Reviewed-by: Shahbaz Youssefi <[email protected]> Commit-Queue: Jamie Madill <[email protected]>
ChristopherHX
pushed a commit
that referenced
this pull request
Nov 1, 2020
We could mess up capturing Program #1 by using a temp shader ID of 1. Instead we can use a shader ID that isn't used in the application. Noticed when capturing from the T-Rex replay. Bug: angleproject:5134 Change-Id: Ic6fefe9d8cdf327a5ebbb47539b2e11161a4b13c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2449159 Commit-Queue: Jamie Madill <[email protected]> Reviewed-by: Cody Northrop <[email protected]> Reviewed-by: Courtney Goeltzenleuchter <[email protected]>
ChristopherHX
pushed a commit
that referenced
this pull request
Aug 9, 2023
This CL improves performance compared to the existing code as well as allows using non-std mutex implementations. Also acts as a base for future changes. CL adds new build option: angle_enable_global_mutex_recursion = is_android && angle_enable_vulkan "mutex_recursion" work same way as `std::recursive_mutex` before. It will help in situations when Vulkan API may return back to the ANGLE. For example: RenderDoc layer EGL deadlock. Automatic loading of "libVkLayer_GLES_RenderDoc.so" layer causes deadlock in EGL. Recursion stack: #1 pc 000000000029ea80 /vendor/lib64/egl/libGLESv2_angle.so (egl::GlobalMutexHelper::lock(int)+596) #2 pc 000000000029c59c /vendor/lib64/egl/libGLESv2_angle.so (EGL_GetError+32) google#4 pc 0000000000062368 /system/lib64/libEGL.so (eglQueryString+20) google#5 pc 0000000000508fec /data/local/debug/vulkan/libVkLayer_GLES_RenderDoc.so google#20 pc 0000000000016690 /system/lib64/libvulkan.so (vulkan::api::EnumerateInstanceLayerProperties(unsigned int*, VkLayerProperties*)+40) google#21 pc 00000000005aa030 /vendor/lib64/egl/libGLESv2_angle.so (rx::RendererVk::initialize(rx::DisplayVk*, egl::Display*, char const*, char const*)+292) google#26 pc 000000000029c7e8 /vendor/lib64/egl/libGLESv2_angle.so (EGL_Initialize+192) Additionally, recursive mutex will partially solve Android SurfaceTexture deadlock (angleproject:4354). Some performance numbers for 1000'000 `eglGetError()` calls. Mutex Time (ms.) Android S906B egl::GetGlobalMutex()(std::recursive_mutex) 41.4 (Default) GlobalMutex (std::recursive_mutex) 39.1 (Recursive) GlobalMutex (std::mutex) 34.9 (Debug) GlobalMutex (std::mutex) 34.7 (Default) GlobalMutex (std::mutex) 34.4 Windows egl::GetGlobalMutex()(std::recursive_mutex) 20.5 (Default) GlobalMutex (std::recursive_mutex) 20.0 (Recursive) GlobalMutex (std::mutex) 21.9 (Debug) GlobalMutex (std::mutex) 20.5 (Default) GlobalMutex (std::mutex) 19.9 Note: Recursive GlobalMutex enabled only for Android Vulkan by default. Original fix: https://chromium-review.googlesource.com/c/angle/angle/+/2029218 Bug: angleproject:8101 Bug: angleproject:4354 Test: angle_unittests --gtest_filter=GlobalMutexTest.* Change-Id: I9e9d9b5c598ad1177ffa147ea690bd955946a712 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4401940 Commit-Queue: Igor Nazarov <[email protected]> Reviewed-by: Charlie Lao <[email protected]> Reviewed-by: Shahbaz Youssefi <[email protected]>
ChristopherHX
pushed a commit
that referenced
this pull request
Aug 9, 2023
Regression from this commit: Vulkan: Clean up CommandProcessor::queuePresent https://chromium-review.googlesource.com/c/angle/angle/+/4257927 Details: - `CommandProcessor::processTask()` handles `CustomTask::Present`; - It calls `CommandProcessor::present()` that assigns `swapchainStatus->isPending = false`; - `CommandProcessor` thread is suspended for a while...; - `WindowSurfaceVk::destroy()` calls `waitForPresentToBeSubmitted()`; - It sees that `swapchainStatus->isPending == false` and skips waiting; - `WindowSurfaceVk` (and `SwapchainStatus` ) instance is destroyed; - `CommandProcessor` thread resumes and checks `task->getSwapchainStatus()->lastPresentResult` - ASAN failure. The 460 bytes offset is `SwapchainStatus::lastPresentResult` member inside `WindowSurfaceVk` instance. Test that failed: ImageTest.ValidationGLEGLImageExternal/ES2_Vulkan_SwiftShader_AsyncCommandQueue ==27108==ERROR: AddressSanitizer: heap-use-after-free on address 0x61e0000eea4c at pc 0x7f98434e0e10 bp 0x7f98363c0a70 sp 0x7f98363c0a68 READ of size 4 at 0x61e0000eea4c thread T29 #0 0x7f98434e0e0f in rx::vk::CommandProcessor::processTask(rx::vk::CommandProcessorTask*) src/libANGLE/renderer/vulkan/CommandProcessor.cpp:664:59 0x61e0000eea4c is located 460 bytes inside of 2880-byte region [0x61e0000ee880,0x61e0000ef3c0) freed by thread T0 here: #0 0x5651c72a563d in operator delete(void*) /b/s/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/asan/asan_new_delete.cpp:152:3 #1 0x7f9843f4c8c9 in SafeDelete<rx::SurfaceImpl> src/common/angleutils.h:285:5 previously allocated by thread T0 here: #0 0x5651c72a4ddd in operator new(unsigned long) /b/s/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/asan/asan_new_delete.cpp:95:3 #1 0x7f9843a38599 in rx::DisplayVkXcb::createWindowSurfaceVk(egl::SurfaceState const&, long) src/libANGLE/renderer/vulkan/linux/xcb/DisplayVkXcb.cpp:99:12 Bug: b/269524271 Change-Id: Ie70bc9e2b89267653ddb6b3a30c1a67e22864f26 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4491743 Commit-Queue: Igor Nazarov <[email protected]> Reviewed-by: Charlie Lao <[email protected]> Reviewed-by: Shahbaz Youssefi <[email protected]>
ChristopherHX
pushed a commit
that referenced
this pull request
Aug 9, 2023
Option is for Android Vulkan. Fixes the recursion problem: #00 pc 000000000004d69c /apex/com.android.runtime/lib64/bionic/libc.so (syscall+28) (BuildId: dda896312b8ac9c639f6aeb0175b8a0a) #1 pc 0000000000051e84 /apex/com.android.runtime/lib64/bionic/libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*)+144) (BuildId: dda896312b8ac9c639f6aeb0175b8a0a) #2 pc 00000000000b41b4 /apex/com.android.runtime/lib64/bionic/libc.so (NonPI::MutexLockWithTimeout(pthread_mutex_internal_t*, bool, timespec const*)+236) (BuildId: dda896312b8ac9c639f6aeb0175b8a0a) #3 pc 00000000003d8274 /vendor/lib64/egl/libGLESv2_angle.so (std::__Cr::mutex::lock()+12) (BuildId: 203fee8f1cfe9c18) google#4 pc 0000000000336494 /vendor/lib64/egl/libGLESv2_angle.so (egl::SharedContextMutex<std::__Cr::mutex>::doLock()+132) (BuildId: 203fee8f1cfe9c18) google#5 pc 000000000033668c /vendor/lib64/egl/libGLESv2_angle.so (egl::SharedContextMutex<std::__Cr::mutex>::lock()+124) (BuildId: 203fee8f1cfe9c18) google#6 pc 00000000001d6e08 /vendor/lib64/egl/libGLESv2_angle.so (EGL_ClientWaitSyncKHR+100) (BuildId: 203fee8f1cfe9c18) google#7 pc 00000000000674f0 /system/lib64/libEGL.so (android::eglClientWaitSyncKHRImpl(void*, void*, int, unsigned long)+112) (BuildId: c4698b8b366f6519dbd7bd3a5f6239f2) google#8 pc 0000000000086648 /system/lib64/libgui.so (android::BufferQueueProducer::dequeueBuffer(int*, android::sp<android::Fence>*, unsigned int, unsigned int, int, unsigned long, unsigned long*, android::FrameEventHistoryDelta*)+3240) (BuildId: ff35b91736084ee7c49efe908fb9f8f3) google#9 pc 00000000000e24fc /system/lib64/libgui.so (android::Surface::dequeueBuffer(ANativeWindowBuffer**, int*)+392) (BuildId: ff35b91736084ee7c49efe908fb9f8f3) google#10 pc 0000000000755770 /system/lib64/libhwui.so (android::uirenderer::renderthread::ReliableSurface::hook_dequeueBuffer(ANativeWindow*, int (*)(ANativeWindow*, ANativeWindowBuffer**, int*), void*, ANativeWindowBuffer**, int*)+80) (BuildId: 0ab7d7584ac800860c4d180557441d1b) google#11 pc 00000000000e0b48 /system/lib64/libgui.so (android::Surface::hook_dequeueBuffer(ANativeWindow*, ANativeWindowBuffer**, int*)+92) (BuildId: ff35b91736084ee7c49efe908fb9f8f3) google#12 pc 000000000002cc8c /system/lib64/libvulkan.so (vulkan::driver::AcquireNextImageKHR(VkDevice_T*, VkSwapchainKHR_T*, unsigned long, VkSemaphore_T*, VkFence_T*, unsigned int*)+280) (BuildId: 0c72f8685858f73fbb13fd68d401bba5) google#13 pc 0000000000266f08 /vendor/lib64/egl/libGLESv2_angle.so (rx::(anonymous namespace)::TryAcquireNextImageUnlocked(VkDevice_T*, VkSwapchainKHR_T*, rx::impl::ImageAcquireOperation*)+128) (BuildId: 203fee8f1cfe9c18) google#14 pc 000000000026495c /vendor/lib64/egl/libGLESv2_angle.so (rx::WindowSurfaceVk::acquireNextSwapchainImage(rx::vk::Context*)+140) (BuildId: 203fee8f1cfe9c18) google#15 pc 0000000000265800 /vendor/lib64/egl/libGLESv2_angle.so (rx::WindowSurfaceVk::doDeferredAcquireNextImageWithUsableSwapchain(gl::Context const*)+148) (BuildId: 203fee8f1cfe9c18) google#16 pc 0000000000267bb4 /vendor/lib64/egl/libGLESv2_angle.so (rx::WindowSurfaceVk::getBufferAge(gl::Context const*, int*)+196) (BuildId: 203fee8f1cfe9c18) google#17 pc 000000000034143c /vendor/lib64/egl/libGLESv2_angle.so (egl::Surface::getBufferAge(gl::Context const*, int*)+36) (BuildId: 203fee8f1cfe9c18) google#18 pc 000000000036c354 /vendor/lib64/egl/libGLESv2_angle.so (egl::QuerySurfaceAttrib(egl::Display const*, gl::Context const*, egl::Surface*, int, int*)+812) (BuildId: 203fee8f1cfe9c18) google#19 pc 00000000001d1674 /vendor/lib64/egl/libGLESv2_angle.so (egl::QuerySurface(egl::Thread*, egl::Display*, egl::SurfaceID, int, int*)+176) (BuildId: 203fee8f1cfe9c18) google#20 pc 00000000001d3658 /vendor/lib64/egl/libGLESv2_angle.so (EGL_QuerySurface+200) (BuildId: 203fee8f1cfe9c18) Happens only on platforms that use "EGL_KHR_fence_sync" instead of "EGL_ANDROID_native_fence_sync" for synchronization. Happens only on specific Surface types, that using `EGLConsumer`/`GLConsumer`, such as `SurfaceTexture`. The Android's "testDrawingHardwareBitmapNotLeaking" test may be used for testing the issue. Note: in order to reproduce, `SingleContextMutex` must not be used by context. The "Fix ExternalImageTarget EGLImage race" CL will achieve that. To check what extension is used, call: adb shell "dumpsys SurfaceFlinger | grep 'Sync configuration'" Possible results: Sync configuration: [using: EGL_KHR_fence_sync EGL_KHR_wait_sync] Sync configuration: [using: EGL_ANDROID_native_fence_sync EGL_KHR_wait_sync] Bug: angleproject:4354 Change-Id: I915a2c026b59af0a2098ae6b3300f773b29cbfbb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4733831 Commit-Queue: Igor Nazarov <[email protected]> Reviewed-by: Shahbaz Youssefi <[email protected]>
ChristopherHX
pushed a commit
that referenced
this pull request
Jan 2, 2024
It's ok to flush denormalized constants to zero. It's not ok to flush perfectly valid normal float constants >= FLT_MIN to zero. Two problems: 1) Values when parsed as doubles with a value less than FLT_MIN are being flushed to zero. This is incorrect when the comparison is done in double, since some values below FLT_MIN in double are equal to FLT_MIN when cast to float. The fix is to perform the comparison in float. 2) Values with a decimal exponent less than FLT_MIN_10_EXP are being flushed to zero. FLT_MIN_10_EXP is -37 but FLT_MIN is 1.1754943E-38. 10^-37 may be the "minimum negative integer such that 10 raised to that power is a normalized float", but being constrained to powers of ten it's above FLT_MIN (which is 2^-126). Since this comparison is done before #1 above, it's only present (AFAIK) to ensure that the exponent will not make the pow() function overflow. Comparing against -38 (FLT_MIN_10_EXP - 1) instead will do the trick. Bug: angleproject:8373, dawn:2077 Change-Id: I1ddf410c2caa9f0d1ba3529ace693dcd326a2cb3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4936714 Reviewed-by: Geoff Lang <[email protected]> Reviewed-by: Shahbaz Youssefi <[email protected]> Commit-Queue: Stephen White <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.