Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| c009255c | 2018-05-08 10:47:23 | Update cq.cfg with new builders. These builders are replacing the old standalone builders and the old compile-only builders. They should be much faster. They also can be extended in the future when we support running tests from ANGLE standalone. Bug: chromium:833999 Change-Id: Ice44c0fb8cb32d8be573f81d5df858509b00a107 Reviewed-on: https://chromium-review.googlesource.com/1049959 Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 3b9b027c | 2018-04-30 16:27:24 | Add basic tests of (unsafe) multithreaded contexts. BUG=angleproject:2464 Change-Id: Ia0f0788a1bc4d2ecd883b058f15c629cac5fd166 Reviewed-on: https://chromium-review.googlesource.com/1036063 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| 9f394f8c | 2018-05-07 15:42:25 | Fix use-after-free in drawQuad with useVertexBuffer false quadVertices.data() pointer needs to remain valid until drawArrays is called. To guarantee that quadVertices should stay in the stack until the end of drawQuad(). BUG=angleproject:2533 TEST=angle_end2end_tests Change-Id: I263262db9a9ed9c9cd0d8679addd09677ad7179e Reviewed-on: https://chromium-review.googlesource.com/1046600 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| fad918f8 | 2018-05-07 09:17:30 | ANGLETest: Reuse test windows per-renderer When running angle_end2end_tests unfiltered with the OpenGL and Vulkan backends enabled, the test window was recreated all the time and grabbed focus every-time it was created. This made it impossible to do anything with the machine running the tests. Fix this by having one OSWindow per renderer group that's lazily created: this solves most of the issue since only a couple windows end up being created, and at the beginning of the test suite. BUG= Change-Id: I7a51300f0d59d8b6bb79e54d20b3acbf01068002 Reviewed-on: https://chromium-review.googlesource.com/1038433 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 54aafe58 | 2018-04-27 14:54:57 | Use ShaderMap in Caps - Part I This patch is the first one of the series that organize implementation dependent resource limits on every type of shader into ShaderMap and clean up all the related code. In the next patch all such resource limits are put in the corresponding ShaderMaps. BUG=angleproject:2169 Change-Id: I40cb58c55b2e82df33221ddb36eff0abcd7e8b22 Reviewed-on: https://chromium-review.googlesource.com/1034108 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| e88e4548 | 2018-05-03 15:05:57 | Implement extensions exposing ETC2 compressed texture formats in ES2. BUG=angleproject:2527 Change-Id: I000f68366de4119375b6d3c79bc2eff3ebd5db9e Reviewed-on: https://chromium-review.googlesource.com/1042885 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| 983460e6 | 2018-05-02 17:57:39 | Rewrite repeated assignments to swizzled vectors on NVIDIA This works around the most common instances of a bug that reproduces on some NVIDIA OpenGL drivers prior to version 397.31. BUG=chromium:798117 TEST=angle_end2end_tests Change-Id: Iafc6a9a64e56fa98b42117149fe6867040e932e5 Reviewed-on: https://chromium-review.googlesource.com/1042190 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 7a8fe156 | 2018-04-28 12:59:58 | ES31: Add link validation on MAX_COMBINED_SHADER_OUTPUT_RESOURCES This patch adds the link validation on the maximum combined shader output resources required in OpenGL ES 3.1 SPEC. OpenGL ES 3.1 SPEC has restrictions on the sum of the number of all active images, shader storage blocks and fragment shader outputs. A link error will be generated if this sum exceeds the implementation- dependent value of MAX_COMBINED_SHADER_OUTPUT_RESOURCES. In order not to affect the existing image tests, this patch also sets a temporary value for maxCombinedShaderOutputResources on D3D11 back-ends. We will set more accurate values for all the UAV related resource limits in the next patch. BUG=angleproject:2345 TEST=dEQP-GLES31.functional.state_query.integer.max_combined_shader_output_resources_* Change-Id: Ib83a19ef0ae0b9af3422b5c970c7c07d96b2359d Reviewed-on: https://chromium-review.googlesource.com/1039155 Commit-Queue: Jiawei Shao <jiawei.shao@intel.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| 41e59f55 | 2018-05-02 12:45:28 | Autogenerate libGLESv2.cpp and .def Add generation of libGLESv2.cpp and libGLESv2.def to generate_entry_points.py Bug: angleproject:2476 Change-Id: I86c7fb31f73ccbbbc32b28acca179b11527dff9e Reviewed-on: https://chromium-review.googlesource.com/1040647 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| d7b56642 | 2018-04-27 16:59:36 | Fix blit rect calculations on D3D11 backend The D3D11 backend used to calculate the blit areas incorrectly when the source blit area provided via the API stretched outside the source framebuffer in all directions. This is now fixed and the code is also simplified. BUG=angleproject:2521 TEST=angle_end2end_tests Change-Id: I46d5de27464a8455b3956c0be598f75550ca1616 Reviewed-on: https://chromium-review.googlesource.com/1032787 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> | ||
| aae572a5 | 2018-04-28 15:14:31 | Disable avoid1BitAlphaTextureFormats workaround on Intel avoid1BitAlphaTextureFormats workaround was added to angle in 288584 due to an old driver bug on Intel and AMD that 1-bit alpha always rounds up when converting from float to unsigned int. The workaround uses rgba8 instead of *a1 to avoid the driver bug and optimizes precision. However, this workaround brings a new issue because 1-bit alpha can only represent u0 or u1 while 8 bits alpha covers from u0 to u255. For example, if we expect to render to a rgb5_a1 renderbuffer, the expected alpha value should be 0 or 255, but actually get a value between 0 and 255 which is incorrect. The current Intel drivers have fixed the old driver bug. So we suggest to disable this workaround for Intel drivers. TEST=dEQP_GLES2.Default/functional_fbo_render_color_clear_rbo_rgb5_a1_depth_component16_stencil_index8 --deqp-egl-display-type=angle-gl BUG=angleproject:2349 Change-Id: I14933f92fa27031ff7442fa437f77a3c67f2f1db Reviewed-on: https://chromium-review.googlesource.com/1034163 Reviewed-by: Jiajia Qin <jiajia.qin@intel.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| 03bb2231 | 2018-05-03 15:21:20 | Add test for D3D11 nested floor() bug The test fails on D3D11, which seems to ignore floor() calls if they're nested in a particular way with magic multipliers inside. BUG=chromium:838885 TEST=angle_end2end_tests Change-Id: I2c8749defa923553bfee69149da15f8e4ddf5096 Reviewed-on: https://chromium-review.googlesource.com/1041959 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> | ||
| e708f004 | 2018-05-02 09:44:01 | Set ANGLE lib apk targetSdkVersion to 28 Bug: angleproject:2418 Change-Id: Ia146c202cff96b1de9cb55ee44fa5479cef36b53 Reviewed-on: https://chromium-review.googlesource.com/1039777 Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Tobin Ehlis <tobine@google.com> | ||
| c6dbc253 | 2018-04-30 19:07:56 | Scope ANGLE_UNUSED_VARIABLE. Renames the macro to be more ANGLE-ey. Refactoring only. Bug: angleproject:1671 Change-Id: I8f2dd227c7e2025886ec66e85efa877ea261d0ad Reviewed-on: https://chromium-review.googlesource.com/1036209 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| ccafa62c | 2018-05-02 13:07:53 | Pass a context pointer to SurfaceImpl::[bind|release]TexImage. BUG=angleproject:2464 Change-Id: I59fd38c626f7076b4065f25601de3e53c1a446ad Reviewed-on: https://chromium-review.googlesource.com/1040051 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| ad3ae90a | 2018-03-09 13:40:42 | Use packed enums for QueryType. BUG=angleproject:2169 Change-Id: I129a9d8e295859daa071a298dab9fe1895315cc0 Reviewed-on: https://chromium-review.googlesource.com/957318 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org> | ||
| 9aef3670 | 2018-04-27 11:45:06 | Vulkan: Implement masked color clears. This implements masked color clear using clear shaders. The shaders themselves were introduced in a prior patch. In order to get the right setup for the draw call to trigger the shaders, we create an internal pipeline from the pipeline cache. We also use a special pipeline layout with only uniform buffers. The masked out color channels are disabled via settings on the pipeline. This fixes the dEQP masked color clear tests. It doesn't handle masked color clears combined with the depth clear bit. It's likely we don't have test coverage for this case. Bug: angleproject:2455 Change-Id: I513248cc0f7e58f490fc16ac9afb40119d730ccc Reviewed-on: https://chromium-review.googlesource.com/1031373 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| 78feddc2 | 2018-04-27 11:45:05 | Vulkan: Take serials in PipelineDesc::updateShaders. This makes the API easy to use with internal shaders and pipelines. This is useful for the implementation of masked color clear. Also renames the serials as shader serials. This is more precise than program serials. Bug: angleproject:2455 Change-Id: Ie6247d1212ed4df856b561a5e9f16c0378202588 Reviewed-on: https://chromium-review.googlesource.com/1032857 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| ec982e18 | 2018-04-30 19:06:43 | Fix ASSERT macro generating extra code in MSVC. Even on the highest optimization level MSVC was still generating extra code in Release for ASSERT macros. This realigns the code more with Chromium by using a streaming eating macro with the expression at the end. Now no code should be generating. I believe this did not affect Clang builds. Bug: angleproject:1671 Change-Id: I099c59cf0b28ae3ffc08b864982e67559901724e Reviewed-on: https://chromium-review.googlesource.com/1036208 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| 33318de4 | 2018-05-01 11:22:54 | Vulkan: Use ShaderType enum. This re-uses the same machinery as the GL front-end. It saves a lot of custom casting and array sizing. Currently we only support vertex and fragment shaders in Vulkan. Because of the Pipeline cache sizing, it's easier to stick with just VS/FS and introduce the full set of shaders when we move to packing the cache better. Bug: angleproject:2522 Bug: angleproject:2455 Change-Id: I21432a335c741885af87970d8ee52b4a36338304 Reviewed-on: https://chromium-review.googlesource.com/1036927 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jiawei Shao <jiawei.shao@intel.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| d8ffd756 | 2018-05-01 13:17:17 | SystemInfo.h: add some documentation BUG=angleproject:1874 Change-Id: I8898c1a467c1fec25963f45a31376a6b02e1b6c4 Reviewed-on: https://chromium-review.googlesource.com/1037584 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org> | ||
| 9aef81c7 | 2018-04-30 14:56:15 | Validate blitFramebuffer for overflows on all platforms We can validate to avoid triggering driver issues even if the native GLES spec is not telling us to. This will fix WebGL in Chromium when it's being run with the --use-cmd-decoder=validating --use-angle=gl config. BUG=chromium:830046 TEST=WebGL conformance tests Change-Id: I2d61182cb6cbe46b52e1d9b7ed6b4035defee082 Reviewed-on: https://chromium-review.googlesource.com/1033743 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| 47155b17 | 2018-04-26 12:14:10 | Clean up BlitGL Simplify handling of reversing the blitted area and calculate shader parameters in a way that doesn't require lengthy explanation. BUG=chromium:830046 TEST=angle_end2end_tests Change-Id: Ie9bce812be4ef04a969153fc7c484039fc48a198 Reviewed-on: https://chromium-review.googlesource.com/1030172 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 57d9cbb6 | 2018-04-27 11:45:04 | Sync individual attachments in RenderTargetCache. This allows Framebuffer syncState methods to handle dirty bits themselves. This will be useful for the implementation of masked color clear. Bug: angleproject:2455 Change-Id: I65ad9c61e89e317c820f6be5550edd8185b52afc Reviewed-on: https://chromium-review.googlesource.com/1032856 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Luc Ferron <lucferron@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| d47044ad | 2018-04-27 11:45:03 | Vulkan: Add framework for internal shaders. Vulkan intenal shaders are stored in a ShaderLibrary, and this is owned by the RendererVk. This way the shaders are reused between all the different Contexts. They are initialized lazily to keep init time low. They also have an associated Serial (called a ProgramSerial) so they can be identified in a PipelineDesc (used by the Pipeline cache). We use a python script to build and invoke the glslang validator, that also produces SPIR-V binary code snippets. These snippets are gathered into an auto-generated file that is exposed via an auto-generated header file. The InternalShaderID enum class gives access to the internal shaders that are shared through the Vulkan back-end. This also adds simple clear shaders to be used in masked color clears. The patch doesn't add any functionality but it is split off from the color clear functionality to keep the code size down. Bug: angleproject:2339 Bug: angleproject:2455 Change-Id: Ie83043eda217c9f013817b198c92a3b7ba0878b4 Reviewed-on: https://chromium-review.googlesource.com/1031372 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| 41529e5e | 2018-05-01 10:06:04 | Refactor StateChangeTests to use essl1_shaders instead Bug: angleproject:2474 Change-Id: Ia558c2e266422f8f8b55523c9542379688a7058d Reviewed-on: https://chromium-review.googlesource.com/1037164 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 94ae660d | 2018-04-23 13:58:59 | Vulkan: Create tests to validate we created the pipeline when needed 1- Link program with a shader and draw with it, relink with another shader and draw again. 2- Release program that is reading from a uniform. Bug: angleproject:2397 Change-Id: Icb4211c5cf71efaf41833d9d5afd83ce8410c598 Reviewed-on: https://chromium-review.googlesource.com/1028580 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| ad3aaeba | 2018-05-01 07:35:41 | Disable Vulkan layers in sanitized builds. This was causing very slow builds/test runs. Bug: chromium:837166 Bug: chromium:834269 Change-Id: If2e5665455d4a8af13cbc732a65a07550ace8304 Reviewed-on: https://chromium-review.googlesource.com/1036220 Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| ddd77245 | 2018-04-30 10:31:18 | Add GLESv1_CM to angle library apk Bug: angleproject:2418 Change-Id: I793d330a2cc92a510b189fa23d14f41f48a7d986 Reviewed-on: https://chromium-review.googlesource.com/1035422 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> | ||
| 0ade8e88 | 2018-04-27 11:45:02 | Use time tolerance in run_code_generation check. The mtime values I was seeing on my file system were sometimes floating point numbers that were very very close but not exactly the same. This might be due to numerical errors. Increasing the tolerance to something still very small, precision is less than a second. It will lead to fewer rebuilds of non-dirty files. Bug: angleproject:2455 Change-Id: I95dc3214ee91af7a70a20cc625405e0e2bc18698 Reviewed-on: https://chromium-review.googlesource.com/1032855 Reviewed-by: Luc Ferron <lucferron@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| b90779eb | 2018-04-27 11:45:01 | Vulkan: Pass fewer Context pointers around. These weren't needed in many places. Also renames one FramebufferVk method. Bug: angleproject:2455 Change-Id: Idb641094fa3e180a85f357533d86bd0b19db4ec8 Reviewed-on: https://chromium-review.googlesource.com/1024826 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Luc Ferron <lucferron@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| bb3255b5 | 2018-04-27 09:45:18 | Remove redundant computations on combined interface block counts This patch intends to remove redundant computations on combined interface block counts in ValidateGraphicsInterfaceBlocks. In this patch, we compute and check the number of combined interface blocks by the result of ValidateInterfaceBlocksCount directly instead of re-compute it, and if the check on max combined interface blocks failed, Program::link() can early return without entering ValidateGraphicsInterfaceBlocks. BUG=angleproject:2345 Change-Id: I7573f7c645993b4d75230a8471203a305127f2a3 Reviewed-on: https://chromium-review.googlesource.com/1031852 Reviewed-by: Jiajia Qin <jiajia.qin@intel.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jiawei Shao <jiawei.shao@intel.com> | ||
| c6f82872 | 2018-04-24 14:14:50 | ES31: Add REFERENCED_BY_GEOMETRY_SHADER as program interface property This patch implements GL_REFERENCED_BY_GEOMETRY_SHADER as a valid property of program interfaces. BUG=angleproject:1941 TEST=angle_end2end_tests dEQP-GLES31.functional.geometry_shading.query.referenced_by_geometry_shader Change-Id: Id9659313d371dbfc7d00bf9d816df4449fbf29ec Reviewed-on: https://chromium-review.googlesource.com/1025281 Reviewed-by: Jiajia Qin <jiajia.qin@intel.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jiawei Shao <jiawei.shao@intel.com> | ||
| 69643438 | 2018-04-27 12:23:47 | D3D11: Reorder VAO synchronization. The index range was being resolved in the call to VertexArray11::syncStateForDraw but the code which invalidates the input layout was being executed before this. BUG=837002 Change-Id: I4e00b53cdc51f8758b0e2ba9e2dfc93b5e22556c Reviewed-on: https://chromium-review.googlesource.com/1032633 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 5528d11f | 2018-04-24 11:25:10 | D3D: Don't test for device loss as frequenty in tight loops. BUG=angleproject:1472 BUG=621240 Change-Id: I723839bd7961167adddcccc680638ae066eacea3 Reviewed-on: https://chromium-review.googlesource.com/1025645 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| f1bcd017 | 2018-04-27 14:21:55 | Supress failures in BlitFramebufferTest.MultisampleDepth on Mac OpenGL BUG=837717 Change-Id: I1ac659b18bd9aef2f24f798d23f49d1efbb81938 Reviewed-on: https://chromium-review.googlesource.com/1033478 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| de279590 | 2018-04-26 12:25:13 | Add test coverage for BlitGL Scaling and flipping of the framebuffer with blitFramebuffer are now covered by end2end_tests. The test configurations are set so that the BlitGL shader-based blit is also covered. The tests reveal a bug in the D3D11 backend implementation of blitFramebuffer when using an oversized source area. BUG=angleproject:2486 BUG=angleproject:2519 BUG=angleproject:2521 TEST=angle_end2end_tests Change-Id: Ica48e564a5b4180241ec4c4c6be06c58cc6dc29b Reviewed-on: https://chromium-review.googlesource.com/1030171 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> | ||
| 467c15f9 | 2018-04-24 15:04:26 | Use ShaderMap in ProgramD3D - Part II This patch refactors ProgramD3D by storing all shader information into ShaderMap to simplify the code structure. This patch also fixes a bug on getting the number of maximum uniform blocks. BUG=angleproject:2169 Change-Id: I5b9fbfd70a18f8731ce19efed0df88037d495389 Reviewed-on: https://chromium-review.googlesource.com/1024749 Commit-Queue: Jiawei Shao <jiawei.shao@intel.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| 7267aa65 | 2018-04-17 15:28:21 | Optimize ValidateDrawAttribs: Part 3. This is a small optimization for the WebGL compatibility mode. Instead of scanning the list of attributes for a Transform feedback conflict, it can quickly check a cached mask. This should save a lot of cycles on the fast path. Bug: angleproject:1391 Change-Id: Icb8d095493a629dbff0e93872357e5bf7c7458ae Reviewed-on: https://chromium-review.googlesource.com/1011236 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| 1633663b | 2018-04-24 16:39:15 | Don't test for device loss in SwapBuffers and MakeCurrent. Simply check if the device has already been lost. Chrome already checks glGetGraphicsResetStatus after SwapBuffers and MakeCurrent. BUG=angleproject:1472 BUG=621240 Change-Id: I95fe6306fa0c09191a4b1b93840c2143e069ef53 Reviewed-on: https://chromium-review.googlesource.com/1026527 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| e5db628b | 2018-04-26 08:05:18 | Cleanup for "Add angle library apk" Forgot to format BUILD.gn in CL 46978bccd3659 Remove unnecessary android:debuggable setting Bug: angleproject:2520 Change-Id: I31457c82536827f78e3aa17c02dd8e878f803f04 Reviewed-on: https://chromium-review.googlesource.com/1030259 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| b221486a | 2018-04-26 07:25:48 | Vulkan: Fix TexSubImage2D state change test. Was simply a matter of triggering a new write node in the subImage call. Bug: angleproject:2495 Change-Id: I06334ba6ee816f671e5c599c8e8f079f56adb25e Reviewed-on: https://chromium-review.googlesource.com/1028729 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Luc Ferron <lucferron@chromium.org> | ||
| 0086de17 | 2018-04-25 11:41:32 | Vulkan: Add test to reproduce graph issue when draw->subImage->draw Bug: angleproject:2495 Change-Id: Ibc6c060e8924f19562da62ce15d48d9f6820b372 Reviewed-on: https://chromium-review.googlesource.com/1028228 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 197d5294 | 2018-04-25 14:29:00 | Wrap all preprocessor code in the angle namespace. BUG=836820 BUG=801364 Change-Id: I08b6a2f9f12b689e09df6efd916c313e71e8a051 Reviewed-on: https://chromium-review.googlesource.com/1028581 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> | ||
| 23dc90b8 | 2018-04-23 09:01:49 | GLES1: Enable/disable for texture targets BUG=angleproject:2306 Change-Id: I08ac9ef91753112f8185d16423925cf265f0384e Reviewed-on: https://chromium-review.googlesource.com/1023987 Commit-Queue: Lingfeng Yang <lfy@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| f827123d | 2018-04-25 13:08:24 | Handle negative float to uint conversion robustly Converting a negative float to uint is undefined in the GLSL ES 3.00.6 spec. However, it improves portability if we don't trigger undefined results in C++ in this case. To do this, we cast negative floats first to signed integer before casting them to unsigned integer. We also issue a warning about an undefined conversion in case a negative float was converted to uint. BUG=chromium:835868 TEST=angle_unittests Change-Id: I9835a739ec80699d420a4f91a3bfa112c9a13604 Reviewed-on: https://chromium-review.googlesource.com/1026681 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> | ||
| f9749eaf | 2018-04-24 15:34:53 | Vulkan: Enable UnpackAlignmentTest and remove useless warning. Bug: angleproject:2492 Change-Id: I9e821632bdb3b8ba90d5ce47198a3445d2b684de Reviewed-on: https://chromium-review.googlesource.com/1026510 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 1a186b16 | 2018-04-24 15:25:35 | Vulkan: Fix issue with texsubimage2d barriers Also re-enable the Windows AMD tests that were suppressed because of that bug. Bug: angleproject:2492 Change-Id: Ie9b5eb4c5705bbb390c3899fe4c66d3e47eff00d Reviewed-on: https://chromium-review.googlesource.com/1026461 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| f3135da9 | 2018-04-25 08:04:39 | Clean up DEPS style. Conforms a bit more to the proposed DEPS standardization. Bug: chromium:782846 Change-Id: I65eae268dc9ebe4a56382db67fd123a0beafa656 Reviewed-on: https://chromium-review.googlesource.com/1027792 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 10434f67 | 2018-04-24 10:06:37 | Vulkan: Issue when drawing with a texture and rebinding after. Added 2 tests in StateChangeTest.cpp to validate the behavior and reproduce the issue I saw in dEQP. Bug: angleproject:2479 Change-Id: I29c3da0474ec2b13a10fc266284cb19a07675da2 Reviewed-on: https://chromium-review.googlesource.com/1025951 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| 023371b3 | 2018-04-24 17:43:32 | Fix setting mip level metadata on GL backend LUMA texture workarounds are now being used correctly in case texture levels that have only been touched by generateMipmap are used to draw. BUG=angleproject:2498 TEST=angle_end2end_tests Change-Id: I739550d59f99a4a22ffae766a5ee52c07610d78a Reviewed-on: https://chromium-review.googlesource.com/1025995 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> | ||
| 2565d48b | 2018-04-12 17:06:48 | Add angle library apk Package up libraries into Android APK. Libraries must be uncompressed for them to be mmapped properly. Bug: angleproject:2418 Change-Id: I27817d7a6c5dcd93ca7790c55042c6548f84906f Reviewed-on: https://chromium-review.googlesource.com/1013057 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> | ||
| f2807385 | 2018-04-24 15:25:35 | D3D: Use an alignment of 1 when uploading zero data to initialize textures. BUG=836131 Change-Id: I1206c8eda465da563e15cf43f2e5c9320bb65eae Reviewed-on: https://chromium-review.googlesource.com/1026460 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| bd5543c9 | 2018-04-24 08:42:05 | Vulkan: Add GetColorComponentFlags. This small helper routine will be used when doing masked clears. Bug: angleproject:2455 Change-Id: Id309b48f2bc5958abb1276d140c9a3599fb7d2b9 Reviewed-on: https://chromium-review.googlesource.com/1024825 Reviewed-by: Luc Ferron <lucferron@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| 33e05bab | 2018-04-23 15:12:34 | Vulkan: Bugfix in TextureVk::setSubImage and DynamicBuffer Bug 1) The offset wasn't plumbed through for setSubImage. Bug 2) The DynamicBuffer allocation sometime allocates a bit more than requested, but we were using the size requested as the next offset instead of the actual allocated size. This could get us in a situation in certain corner cases where the next allocation would be done on the said buffer instead of using a new allocation as it should. Also enables a bunch of new texture_specification_* tests that were unable to run successfully without these 2 bug fixes. Found a weird issue on WIN AMD only and suppressed these tests for now. Will investigate part of the same bug number as a separate change. Bug: angleproject:2495 Bug: angleproject:2492 Change-Id: I490b1bf2d1795b7a1033365e29eac12a8bc50bff Reviewed-on: https://chromium-review.googlesource.com/1024380 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Luc Ferron <lucferron@chromium.org> | ||
| 66410530 | 2018-04-20 12:47:45 | Vulkan: Textures mipmaps support Note that generate mipmaps is not yet supported, but uploading mipmaps is. This also enables 64 tests in dEQP gles2 to validate the changes. While trying to enable tests in functional.texture.mipmap.*, I found an issue where the graph ends up in an invalid state and triggers and assert in onReadResource in ContextVk.cpp:188. It seems like an unrelated bug to mip maps, I will investigate to enable these tests separately in a following CL. Bug: angleproject:2479 Change-Id: If51776d8ef3d994bee620d6a1cf982bb51838ff0 Reviewed-on: https://chromium-review.googlesource.com/1022232 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| b3474d9d | 2018-04-20 17:37:44 | Clean up ClipRectangle It's not necessary to set the intersection rectangle in case the intersection is empty. BUG=chromium:830046 TEST=angle_end2end_tests Change-Id: I0b99cdb7d6623b2d8a95dbe946a6eead6a44351d Reviewed-on: https://chromium-review.googlesource.com/1021695 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> | ||
| 8d5571ac | 2018-04-23 12:29:31 | Restrict BlitFramebuffer dimensions in WebGL mode Don't allow blitFramebuffer dimensions to overflow 32-bit integer range as specified in WebGL 2.0 section 5.41. BUG=chromium:830046 TEST=WebGL 2 conformance tests, angle_end2end_tests Change-Id: Ia232291b09c94e1e4f837441c6720a78bab672fb Reviewed-on: https://chromium-review.googlesource.com/1023856 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| af2b33be | 2018-04-19 10:01:52 | Use ShaderMap in ProgramD3D - Part I This patch is the first part of using ShaderMap to contain shader information in ProgramD3D, including the refactoring on struct D3DUniform, D3DUniformBlock and ProgramD3DMetadata. In the next patch all shader information in class ProgramD3D will be organized in the form of ShaderMap. BUG=angleproject:2169 Change-Id: I27008169dbf6cd8017a67f36f474667feddbd1f6 Reviewed-on: https://chromium-review.googlesource.com/1018728 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| 37b3e596 | 2018-04-23 11:56:09 | Add documentation for writing AST transformations This adds documentation that was previously being drafted at https://docs.google.com/document/d/1Pe3zkEZiYrtrjs7r9p0_bYFwnOO7bo0BlMYi27sakuk/edit?usp=sharing Change-Id: I6ecd8e3e5a946960837fee8514ba130e01f9230c Reviewed-on: https://chromium-review.googlesource.com/1023392 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> | ||
| 00689191 | 2018-03-27 17:34:20 | GL: Fix the CPU readback path of CopyTextureCHROMIUM. 1. BlitGL's resources were not being intialized. 2. The format/type information was not enough to know if the destination texture was SRGB. BUG=693090 Change-Id: I3fc277a175772d3b6acace1810cb43f4a9bdc473 Reviewed-on: https://chromium-review.googlesource.com/982642 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| 6ce24cf2 | 2018-04-23 07:52:15 | Vulkan: Lift suppressions because of vulkan validation layer regression Bug: angleproject:2484 Change-Id: Ib46caa8924c7815154beeb46a291520e57b5cc4f Reviewed-on: https://chromium-review.googlesource.com/1023833 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Luc Ferron <lucferron@chromium.org> | ||
| 40786bdf | 2018-04-18 13:58:57 | ES31: Add validation on geometry shader interface blocks matching This patch adds the validation on checking if there is any mismatch among geometry shader interface blocks and the ones defined in other graphics shaders in the same program. BUG=angleproject:1941 TEST=angle_end2end_tests Change-Id: I1f65e3c49390135bbe9f9323098daf28c9b838c7 Reviewed-on: https://chromium-review.googlesource.com/1016175 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| 20610901 | 2018-04-19 14:41:13 | Vulkan: Implement Texture wrap modes and non-mipmapped filtering modes Also added a test to validate we can change the filter mode between two draws successfully. Bug: angleproject:2478 Change-Id: I80730cdafc6bbdbf61839c6c8eb98d85f7423d92 Reviewed-on: https://chromium-review.googlesource.com/1020084 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| c6a0618f | 2018-04-13 14:11:46 | Fix Vulkan renderer string for NVIDIA The Vulkan physical device properties "deviceName" field does not include "NVIDIA" for all NVIDIA GPUs. Add NVIDIA to the renderer name in case the PCI vendor ID matches, so that Vulkan backend test failures can be suppressed on NVIDIA using IsNVIDIA(). BUG=angleproject:2487 Change-Id: I8e440499664e5ba19773f72104d11d076dae727d Reviewed-on: https://chromium-review.googlesource.com/1013467 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 505ea1bb | 2018-04-18 07:26:45 | Roll (2/2) to latest LVL as of 4/18/18 Bug: angleproject:2482 Moving to HEAD of master as of 4/18/18. Disable workaround to copy reg.py in BUILD.gn. Re-enable ANGLE Vulkan build. Change-Id: I62d79f532bf8fed40872ee9c175caa4b51c2dd25 Reviewed-on: https://chromium-review.googlesource.com/1016683 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| 5f21df83 | 2018-04-18 06:54:37 | Roll (1/2) LVL version forward and disable VANGLE Bug: angleproject:2482 Rolling Vulkan validation code forward to HEAD of master as of 4/18/18 morning. Disable Vulkan from the ANGLE build until ANGLE lands in Chromium. After that second part of roll will be submitted. This LVL update includes reg.py script fixes for a number of build warnings as well as a validation fix for vkCmdClearAttachments() in secondary cmd buffer. Change-Id: I7f8100f5b656d86caf8f4b5dee61a733a35b7869 Reviewed-on: https://chromium-review.googlesource.com/1016860 Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| e7e072ef | 2018-04-19 15:06:30 | Use EGL_KHR_no_config_context in Android GLES backend, when available Create ANGLE's real context with EGL_NO_CONFIG_KHR. This allows ANGLE to advertise EGLConfigs which previously were hidden due to incompatibility with ANGLE's context. Also enable EGLContextCompatibilityTest on ES2_OPENGLES to test this. BUG=angleproject:2468 Change-Id: I6fbbe01b4b93db7df39606980f0f58eb74b11e31 Reviewed-on: https://chromium-review.googlesource.com/1022088 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> | ||
| aecfa71b | 2018-04-20 11:18:59 | Print more logs 1. Really print WARN with default platform 2. Print UNREACHABLE, was getting lost because ~LogMessage was not reached BUG=angleproject:1660 Change-Id: I56fad24895adfec8d81539c6628e65ec2f9e7722 Reviewed-on: https://chromium-review.googlesource.com/1021592 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> | ||
| 8ceea819 | 2018-04-10 03:07:13 | Refactor packed enum generation to support EGL enums. Convert the very simple EGL texture type enum. BUG=angleproject:1618 Change-Id: Ieea382a282a8f2544f2982627e8445e6e5cea826 Reviewed-on: https://chromium-review.googlesource.com/1019386 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| 7b19a49b | 2018-04-20 09:31:52 | Use LIKELY and UNLIKELY macros to wrap error generation. BUG=609673 Change-Id: I247f561712e30aa10bad77fabf614501d596915e Reviewed-on: https://chromium-review.googlesource.com/1021995 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| 629bb259 | 2018-04-20 11:01:33 | Fix WebGL compat feedback loop null deref. This regressed in "Optimize ValidateDrawAttribs: Part 2." Bug: chromium:834943 Bug: angleproject:1391 Change-Id: I217719d76b0524ed7900e18bcc4ca1280ec7b6ff Reviewed-on: https://chromium-review.googlesource.com/1020280 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 3fac3ccc | 2018-04-19 14:51:27 | Make Mock ICD json file a data_dep of Mock ICD Bug: angleproject:2471 Mock ICD json file was only being copied to angledata when "build all" was done. This fix causes the json file to be copied anytime something with a Vulkan dep is compiled. Change-Id: Ic56ecf12ff5996d14bd2ed419f50b2362453b939 Reviewed-on: https://chromium-review.googlesource.com/1020233 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 4bba74f0 | 2018-04-19 14:40:45 | Refactor Texture::syncState to pass down the Context Also returning a gl::Error everywhere. Bug: angleproject:2478 Change-Id: Ic8cae0ee7aee318bb95b3588044c34c62707b578 Reviewed-on: https://chromium-review.googlesource.com/1020083 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Luc Ferron <lucferron@chromium.org> | ||
| 3ec304db | 2018-04-18 14:14:25 | Vulkan: Support struct initializers in shaders Also adds a new test in GLSLTest to validate the initialization of a struct on the same line as its declaration. Bug: angleproject:2459 Change-Id: Ib37e20378f8ec76541db26392663bcba03390756 Reviewed-on: https://chromium-review.googlesource.com/1017340 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| b0f917fa | 2017-12-05 13:41:54 | Fix being unable to request some extensions implemented in the GL layer. Some extensions are forced on in Context::initCaps even though the backend's native extensions do not mark the extension as supported. These extensions were not requestable because the Context::isExtensionRequestable only checks if the backend supports the extension. Make GL_OES_vertex_array_object requestable to cover the issue. BUG=angleproject:1523 Change-Id: Ie64df8e270924727ecf9cd3f993443abeb3ef658 Reviewed-on: https://chromium-review.googlesource.com/809197 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 025aafdf | 2017-10-30 15:16:37 | Make EGL image extensions enableable. BUG=angleproject:1523 Change-Id: I6e890380bafb9f81595ab603996259fe6177e9e0 Reviewed-on: https://chromium-review.googlesource.com/744447 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| d54d3045 | 2017-11-07 14:56:07 | Make EXT_texture_storage enableable. BUG=angleproject:1523 Change-Id: I55ef1233fb42e2dc3eda26c3aa4e14c700f98bf0 Reviewed-on: https://chromium-review.googlesource.com/756868 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> | ||
| e24032a2 | 2018-03-28 15:41:46 | The 'format' of unsized SRGB internal formats should be SRGB too. EXT_sRGB requires calling TexImage with SRGB as the 'format' parameter. This was causing issues when we would take an InternalFormat struct representing an unsized sRGB format and be unable to use it's format member to make GL calls without transforming it. BUG=693090 Change-Id: I8b9baf2591a998a0088e5275f42ffc568e37100d Reviewed-on: https://chromium-review.googlesource.com/984965 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> | ||
| 1d97a4d0 | 2018-04-18 15:51:32 | Revert "Fix dEQP renderbuffer unspecified attachment test." This seems to have caused a regression in Chrome. I'm reverting the change and suppressing the test that is failing on our end because of it. Once we can confirm this solves the problem, we'll need some help investigating further. This reverts commit c0db9addeaebc76c7cc99b26aa27df5e432097ac. Bug: angleproject:2321 Bug: chromium:833809 Change-Id: I5e40364217e15ae6117f5288a4754b25d983ca0a Reviewed-on: https://chromium-review.googlesource.com/1017763 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| eeec3b14 | 2018-04-16 11:00:03 | dEQP: Add override for ES2 Color Clear Test. This test has a bug where the masked clear flag is not being set properly, leading to incorrect test behaviour and missing coverage. Until this bug is fixed in dEQP we can override it with a fixed version. Also remove a prior override that had an upstreamed fix. Bug: angleproject:2455 Change-Id: Ia2c57251b2a97eb5b4d8a4bdb0ce31796a66ea01 Reviewed-on: https://chromium-review.googlesource.com/1013859 Reviewed-by: Frank Henigman <fjhenigman@chromium.org> Reviewed-by: Luc Ferron <lucferron@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| aaa19de0 | 2018-04-18 16:36:34 | Re-land "Vulkan: Add glslang validator to build." This binary will be used to generate internal shaders for clearing/blit/etc. Re-land fixes missing GN dependencies. Bug: angleproject:2339 Change-Id: I99a966906f6cd31049807b7b7adf39484c951622 Reviewed-on: https://chromium-review.googlesource.com/924177 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Luc Ferron <lucferron@chromium.org> | ||
| abb09f12 | 2018-04-16 10:43:53 | GLES1: Client vertex array pointer API glVertexPointer glNormalPointer glColorPointer glPointSizePointerOES glTexCoordPointer BUG=angleproject:2306 Change-Id: Id022b467ac998ea116130c5cec0c77afefb0dd4c Reviewed-on: https://chromium-review.googlesource.com/1014381 Commit-Queue: Lingfeng Yang <lfy@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 427064d2 | 2018-04-13 16:20:34 | Fix perf regression with checkStatus. Returning an Error was costing us performance in extra error checks. This intead uses the Context to process the Error immediately, and returns a value from isComplete and checkStatus. Improves performance in draw call validation. Bug: chromium:822235 Change-Id: I0793fc690e86137425fed593d45083e40aee8db9 Reviewed-on: https://chromium-review.googlesource.com/1011370 Reviewed-by: Luc Ferron <lucferron@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| ec10096d | 2018-04-10 13:43:46 | Vulkan: Add build toggle for validation layers. We want to be able to build without validation layers to make it easier to use in other environments (e.g. Android) When angle_enable_vulkan is true and angle_enable_vulkan_validation_layers is true, build the Vulkan validation layers. Bug: angleproject:2489 Change-Id: I266ad8f757c5992021f249217f2be58f0148fcbf Reviewed-on: https://chromium-review.googlesource.com/1005558 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| 02c9c04f | 2018-04-17 13:43:48 | Optimize ValidateDrawAttribs: Part 2. This moves much of the math into cached values in the VertexAttribute and VertexBinding. Bug: angleproject:1391 Change-Id: I1b6c0553bf57fef864c27c5193c7dd7ca9b56f53 Reviewed-on: https://chromium-review.googlesource.com/1008274 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| fe22e23a | 2018-04-16 14:15:11 | Vulkan: Use SH_INITIALIZE_UNINITIALIZED_LOCALS in ShaderVk Re-enable the flaky test InitUninitializedStructContainingArrays that was failing because of this option missing. Bug: angleproject:2460 Change-Id: Icf794a5fdca48619756d575faa4cb04f0323712e Reviewed-on: https://chromium-review.googlesource.com/1014271 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| 0986f1cc | 2018-04-16 13:47:23 | Vulkan: Implement depth_range dirty bit and enable tests - Additional fix in GlslWrapper.cpp to remove the @@ markers for unused attributes. - Enables 28 dEQP gles2 tests in functional.depth_range.* Bug: angleproject:2454 Change-Id: I1a6f72d846b476ba681140d4b242208d24e18b95 Reviewed-on: https://chromium-review.googlesource.com/1014262 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| f1d3c20c | 2018-04-16 07:44:27 | Vulkan: Fix the issue with unused attributes / varyings When an attribute, a uniform or a varying isn't used, we now remove their layout and in/out qualifiers so that the shader can still refer to these var names. Bug: angleproject:2456 Change-Id: I5f1241d91bd46f663750adfab2562ef87ce69ae5 Reviewed-on: https://chromium-review.googlesource.com/1014009 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| ef2fda72 | 2018-04-18 07:44:14 | Vulkan: Fix issue in GlslWrapper and maxVaryingVectors calculation (2nd try) The layout needed to also have a component qualifier so that the registerColumn wouldn't be ignored. Bug: angleproject:2460 Bug: angleproject:2483 Change-Id: I3adcd6208aca4afebd45311ded93d00087b60a99 Reviewed-on: https://chromium-review.googlesource.com/1016680 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 5804dc8e | 2018-04-13 14:11:46 | Refactor GL tests to use a shader library Instead of having the same simple shaders repeated over and over in the test code, reuse a single shader library. BUG=angleproject:2474 TEST=angle_end2end_tests Change-Id: I13f8ca8c0125e6d30f1761639bf8c3f69e0e77d2 Reviewed-on: https://chromium-review.googlesource.com/1012078 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> | ||
| eb79e337 | 2018-04-18 07:48:06 | Vulkan: Do not build mock ICD on Android. This is causing a GN build error on our Android bots. Bug: angleproject:2471 Bug: angleproject:2482 Change-Id: I35ffc7972effb9c9ea26ab96cf23985eba1702c3 Reviewed-on: https://chromium-review.googlesource.com/1016700 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| c90d4d38 | 2018-04-17 13:11:15 | Fix problematic query in TOutputGLSLBase::visitDeclaration. There was an invalid derefernce that for some reason was not caught on the bots. Bug: angleproject:2456 No-Try: True Change-Id: I088e9671122fd25077027cb2eb577aa099fdcacf Reviewed-on: https://chromium-review.googlesource.com/1015287 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Luc Ferron <lucferron@chromium.org> | ||
| c97e900c | 2018-04-17 19:11:39 | Revert "Vulkan: Fix issue in GlslWrapper and maxVaryingVectors calculation" This reverts commit 1d882aaa0720b0dee0e8fc807d93d0e3f3e6bc67. Sorry about this Luc. I think there was a missing suppression. You can even see a flaky failure in the CQ when you landed this - it seems the flakiness of the failure let it through. This is blocking another fix from landing which fixes the fact the CQ is on fire. The revert button is also missing from Gerrit which means this is a manual revert. Failures: https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win_angle_rel_ng/361 Original CL Message: The layout needed to also have a component qualifier so that the registerColumn wouldn't be ignored. Bug: angleproject:2460 Bug: angleproject:2483 No-Try: True Change-Id: I84c38497fbda43d9defbc6d5d3ff0f9c133e6e46 Reviewed-on: https://chromium-review.googlesource.com/1015323 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| aed1b56a | 2018-04-17 11:47:46 | Prerequisite code for simpler GlslangWrapper. This makes two changes for the linking step: * allows symbol names in TOutputGLSLBase::writeVariableType * stores a list of inactive varying names in VaryingPacking Bug: angleproject:2456 Change-Id: Id651721a008c049508303d18c45c6b96c76114d9 Reviewed-on: https://chromium-review.googlesource.com/1014707 Reviewed-by: Luc Ferron <lucferron@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> | ||
| 1d882aaa | 2018-04-13 10:12:05 | Vulkan: Fix issue in GlslWrapper and maxVaryingVectors calculation The layout needed to also have a component qualifier so that the registerColumn wouldn't be ignored. Bug: angleproject:2460 Bug: angleproject:2483 Change-Id: Ib5b15c4dc0ce42633f4994648f1eb22d8b63336a Reviewed-on: https://chromium-review.googlesource.com/1011680 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Luc Ferron <lucferron@chromium.org> | ||
| e4c38be0 | 2018-04-17 11:09:16 | Vulkan: clearRegionWithScissor did not determine the region correctly When the scissor region given was completely outside the renderArea, we were calling vkCmdClearAttachments with the unmodified rectangle. Instead, we just need to actually skip the clear call since there is nothing to clear if we have a scissor region outside the render area. Bug: angleproject:2484 Change-Id: If2c7c5b91e07081f1d2e4f4d8d13f8c8a842ea0b Reviewed-on: https://chromium-review.googlesource.com/1014958 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| 01074436 | 2018-04-16 10:19:51 | GLES1: gl(Enable|Disable)ClientState + Introduce the GL_OES_point_size_array extension for point size array support. BUG=angleproject:2306 Change-Id: Ib1a60b7dcd0497eb807f0d3c80bc95b4748d9a96 Reviewed-on: https://chromium-review.googlesource.com/1014282 Commit-Queue: Lingfeng Yang <lfy@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| c61a24d4 | 2018-04-17 07:22:55 | Vulkan: Fix build after roll. Remove struct_size_helper from LVL build. This was causing significant problems on the Chromium CQ. Also fix the warning of duplicate definitions in reg.py by staging scripts to a temporary folder so we can use a fixed version. Bug: angleproject:2482 Bug: chromium:833736 Change-Id: Ide7202fe14bf6c83419f19bc07113df23d51807a Reviewed-on: https://chromium-review.googlesource.com/1014902 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 86de76b6 | 2018-04-17 08:29:55 | Vulkan: Suppress ClearIssue test. This test was flaky, the failure was missed on the CQ. Bug: angleproject:2484 Change-Id: Ic3c32bcd385620683e9a01acf37d62bbf3ca8797 Reviewed-on: https://chromium-review.googlesource.com/1014733 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> |