Log

Author Commit Date CI Message
Jamie Madill a6206854 2019-10-24T12:55:09 Enable "-Wmissing-field-initializers". This is another warning required by Skia. This one didn't find anything that surprising. Enabling the warning does help enforce code consistency and avoids a bit of possible undefined behaviour. Bug: angleproject:4046 Change-Id: Ifec7f4afad49cd820bf3c0a79df3f46559473ee2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877477 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 859ca039 2019-10-24T12:55:08 Enable "-Wshadow-field". This warning verifies we don't give variables names that shadow fields. This is another good warning to enable that Skia requires. This CL also fixes a small number of points in code that used this bad pattern. We have to disable the warning for Glslang for now. Bug: angleproject:4046 Change-Id: I072a686e3023b60cfafa778525fe712ce1fb5a50 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877476 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill fd58d22c 2019-10-24T12:55:07 Enable "-Wtautological-type-limit-compare". This is used by Skia. It seems like a good this to enable in any case. It verifies that we don't do pointless comparisons like "int < INTMAX". Fix the one instance by using the base checked numeric helpers. Bug: angleproject:4046 Change-Id: Ie14a9cb2754df52929591281062d92ef70df8f97 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877474 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 3db80f93 2019-10-24T18:31:22 Use "full" git cl format by default. This uses the new setting added to depot_tools. The diff lines of context setting was removed. Bug: angleproject:4003 Change-Id: I6f7d471d3cce066cd3a6caa200828d09ccfca5ae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1879577 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill f251995d 2019-10-24T12:42:36 Capture/Replay: Write capture index file. This file will be used with multi-frame captures to share common code. Common code is global state, resource maps, and a list of frame replay functions. This should make converting a CPP replay into a functional test quite a bit simpler. The replay files will now be something like: angle_capture_context1.cpp angle_capture_context1.h angle_capture_context1_frame000.cpp angle_capture_context1_frame001.cpp ... etc Also adds a template for adding a capture/replay sample. Instructions are located in samples/BUILD.gn and docs in doc/CaptureAndReplay.md. Bug: angleproject:3611 Change-Id: I437b338fd84689d670a7d9e3e219d9334de25fd8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869543 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Tobin Ehlis 7af2676b 2019-10-23T16:18:57 Fix TextureAttachment support for unsized DS formats Unsized DS formats should not pick up support from ES3 automatically. Also unsized DEPTH COMPONENT textures should not be allowed as texture attachments without also having support for GL_ANGLE_depth_texture or GL_OES_depth_texture extensions. This change modifies some unsized formats to require extension support for TextureAttachment use. There are a couple of tests bugs that were exposed by this change so updated those tests as well. This CL only changes TextureAttachment support, but it's quite possible that renderbuffer (and texture) support may also need to be updated. Will attempt that in a follow-on. Bug: angleproject:3952 Change-Id: I75d15330dc418c421cd2855135e1e8100a89b2e8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877135 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill a2e66a5e 2019-10-24T12:42:36 Capture/Replay: Introduce environment options and docs. Introduces a few ways of controlling capture via: * `ANGLE_CAPTURE_ENABLED`: Can be set to "0" to disable capture entirely. * `ANGLE_CAPTURE_OUT_DIR`: Can specify an alternate directory than the CWD. * `ANGLE_CAPTURE_FRAME_END`: This variable can override the default of 10 frame to capture. Also adds a simple usage guide document. Bug: angleproject:3611 Change-Id: I49d32d5bae2c490dcbeb0f1ce3c6038e433adfaa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869542 Reviewed-by: Tobin Ehlis <tobine@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Ian Elliott 6b652b33 2019-10-24T10:03:37 Vulkan: Update expectations for SwiftShader sRGB fix Issue 4011 had 2 root causes, one of which was fixed and the other split out into 4037. Bug: angleproject:4011 Bug: angleproject:4037 Change-Id: I460588d7667429751416c1904863a5117a8a4b1d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1878889 Reviewed-by: Ian Elliott <ianelliott@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Jamie Madill c139250c 2019-10-13T15:05:23 Vulkan: Enable multithreading tests. These now pass with all the prior work. One test case is left disabled on Linux due to timeouts. Bug: angleproject:2464 Change-Id: If41f59f44f78160cf1b26dc05f560afd286996bf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1832526 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 299b1baf 2019-10-24T09:29:18 GN: Fix one missing check for 'angle_has_build'. This was blocking using our GN files in Skia. Bug: angleproject:4046 Change-Id: I12887a53c5f92b0e00206f8d391a8d03433b5e6e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877475 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang 3a8b8908 2019-10-23T13:26:13 GL: Follow-up primitive restart emulation fixes. - Use the existing utility function for computing the primitive restart index. - Fix bad merge that removed the unfoldShortCircuits feature. BUG=1017337 BUG=angleproject:3997 Change-Id: I4ba5ada9816731bdd29a0e518ce225bdd69a762e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1876453 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>
angle-autoroll 56d4da05 2019-10-24T07:01:19 Roll third_party/SwiftShader 7738ed713e7b..883e817b14bf (1 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/7738ed713e7b..883e817b14bf git log 7738ed713e7b..883e817b14bf --date=short --no-merges --format='%ad %ae %s' 2019-10-23 webmaster@saschawillems.de Added vkGetPhysicalDeviceWin32PresentationSupportKHR to Vulkan ICD Created with: gclient setdep -r third_party/SwiftShader@883e817b14bf 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 jonahr@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jonahr@google.com Change-Id: If101eb655a556a70884b6b65d8f628d98901e73a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877852 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 806747e0 2019-10-24T07:01:09 Roll third_party/glslang/src 5e634c8999e6..7662586844f4 (3 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/5e634c8999e6..7662586844f4 Created with: gclient setdep -r third_party/glslang/src@7662586844f4 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC jonahr@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jonahr@google.com Change-Id: Ibaa281c82997e29b0d27a1e67c828a8f693c79d7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1877851 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tobin Ehlis b2885bc4 2019-10-23T13:33:48 Vulkan:Enable UpdateBufferInUse test on AMD Re-tested this and it's now passing so turning it on. Bug: angleproject:3255 Change-Id: Iccf63cfaa4386dfda5628e189362631e655953f5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1876081 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tobin Ehlis <tobine@google.com>
Xinyi He 052167bc 2019-08-13T14:09:04 Vulkan: Mipmap is unconditionally enabled in ANGLE ANGLE always enables the Mipmap. The fix does redefining the image with mipmaps and replace the origin one only when it is necessary. Bug: angleproject:3737 Change-Id: Ia33a16fd7feae303fb114988059c4eec58c4232d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1750627 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Ian Elliott <ianelliott@google.com>
Tobin Ehlis 88a99e43 2019-10-23T12:07:41 Vulkan:Roll Loader Update loader to version that will make sure the VK_ICD_FILENAMES env variable is always picked up on Windows. Bug: angleproject:2464 Change-Id: I6c161c00e0af708f288f59fc62b9cb9d6f131626 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1876451 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tobin Ehlis <tobine@google.com>
Tobin Ehlis 710040a3 2019-10-22T10:32:27 OES_depth32 is for render buffer capability Our format caps table was incorrectly reporting GL_DEPTH_COMPONENT32_OES supported as a texture or texture attachment if OES_depth32 extension is supported. However, the OES_depth32 extension spec says: This extension enables 32-bit depth components as a valid render buffer storage format. So texture and texture attachment should not be reported as supported if OES_depth32 is available but neither GL_ANGLE_depth_texture or GL_OES_depth_texture are supported, which is currently the case for swiftshader. Bug: angleproject:3952 Change-Id: Ia29853229de9ff0918d6752631edfccf5f2ba3f8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1874007 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Tobin Ehlis <tobine@google.com>
Tobin Ehlis 08af1c80 2019-10-22T08:58:52 Vulkan:Store full 64bit handle in GarbageObject On 32bit builds we were only storing 32bit handles for non- dispatchable objects. This resulted in the handles getting shrunk from 64-bits which then led to false validation errors. Fixed this by using VK_DEFINE_NON_DISPATCHABLE_HANDLE() macro in GarbageObject instead of VK_DEFINE_HANDLE(). Also MSVC on Win32 didn't like reinterpret_cast<> with the updated 64bit handles so migrated a number of GarbageHandle casts to be c-style which is contrary to style guide, but is preferable to conditional code. Bug: angleproject:3924 Bug: angleproject:3946 Change-Id: Icb4139e34989179e46ac1f0c76269ff49ab1e897 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1873244 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll a1ed9d1a 2019-10-23T07:01:20 Roll third_party/SwiftShader a68a80a4dbf9..7738ed713e7b (6 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/a68a80a4dbf9..7738ed713e7b git log a68a80a4dbf9..7738ed713e7b --date=short --no-merges --format='%ad %ae %s' 2019-10-22 amaiorano@google.com Fix sRGB conversion not applying generally 2019-10-22 bclayton@google.com regres: Automatically build dEQP based on new config file 2019-10-22 amaiorano@google.com Fix unary minus warnings 2019-10-21 sugoi@google.com Enable support for Bresenham lines 2019-10-21 sugoi@google.com Fix queries with arrays containing other structures 2019-10-18 amaiorano@google.com Fix Win32SurfaceKHR resize issues Created with: gclient setdep -r third_party/SwiftShader@7738ed713e7b 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 jonahr@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: angleproject:4011,angleproject:4034 TBR=jonahr@google.com Change-Id: If970eee12d3553e8fdc2c333028b8289ebf6832a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1875374 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill a9f11bf1 2019-10-21T08:39:14 GN: Separate out constructor/destructor warnings. This will allow for the capture/replay sample to disable the warnings. We'd like to keep them enabled for most of ANGLE code. Bug: angleproject:3611 Change-Id: I3cc7af26fa54c03cc5b79727e7b403a1b218a903 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869544 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Le Quyen a48f95ab 2019-10-14T14:49:49 Move Vulkan GlslangWrapper code to a shared location. Metal backend will reuse Vulkan's GlslangWrapper code. The Metal backend will use this code to translate glsl to spirv then cross compile to Metal Shading Language using spirv-cross. So the source code of GlslangWrapper should be moved outside vulkan folder. Bug: angleproject:2634 Change-Id: I208062daf0d77756c9d32cfdab925b7dfdf83e05 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1858042 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill d4affcdd 2019-10-22T12:32:04 Vulkan: Roll validation layers. Includes a fix necessary for multithreading tests. Bug: angleproject:2464 Change-Id: I009e48be611ef7b96ad9caba8e0729881e1a8fb9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1872789 Reviewed-by: Tobin Ehlis <tobine@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 1efcbdb6 2019-10-22T12:32:04 Vulkan: Fix sampler object lifetime. Using the same scheme as we do for VkImageViews we can track VkSampler lifetime using SharedResourceUse. This fixes the race condition that could occur when samplers are deleted in one Context while being used in another. This fixes the last known resource lifetime issue. The multithreading tests should now pass without validation errors. Also adds regression tests to angle_end2end_tests. Bug: angleproject:2464 Change-Id: I9dbed5062a0863b240ddf1a9b5d28560334934de Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869548 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Tim Van Patten <timvp@google.com>
jchen10 df9a7500 2019-10-21T15:32:27 Remove forceNonZeroScissor workaround The original driver bug no longer exists after upgrading the bots. This workaround has the side effect causing the bug 3867. Bug: angleproject:3407 Bug: angleproject:3867 Change-Id: I64f2e41729f209a1cef5ba49140650207666992c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1870845 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
jchen10 b3070102 2019-10-18T16:01:34 Add SH_REMOVE_DYNAMIC_INDEXING_OF_SWIZZLED_VECTOR This is a workaround for the webgl2 conformance test case WebglConformance_conformance2_glsl3_vector_dynamic_indexing_swizzled_lvalue. Dynamic indexing of swizzled lvalue like "v.zyx[i] = 0.0" is problematic on various platforms. This removes the indexing by translating it this way: void dyn_index_write_vec3(inout vec3 base, in int index, in float value){ switch (index) { case (0): (base[0] = value); return ; case (1): (base[1] = value); return ; case (2): (base[2] = value); return ; default: break; } if ((index < 0)) { (base[0] = value); return ; } { (base[2] = value); } } ... dyn_index_write_vec3(v.zyx, i, 0.0); ... Bug: chromium:709351 Change-Id: I971b38eb404209b56e6764af1063878c078a7e88 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869109 Commit-Queue: Jie A Chen <jie.a.chen@intel.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 0b779a7c 2019-10-10T14:54:09 GL: Emulate primitive restart when PRIMITIVE_RESTART_FIXED_INDEX is unavailable. PRIMITIVE_RESTART_FIXED_INDEX isn't available until desktop GL 4.3. When it is not available, emulate it by enabling PRIMITIVE_RESTART and set the primitive restart index before each draw call based on the index type. TEST=deqp/functional/gles3/primitiverestart/* BUG=angleproject:3997 Change-Id: Id736f1056cb07da91c6d592693406333142e6265 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1853885 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Tobin Ehlis be1fa7d8 2019-10-16T16:34:57 Vulkan: Enable VK_EXT_line_rasterization Plumbing to make ANGLE use VK_EXT_line_rasterization extension when available. Bug: angleproject:3981 Change-Id: I12913c20bff69ab0b7c16462c10b8b5fd8e1c2a5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1865027 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Alexis Hétu <sugoi@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Mingyu Hu 9122bec2 2019-10-21T11:03:48 Fix EXT_multisample_render_to_texture perf regression EXT_multisampled_render_to_texture was causing perf degradation through multiple unnecessary creation/destruction of the shadow multisampled texture. This is solved by keeping around the multisampled texture, so both will be available. Bug: chromium:1015031 Change-Id: I44deee67c02c19bc8749d3ed0d45661f52902e72 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1872618 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 89eda11e 2019-10-22T08:08:30 Metal: Move ldflags to Metal backend config. ldflags apparently don't work in source_sets. Bug: chromium:1014228 Change-Id: I123900ae7f7ef3705301dc9b78cdf92ebd0e5c4f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1873235 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll 66aae7e6 2019-10-22T07:01:09 Roll third_party/glslang/src 834ee546f93d..5e634c8999e6 (3 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/834ee546f93d..5e634c8999e6 Created with: gclient setdep -r third_party/glslang/src@5e634c8999e6 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC jonahr@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jonahr@google.com Change-Id: Ie6d635a2afa818b4d12347528dd50bb32e69066a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1873103 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jonah Ryan-Davis 5335faae 2019-10-21T15:46:46 Robust validate_step_info in generate_stats.py If there is a warning during validate_step_info and the step_info is None, the script should not attempt to update that step in the Spreadsheet object. Bug: angleproject:4030 Change-Id: Ib94ba82219745ee4ab36c52e9b1d3a04a76a05d2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1872569 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Courtney Goeltzenleuchter f228038d 2019-10-17T11:18:47 Treat Pixel 2 XL and Pixel 2 the same When running on a Pixel 2 XL PIXEL2 expecations were not being applied. Both devices use the same chipset and have same capabilities so treat them the same for expectations. Bug: angleproject:4025 Change-Id: I5287e80c21b681765af540ed6dfbd053aa838c1c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866076 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tim Van Patten 4a80ba25 2019-10-10T17:07:26 Vulkan: Ignore VK_INCOMPLETE from vkGetPipelineCacheData From vkGetPipelineCacheData(3) Manual Page: If pDataSize is less than the maximum size that can be retrieved by the pipeline cache, at most pDataSize bytes will be written to pData, and vkGetPipelineCacheData will return VK_INCOMPLETE. Any data written to pData is valid and can be provided as the pInitialData member of the VkPipelineCacheCreateInfo structure passed to vkCreatePipelineCache. Bug: angleproject:3988 Test: CQ, CtsOpenGLTestCases Change-Id: I34589ee3c9e27839a9cd0168b4a2186f4cbb255e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854680 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Tobin Ehlis <tobine@google.com>
Jamie Madill 68591eff 2019-10-13T15:05:23 Vulkan: Store ImageView access in the graph. This will ensure we don't destroy the image views when they are still in use by other Contexts. Bug: angleproject:2464 Change-Id: I1d3ba2ad241250e31ea32873446c4cb23971750d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1843236 Reviewed-by: Tim Van Patten <timvp@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill f939cb63 2019-10-20T21:44:36 Revert "Reland "Add more test_utils functions."" This reverts commit 7923e234bc458eda5936b8cb4f09fa19e28c0452. Reason for revert: Fails compilation on rollers: [2097/6048] SOLINK ./lib_angle_unittests__library.cr.so FAILED: lib_angle_unittests__library.cr.so lib_angle_unittests__library.cr.so.TOC lib.unstripped/lib_angle_unittests__library.cr.so python "../../build/toolchain/gcc_solink_wrapper.py" --readelf="../../third_party/android_ndk/toolch...(too long) ld.lld: error: undefined symbol: glCreateShader >>> referenced by shader_utils.cpp >>> angle_util_static/shader_utils.o:(CompileShader(unsigned int, char const*)) in archive obj/third_party/angle/libangle_util_static.a ld.lld: error: undefined symbol: glShaderSource Original change's description: > Reland "Add more test_utils functions." > > This is a reland of 5fcfcea4a9379633a83a67fc1d94938cb31f2a9c > > Re-land uses static linking with angle_util. The root cause > of the CFI error wasn't solved. Static linking works around > the problem by not using any export rules. > > Original change's description: > > Add more test_utils functions. > > > > Includes methods for creating temporary files, deleting files, and > > reading files into a string. Also renames GetPathSeparator to mention > > it's only used for environment variables. Includes a new virtual type > > angle::Process that will be used to implement cross-platform async > > Process launching for tests. Also includes a way to specify a custom > > crash handler callback. > > > > Also adds a few unit tests for the new functionality. They are disabled > > on Android because the functions are not needed by the new test runner. > > > > Bug: angleproject:3162 > > Change-Id: I3e2c2e9837608884c98379fa0f78c9ffbe158d73 > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821940 > > Commit-Queue: Jamie Madill <jmadill@chromium.org> > > Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> > > Bug: chromium:1015810 > Bug: angleproject:3162 > Change-Id: I6a2c1e7b585a13ca846759f32da0777c00d7f7e6 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869541 > Commit-Queue: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> TBR=ynovikov@chromium.org,jonahr@google.com,jmadill@chromium.org Change-Id: I975b2214411906cb981bffa04fa50e0a65ff8b4e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1015810, angleproject:3162 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1870811 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 7923e234 2019-10-09T10:26:25 Reland "Add more test_utils functions." This is a reland of 5fcfcea4a9379633a83a67fc1d94938cb31f2a9c Re-land uses static linking with angle_util. The root cause of the CFI error wasn't solved. Static linking works around the problem by not using any export rules. Original change's description: > Add more test_utils functions. > > Includes methods for creating temporary files, deleting files, and > reading files into a string. Also renames GetPathSeparator to mention > it's only used for environment variables. Includes a new virtual type > angle::Process that will be used to implement cross-platform async > Process launching for tests. Also includes a way to specify a custom > crash handler callback. > > Also adds a few unit tests for the new functionality. They are disabled > on Android because the functions are not needed by the new test runner. > > Bug: angleproject:3162 > Change-Id: I3e2c2e9837608884c98379fa0f78c9ffbe158d73 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821940 > Commit-Queue: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Bug: chromium:1015810 Bug: angleproject:3162 Change-Id: I6a2c1e7b585a13ca846759f32da0777c00d7f7e6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869541 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill beacd8c8 2019-10-17T14:34:02 Vulkan: Rename format fields. Renames 'angleFormat' to 'intendedFormat'. Also renames 'bufferFormat' and 'imageFormat' to 'actualImageFormat' and 'actualBufferFormat'. This renaming should make it clearer to the reader what the meaning of the different format fields are. Intended format is the front-end format and the actual formats are the formats we pass to Vulkan. Also updates the documentation. Bug: angleproject:4009 Change-Id: If61bf7250e88f7ed3d452718574c963d718e27b2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866077 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill d739727b 2019-10-20T11:36:10 Remove Vulkan repos from exec script whitelist. This is no longer needed with the static generated code baking. Bug: angleproject:3320 Change-Id: Id549792bf0e1d3e0433904a666d70630278b15c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869547 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 01634704 2019-10-20T13:15:08 Revert "util: Always specify default visibility on exports." This reverts commit 2bf23ea84e4f071c18f01b94748f3be7dccc4019. Reason for revert: Probably not the right fix. Will export all angle_utils symbols in places where they shouldn't be. Original change's description: > util: Always specify default visibility on exports. > > This fixes undefined behaviour with CFI. > > Bug: chromium:1015810 > Bug: angleproject:3162 > Change-Id: I58cfb78adabbff05e5b4560dfd70b190411fa26d > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869303 > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Commit-Queue: Jamie Madill <jmadill@chromium.org> TBR=ynovikov@chromium.org,jmadill@chromium.org Change-Id: Ie847a9e6506178eb2b14e63a1ee5e9a1775b4548 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1015810, angleproject:3162 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869546 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2bf23ea8 2019-10-18T17:07:21 util: Always specify default visibility on exports. This fixes undefined behaviour with CFI. Bug: chromium:1015810 Bug: angleproject:3162 Change-Id: I58cfb78adabbff05e5b4560dfd70b190411fa26d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869303 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Lan Wei 0cb09633 2019-10-18T15:50:10 Revert "Add more test_utils functions." This reverts commit 5fcfcea4a9379633a83a67fc1d94938cb31f2a9c. Reason for revert: 1 Test Suite(s) failed. angle_unittests failed because of: TestUtils.RunApp on Linux CFI https://ci.chromium.org/p/chromium/builders/ci/Linux%20CFI Original change's description: > Add more test_utils functions. > > Includes methods for creating temporary files, deleting files, and > reading files into a string. Also renames GetPathSeparator to mention > it's only used for environment variables. Includes a new virtual type > angle::Process that will be used to implement cross-platform async > Process launching for tests. Also includes a way to specify a custom > crash handler callback. > > Also adds a few unit tests for the new functionality. They are disabled > on Android because the functions are not needed by the new test runner. > > Bug: angleproject:3162 > Change-Id: I3e2c2e9837608884c98379fa0f78c9ffbe158d73 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821940 > Commit-Queue: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> TBR=ynovikov@chromium.org,jonahr@google.com,jmadill@chromium.org Change-Id: I1441bfbae31712f72b4aebeeea9cd711c3975a5d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:3162 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1869254 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Ian Elliott 72b2be2e 2019-10-18T09:52:27 Vulkan: Add expectations for Swiftshader dEQP failures. Bug: angleproject:3952 Bug: angleproject:4011 Bug: angleproject:4013 Change-Id: Ia490ea1db052c31f5517822965b28d80b98dcc68 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1865438 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Courtney Goeltzenleuchter 7f418fc2 2019-10-01T07:56:53 Vulkan: lineloop support for DrawArrayIndirect Add support for lineloops. Includes a compute shader for generating an index buffer to draw lineloop. Instancing turns out to be a special case for indirect draws if we have vertex attributes that need to be emulated (e.g. divisor too large or native vertex format not available). Test: dEQP.GLES31/functional_draw_indirect_* angle_end2end_tests --gtest_filter=LineLoopIndirectTest.*/* dEQP.GLES3/functional_draw_* Bug: angleproject:3564 Change-Id: I1fdabe2c8a690c8b6df9e252e1e839e08796bcca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1834682 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll 299bea64 2019-10-18T07:01:09 Roll third_party/glslang/src a959deb00750..834ee546f93d (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/a959deb00750..834ee546f93d Created with: gclient setdep -r third_party/glslang/src@834ee546f93d If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@google.com Change-Id: Id5a849aaf30be27f8ef981e4b91da0e627682746 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1868829 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll c6db4a03 2019-10-18T07:01:19 Roll third_party/SwiftShader 6652f0b64287..a68a80a4dbf9 (1 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/6652f0b64287..a68a80a4dbf9 git log 6652f0b64287..a68a80a4dbf9 --date=short --no-merges --format='%ad %ae %s' 2019-10-17 sugoi@google.com Vulkan header update Created with: gclient setdep -r third_party/SwiftShader@a68a80a4dbf9 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 jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@google.com Change-Id: Ic469fd596d19d9279fbf529f52ad265fb2dde30f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1868830 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Tobin Ehlis 6dee176c 2019-10-17T15:26:03 Vulkan:Roll vulkan layers and headers This layer update contains a fix for x11 build. Bug: 1011068 Change-Id: I75354b51cd43d3b57f427e8505b4bb7bd3f62eed Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866960 Commit-Queue: Tobin Ehlis <tobine@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 5fcfcea4 2019-10-09T10:26:25 Add more test_utils functions. Includes methods for creating temporary files, deleting files, and reading files into a string. Also renames GetPathSeparator to mention it's only used for environment variables. Includes a new virtual type angle::Process that will be used to implement cross-platform async Process launching for tests. Also includes a way to specify a custom crash handler callback. Also adds a few unit tests for the new functionality. They are disabled on Android because the functions are not needed by the new test runner. Bug: angleproject:3162 Change-Id: I3e2c2e9837608884c98379fa0f78c9ffbe158d73 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1821940 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Geoff Lang 7e23efd3 2019-10-17T14:43:14 Fix compiler warning in NativeBufferImageSiblingAndroid.h. BUG=angleproject:4026 Change-Id: If66f21c4d5693213611b05fa71ba1da328ea612c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866078 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Tobin Ehlis 93121f36 2019-10-17T08:18:16 Make invalid extension directive a CHROMEOS warning This change allows extension directive after ESSL1.0 non-preprocessor tokens on CHROMEOS. CHROMEOS kiosks have a video player that violates this spec requirement so just flagging as a warning to prevent failed video playback. Added ANGLE_PLATFORM_CHROMEOS define to build config in order to only make this a warning on CHROMEOS. Split the ESSL1 & ESSL3 cases back out as ESSL3 had always been an error on all platforms in the past and so want to keep it that way. Bug: 1003005 Bug: angleproject:4023 Change-Id: Ia931b3a8dad82dbda4c9c9e49a9c1090116397b5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866464 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tobin Ehlis <tobine@google.com>
Geoff Lang 01cfefef 2019-10-17T14:43:43 Fix building libpng on arm CPUs. Some arm-specific files were not part of the build. BUG=angleproject:4026 Change-Id: Ie3534c66ebce53348a00f74b95b7f6e3859ee30f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866079 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Le Quyen 05bd1896 2019-10-17T23:08:03 Report Metal as unavailable Metal backend is not ready yet, so report as unavailable to avoid DisplayMtl being created by frontend. Bug: angleproject:2634 Change-Id: Ia45977cede01f62347967eefe661b63bef3575e5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1865736 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill f483d4ee 2019-10-16T14:13:17 Vulkan: Move SwiftShader ICD json to root_out_dir. This fixes loading SwiftShader in Chrome and in Renderdoc. Requires explicitly specifying the ICD and module directories ("./" or ".\\"). Bug: angleproject:3876 Bug: b/142756865 Change-Id: I9183c81cb0e8ac117fc5d7a8f2048dc0555632c4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1864315 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 48aa52f7 2019-10-17T07:56:53 Fix broken GN "all_dependent_configs". This regressed with http://crrev.com/c/1864726 . Only fails in configs that specify 'use_fuzzing_engine'. Bug: angleproject:4021 Change-Id: I7cd4ab1d91525074c44a6ea2a9d8c41d9b9e437e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866074 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Yan 3f3a6e36 2019-10-17T15:07:52 Add "DIFF_LINES_OF_CONTEXT: 1" to fix format issue Update codereview.settings file to workaround git cl format issue based on change in this https://crrev.com/c/1864309 Bug: angleproject:4003 Change-Id: I4352800535465e8cac85aa6148c21d28c099ca5a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866275 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
angle-autoroll 0da4e919 2019-10-17T07:01:20 Roll third_party/SwiftShader 9097eeb5359b..6652f0b64287 (11 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/9097eeb5359b..6652f0b64287 git log 9097eeb5359b..6652f0b64287 --date=short --no-merges --format='%ad %ae %s' 2019-10-16 amaiorano@google.com Subzero: fix calling C functions on Windows x86 2019-10-16 amaiorano@google.com Subzero: fix invalid arg access on Windows x86 2019-10-16 amaiorano@google.com Subzero: fix warnings for VS 2019 x86 build 2019-10-16 amaiorano@google.com Subzero: fix calling C functions on Windows x64 2019-10-16 amaiorano@google.com Add .clang-format file to third_party/subzero 2019-10-16 amaiorano@google.com Reactor: add test for external call to routine 2019-10-16 amaiorano@google.com Reactor: add unit tests for testing arg passing 2019-10-16 amaiorano@google.com Reactor: add overload of rr::Call for void(...) 2019-10-16 natsu@google.com Remove hardcoded sdk_versions in third_party 2019-10-16 tdusnoki@inf.u-szeged.hu Define getHostCPUFeatures for Windows on ARM64 platform 2019-10-16 srisser@google.com Fix how we calculate potential overflows with PBOs Created with: gclient setdep -r third_party/SwiftShader@6652f0b64287 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 jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@google.com Change-Id: Ib7f1f0ff7e2ce0ce648719daaf0570a879010da2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866410 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 7fa774cf 2019-10-17T07:01:18 Roll third_party/glslang/src 1ff0c181bb37..a959deb00750 (12 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/1ff0c181bb37..a959deb00750 Created with: gclient setdep -r third_party/glslang/src@a959deb00750 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@google.com Change-Id: I33039aed9d8a69b4975b9719f1e5e2293c2e934e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1866409 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill ed6e230e 2019-10-16T18:19:05 Vulkan: Re-enable release ASSERTs. This change will broadcast the release asserts config to all ANGLE targets. Instead of the ones that inherited from angle_common. Bug: angleproject:4021 Change-Id: I574b01d47e85004f69fb59856cac7b10f0d8d170 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1864726 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jonah Ryan-Davis ae1b7786 2019-10-16T16:42:53 Fix ANGLE_FEATURE_CONDITION style issue Macro should end with a ; Bug: angleproject:3976 Change-Id: I4aaa146464d9d7e6230a3de44c30cfd1179a89ae Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1864620 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 16944ed2 2019-10-16T14:05:51 Vulkan: Fix ASSERT that could be triggered on some swaps. Unclear why this wasn't reproducing on our integrated tests. Seems to affect most Vulkan tests. Regression likely introduced with the multithreading code. Bug: angleproject:2464 Change-Id: I62a0c1a4f5e5bf63efdef2a979d9b2efb6a1ea81 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1864314 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Mingyu Hu a0b064d0 2019-10-15T15:16:22 Disabling multisampled_render_to_texture extension if renderer is ADRENO. Skia roll breaking for: Test-Win10-MSVC-LenovoYogaC630-GPU-Adreno630-arm64-Debug-All-ANGLE. Bug: angleproject:4007 Change-Id: I5ba1047540c02d27e05425b7af347207500b3682 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1863741 Commit-Queue: Mingyu Hu <mihu@microsoft.com> Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 9a334fda 2019-10-16T12:48:42 Delete README.angle from googletest. This file is a bit odd. It doesn't belong in this folder. Bug: angleproject:3986 Change-Id: Idf783e469a679a73f900bb20093e7e339fab9301 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1864312 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tim Van Patten 2ed547a6 2019-10-15T17:34:09 Vulkan: Mark destination buffers dirty after a copy When a user performs a copy between GL buffers, we need to mark the destination buffer dirty in case that buffer data is used as vertex data and requires another conversion to be done. Bug: angleproject:3544 Test: dEQP-GLES3.functional.buffer.copy.* Change-Id: Ie3196db4feb0f01d0b25c8799312c5f57c1095a2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1863007 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
Jamie Madill a14555a7 2019-10-13T15:05:22 Vulkan: Refactor RenderTargetVk ImageViews. Instead of storing a pointer to an ImageView, store a pointer to an ImageViewHelper. The level and layer index are all that's needed to pull the right image view from the ImageViewHelper. Will make it easier to store ImageView references in the graph to track lifetime. Bug: angleproject:2464 Change-Id: I773fa79a89ceefc99ff70e4eed4985f9f01fe26a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1857549 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Tobin Ehlis 8952dd65 2019-10-16T13:54:38 Revert "Vulkan: Define VK_USE_PLATFORM_XLIB_KHR" This reverts commit bedeb781e8ca8a57c31b56d28ba1cde983e5ba47. Reason for revert: <INSERT REASONING HERE> Original change's description: > Vulkan: Define VK_USE_PLATFORM_XLIB_KHR > > For vulkan x11 build need to define VK_USE_PLATFORM_XLIB_KHR. > > Bug: 1011068 > Change-Id: I1ff51a37618eb3a095bdf18e0615a3610225b6fc > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1863319 > Commit-Queue: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> TBR=penghuang@chromium.org,tobine@google.com,jmadill@chromium.org Change-Id: I6cf135e36603ea01bc418fd6f7ce7f131890531e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 1011068 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1864579 Reviewed-by: Tobin Ehlis <tobine@google.com> Commit-Queue: Tobin Ehlis <tobine@google.com>
Tobin Ehlis bedeb781 2019-10-15T12:31:11 Vulkan: Define VK_USE_PLATFORM_XLIB_KHR For vulkan x11 build need to define VK_USE_PLATFORM_XLIB_KHR. Bug: 1011068 Change-Id: I1ff51a37618eb3a095bdf18e0615a3610225b6fc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1863319 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
angle-autoroll 14dd7075 2019-10-16T07:01:32 Roll third_party/SwiftShader 036463457e5f..9097eeb5359b (8 commits) https://swiftshader.googlesource.com/SwiftShader.git/+log/036463457e5f..9097eeb5359b git log 036463457e5f..9097eeb5359b --date=short --no-merges --format='%ad %ae %s' 2019-10-16 sugoi@google.com Workaround a compiler issue 2019-10-16 swiftshader.regress@gmail.com Regres: Update test lists @ a27dfcf8 2019-10-14 digit@google.com Fix Linux build. 2019-10-14 digit@google.com [vulkan] Implement Linux-based external semaphore 2019-10-14 digit@google.com [linux]: Remove linux namespace. 2019-10-11 sugoi@google.com Stencil buffer texture sampling 2019-10-07 amaiorano@google.com Add support for configurable subpixel precision 2019-10-07 amaiorano@google.com Use correct values for sampleStandardLocations Created with: gclient setdep -r third_party/SwiftShader@9097eeb5359b 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 jmadill@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=jmadill@google.com Change-Id: Ic75ba28c790bf004ce8182a201ee2dd4d43d8c9e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1864450 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill 0b9ebe58 2019-10-15T11:15:42 Vulkan: Add "ImageViewHelper". This allows views to track a different lifetime than vk::ImageHelper. This in turn will fix the race condition on ContextVk destruction when releasing ImageViews owned by TextureVk and RenderbufferVk. For now this is a refactoring change only. Bug: angleproject:2464 Change-Id: I9581975bd5d4913233bbed8439dd4a632cc78a2a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1843231 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Ian Elliott <ianelliott@google.com>
Lee Salzman 81ab9c90 2019-08-02T07:11:16 Use image upload workaround for Intel Ivy Bridge with D3D11 renderer. Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1578910 Bug: angleproject:3980 Change-Id: Ia14c5afd989365975bc57b303e59b4ef7669d522 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1845664 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Mingyu Hu 2d0e5b55 2019-08-27T13:49:07 GL_EXT_multisampled_render_to_texture extension. Part 2. For textures that use this extension, a multisampled texture is implicitly created for the texture. Upon write or read, the multisampled texture is either return to be drawn to or resolved and returned as a single sampled texture. This is the functionality change with end2end tests. Bug: angleproject:980428 Change-Id: I5776875a132fed7a3f4f00fb02f9e8e250684630 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1773717 Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
James Darpinian acf66fdd 2019-10-11T16:38:09 Fix registry_xml.py dependency registry_xml.py was not included in gen_gl_enum_utils.py inputs. gen_gl_enum_utils might not run when it should because of this missing dependency. Discovered in https://chromium-review.googlesource.com/c/angle/angle/+/1838418/6/src/libANGLE/gl_enum_utils_autogen.cpp#1810 Bug: angleproject:4000 Change-Id: Ib98df7046a59800c102be54b44f46a203ba77c42 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1857645 Commit-Queue: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill e7b5c5e9 2019-10-14T16:33:40 Metal: Use -weak_framework to support OS 10.10. This OS is still tested in Chromium configurations. e.g.: https://ci.chromium.org/p/chromium/builders/ci/Mac10.10%20Tests/47668 Bug: chromium:1014228 Bug: angleproject:2634 Change-Id: Iadefd461ba8bbaec03dcc711227580f6ecdcad6a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1860105 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Brian Sheedy da1f90aa 2019-10-14T10:08:54 Add .yapfignore file Adds a .yapfignore file so that Python files can be excluded from "git cl format". This currently only ignores scripts/export_targets.py since its use of Python 3 causes issues. This requires depot_tools revision 59b06a838a4e06c43075db252921f4bd45f7f673 or later to work, as .yapfignore files were unused until then. Bug: angleproject:3985 Change-Id: Ib9e10f6b5d6baf6b87e7edd0525885553508829d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1860319 Commit-Queue: Brian Sheedy <bsheedy@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill fede5cb6 2019-10-12T14:43:26 Vulkan: Remove resource destruction layer suppressions. Bug: angleproject:3925 Change-Id: Ic2bda7daf67c6fa735c15735dcb60c5f9a203fc0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1857895 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jiajie Hu a2f89c00 2019-10-12T13:40:03 Add sampler array index validation for ESSL 3.00 onwards In Section 12.30 of the ESSL 3.00 spec on p143-144: Indexing of arrays of samplers by constant-index-expressions is supported in GLSL ES 1.00. A constant-index-expression is an expression formed from constant-expressions and certain loop indices, defined for a subset of loop constructs. Should this functionality be included in GLSL ES 3.00? RESOLUTION: No. Arrays of samplers may only be indexed by constant- integral-expressions. Bug: chromium:985032 Change-Id: Iad9e4b8000b442a6631e1d2295c2670c4a79d486 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1849452 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 130fdbcc 2019-10-10T19:13:07 Roll chromium_revision 43eb5958f7..9325340209 (704334:704874) Change log: https://chromium.googlesource.com/chromium/src/+log/43eb5958f7..9325340209 Full diff: https://chromium.googlesource.com/chromium/src/+/43eb5958f7..9325340209 Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/fd0d28db80..592281c03c * testing: https://chromium.googlesource.com/chromium/src/testing/+log/9d2d0dad36..6752fa027a * third_party/fuchsia-sdk: https://chromium.googlesource.com/chromium/src/third_party/fuchsia-sdk.git/+log/5fd29151cf..1785f0ac8e * third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest.git/+log/cd17fa2abd..f2fb48c3b3 * third_party/libjpeg_turbo: https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git/+log/6dcdade882..9d3bf3e968 DEPS diff: https://chromium.googlesource.com/chromium/src/+/43eb5958f7..9325340209/DEPS No update to Clang. Bug: angleproject:3986 Change-Id: I38b789bea72b140191888ae20e8fff9b892108bc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854681 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 1948af38 2019-10-11T17:49:24 Add a roll_deps script based on WebRTC. Should make the process of rolling Chromium DEPS into ANGLE easier. Eventually we could set up an auto-roller. Original: https://webrtc.googlesource.com/src/+/master/tools_webrtc/autoroller/roll_deps.py Modified to include ANGLE's Chromium DEPS only. We will continue to use Skia's auto-roller for more one-off DEPS. Also adds a 'chromium_revision' DEPS custom variable that we could potentially use for other things like pinning a Chromium version on our testers. Sample usage: python scripts/roll_deps.py -v --clean -i -v : verbose --clean : cleans previous roll branch -i : ignore dirty tree Bug: angleproject:3986 Change-Id: I7289cf76eb5635a286c20453e846d4ff9a0481b1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1852707 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
James Darpinian c42da4e5 2019-10-03T13:46:28 Extend ANGLE_request_extension with DisableExtension ARB_texture_rectangle is the only currently supported disablable extension. This allows us to use ARB_texture_rectangle in WebGL implementations without exposing it to WebGL user shaders. Bug: angleproject:3956 Bug: angleproject:3770 Change-Id: I80b10d2e9c9feebe545ce15195721487165ecc51 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1838418 Commit-Queue: James Darpinian <jdarpinian@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Le Quyen 25301999 2019-10-11T14:49:00 Metal implementation pt 1: autogen resources Autogen format table and internal shaders for Metal. Bug: angleproject:2634 Change-Id: I4d81fcd17a0e9959ba9c38a250acc7abb168f54c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1855067 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Cody Northrop d192e933 2019-09-27T10:27:10 Vulkan: Support binding texture levels as a rendertarget This CL refactors how TextureVk handles rendertargets. It removes the single rendertarget that previously supported 2D, and expands the layer/level list of rendertargets to handle all cases. Bug: angleproject:3184 Bug: angleproject:3996 Test: Texture2DTestES3.FramebufferTextureChangingBaselevel/ES3_Vulkan Test: FramebufferRenderMipmapTest.RenderToMipmap/ES2_Vulkan Test: FramebufferRenderMipmapTest.RenderToMipmap/ES3_Vulkan Test: ComputeShaderTest.ImageStoreMipmapSlice/ES3_1_Vulkan Change-Id: I466d0389cc6744994f88c40cc388fca694b53a99 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854895 Reviewed-by: Ian Elliott <ianelliott@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Tobin Ehlis bbf0ce28 2019-10-11T06:55:36 Vulkan:Add support to stage D or S textures Correctly set image aspect for depth or stencil texture staging. This fixes 6 failing dEQP 3.0 tests and an end2end test. Note that DS combined aspect textures will need special handling to read each aspect separately which is not included in this fix. Bug: angleproject:3949 Change-Id: I8e3f8166bdd31e2c002752b2f5c107ba411b2b0d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1855964 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Ian Elliott 741c0aa6 2019-10-10T15:26:07 Vulkan: Update GLES 3.0 expectations files Helping team understand what's still crashing/failing within the 3.0 expectations files. Bug: angleproject:2950 Change-Id: I63f1d05ae60e34d423fd4b962a79c21ae813e335 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854015 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Commit-Queue: Ian Elliott <ianelliott@google.com>
Brandon Schade 4398b2b6 2019-10-10T16:39:33 Vulkan: finishToSerial only if the buffer is in use The call to flushImpl() was conditioned on the buffer being used but the call to finishToSerial() was outside. This caused an unconditional wait and unnecessary pipeline stall. The fix is to make sure to perform a flush and wait only when the buffer is in use. Bug: angleproject:3994 Change-Id: I1b297cf11a67f7611d37808cb111d6b52ac16f90 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854881 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Cody Northrop f912b294 2019-10-10T15:32:14 Vulkan: Handle 2Darray base/max level change When staging updates to the vkImage based on texture base/max level change, we weren't properly handling texture 2Darray. This CL changes several helpers to explicitly accept Vulkan extents and offsets so it is clear how things should be treated. Bug: angleproject:3991 Test: dEQP-GLES3.functional.shaders.texture_functions.texturesize.*sampler2darray* Change-Id: Iae80ce7201180224fc3bb7823f21a360950c515d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854020 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Jonah Ryan-Davis a21362f5 2019-10-10T15:26:19 GL: Missing check for texture format sample counts ANGLE was hitting an issue running on llvmpipe because llvmpipe doesn't properly implement texture formats with multisampling, but claims otherwise to be OpenGL 3.3 compliant. ANGLE did not validate the claim on the backend, so the frontend was hitting an ASSERT that failed. This patch makes sure to validate this part of the spec, and limits the driver to OpenGL 2 if it's not conformant. Bug: 976382 Change-Id: I6ad6d757e26f90068df83aeb3caf7685aa2f1c07 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1853889 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
angle-autoroll 67486ec2 2019-10-11T07:01:21 Roll ./third_party/spirv-tools/src 82f84c4b8f19..feb154921397 (3 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/82f84c4b8f19..feb154921397 Created with: gclient setdep -r ./third_party/spirv-tools/src@feb154921397 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 geofflang@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=geofflang@google.com Change-Id: I634d8c04a62c67f257422f23cb3d8e518db3891b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854940 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 3a1e314b 2019-10-11T07:01:14 Roll ./third_party/glslang/src 4b97a1108114..1ff0c181bb37 (1 commits) https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/4b97a1108114..1ff0c181bb37 Created with: gclient setdep -r ./third_party/glslang/src@1ff0c181bb37 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/glslang-angle-autoroll Please CC geofflang@google.com on the revert to ensure that a human is aware of the problem. To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md Bug: None TBR=geofflang@google.com Change-Id: I5eb0a962ce4b62241f604ae17c6494faa01185fb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854939 Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Jamie Madill a5f5e777 2019-10-10T21:21:51 D3D11: Fix warning that showed up in VS2019. Was related to the new D3D11on12 code. Bug: angleproject:3986 Change-Id: I801b816c620a7307ee5a236856949866a8daf747 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854720 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Sergey Ulanov 6950a87f 2019-10-10T18:01:23 [Fuchsia] Exclude libvk_swiftshader.so on Fuchsia libvk_swiftsahder.so was pulled on web_engine package after swiftshader was enabled in Angle. We don't need it so it can be excluded. This is a reland of https://chromium-review.googlesource.com/c/angle/angle/+/18228630 . Bug: fuchsia:37278 Change-Id: I4de8c7fe4706104791dfe5fc9b4e021db9f2948b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1854883 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tim Van Patten d37992d1 2019-10-04T10:13:23 Vulkan: Prevent Creating ES 3.0 Context if Min. Caps. Not Met ANGLE should not allow creating an ES 3.0 context if the device's maxPerStageDescriptorUniformBuffers or maxVertexOutputComponents values are too low to support the necessary minimums for GLES 3.0. Bug: angleproject:3938 Test: CQ Change-Id: I4fce841d1f364c1aef1a883fa5edb64a4b93f08e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1841971 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
jchen10 8896e18e 2019-10-08T16:07:52 Fix the missing global memory barriers This adds the transtlations of GL_SHADER_IMAGE_ACCESS_BARRIER_BIT, and GL_FRAMEBUFEER_BARRIER_BIT to the vulkan backend. Bug: angleproject:3934 Change-Id: I2bd86a16b461cf7dc01d0d4386f49365a5292446 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1847172 Commit-Queue: Jie A Chen <jie.a.chen@intel.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Mohan Maiya ee08d924 2019-10-10T08:56:12 Vulkan: Enable GL_OES_EGL_image_external_essl3 GL_OES_EGL_image_external_essl3 support was added a while back. This patch just enables it for the Vulkan backend Bug: angleproject:2668 Test: ./angle_end2end_tests --gtest_filter=ImageTestES3*Vulkan Change-Id: I6b8b1f63ed6e9faafe668ad9a73fc7fbc9c17670 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1852190 Commit-Queue: Mohan Maiya <m.maiya@samsung.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 8ba50490 2019-10-10T17:46:54 Use relative paths/hooks in DEPS. Should work now that infra changes landed some time ago. Will make it easier to use an auto-roller for Chromium DEPS. Bug: angleproject:3986 Change-Id: I73ab20b516c4b9105bb4854549dcadb1892f3de9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1852708 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Alexis Hetu cea73963 2019-10-10T11:56:45 Vulkan: Base max renderbuffer size on max framebuffer size maxRenderbufferSize was based on max2DTextureSize, which is larger in SwiftShader than maxFramebufferX. This was causing the dEQP-GLES3.functional.shaders.builtin_functions.precision.* tests to create rendertargets that were too large for what SwiftShader supports. Adding checks for maxFramebufferX values on top of the max2DTextureSize check fixes all the tests. Bug: angleproject:3990 Change-Id: I006d2ddeb0f7e582d6aef88457cfb292efd5a05c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1852709 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 67a017f4 2019-10-10T15:27:27 Checkout GLES 1.1 conformance from DEPS. This follows a pattern in Chromium where they are slowly removing src-internal and moving to the public DEPS. Also removes the angle-internal dependency and removes the folder from .gitignore so developers can clean it up. Bug: angleproject:3993 Change-Id: I51a169fbff5bf629f03038c0870873cf9f5e3863 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1853888 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill 32bee0fd 2019-10-10T11:46:58 Fix debug layers being disabled everywhere. The define that controlled the debug layer preference was mistakenly checking a Vulkan define. When the Vulkan define was moved into the Vulkan back-end then the layers became disabled for all back-ends. Fix this by using a layered check in the Vulkan back-end and restoring the asserts enabled check to ShouldUseDebugLayers. Suppresses some tests that regressed the layers after they were broken. Bug: angleproject:3987 Bug: angleproject:3991 Change-Id: I6aafcff6d9e19866c2324663ef4d4550e97fcfb8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1852706 Reviewed-by: Tobin Ehlis <tobine@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Alexis Hetu 4210e49b 2019-10-10T14:22:03 Correct presubmit error for missing Bug ID Having a Bug ID is not enough to silence this error, the Bug ID must be on the line directly above the Change ID line to prevent getting this error. Bug: angleproject:3992 Change-Id: I90ec1169efb77c1be6a1004e579f16e89115be50 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1853604 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Geoff Lang 73872582 2019-10-10T10:11:11 Update some implementation limits to match modern drivers. Raise the implementation limits for some caps that should not affect performance and add a logging mode to print when caps have been limited. Fix missing caps limitation of max texture sizes. BUG=angleproject:2915 Change-Id: I51bd9544e1e1a9582e2beed61c624ef2b7079e99 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1852705 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Le Quyen d200a77a 2019-10-10T00:44:01 Metal backend skeleton implementation. Bug: angleproject:2634 Change-Id: I34be82f4a80a6851fecb53a51e069b134d82613a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1849079 Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Ian Elliott aa292a59 2019-10-10T08:22:04 Generate GLES 3.2 entry points This is a combination of: - Changing the "scripts/generate_entry_points.py" script to tell it to also auto-generate GLES 3.2. Also changing "scripts/gen_proc_table.py". - Generating new and modified files needed to add GLES 3.2 to the ANGLE front-end. This is done by running the following command: "python scripts/run_code_generation.py". - Creating the following files: - src/libANGLE/validationES32.h - src/libANGLE/validationES32.cpp - src/libANGLE/capture_gles_3_2_params.cpp - Hand-editing the following files: - src/libGLESv1_CM/libGLESv1_CM.cpp - include/GLES2/gl2ext_angle.h - src/libGLESv2.gni - src/libANGLE/Context.h - src/libANGLE/Context.cpp - src/libANGLE/Context_gl.cpp - src/libANGLE/ErrorStrings.h - src/libANGLE/State.h - src/libANGLE/validationES1.cpp - src/libANGLE/validationGL3.cpp - src/libANGLE/validationGL31.cpp - src/libANGLE/validationGL32.cpp - src/libANGLE/validationGL33.cpp - src/libANGLE/validationGL4.cpp - src/libANGLE/validationGL43.cpp - src/libANGLE/validationGL45.cpp Bug: angleproject:3649 Change-Id: I5b67f72e3e3b55e74039ec3e28aa8d399ec08cf2 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1850231 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Ian Elliott <ianelliott@google.com>
Le Quyen 6e653981 2019-10-09T15:19:02 Added PVRTC compression extension needed for Metal on iOS. Bug: angleproject:2634 Change-Id: I413f754fe5551b1e248bc2b824b327b92d8c70f9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1849076 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>