- 17 Aug, 2017 2 commits
-
-
Martin Radev authored
The patch extends the OutputHLSL and DynamicHLSL translators to select the viewport index in the geometry shader and propagate the ViewID variable to the fragment shader. BUG=angleproject:2062 TEST=angle_end2end_tests Change-Id: I9e344a7521e2e1137e6eb38d0bfecea8bece778f Reviewed-on: https://chromium-review.googlesource.com/608967 Commit-Queue: Martin Radev <mradev@nvidia.com> Reviewed-by:
Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Olli Etuaho authored
BUG=angleproject:2125 TEST=compile Change-Id: Ideae29190bd9cd56ecdc0ea31a078d4460413540 Reviewed-on: https://chromium-review.googlesource.com/616145Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
- 16 Aug, 2017 7 commits
-
-
Geoff Lang authored
BUG=602737 Change-Id: I05987f4806e179eb50f4b86533c88831e359b9e8 Reviewed-on: https://chromium-review.googlesource.com/617514 Commit-Queue: Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Geoff Lang authored
Sized internal formats with invalid types would pass validation because GetInternalFormatInfo does not validate that the type is a valid upload type for the given internal format. TEST=conformance2/textures/misc/tex-image-with-bad-args-from-dom-elements.html BUG=angleproject:1932 Change-Id: I07fd542630a4508383263c1fe3d7a80c037d7ca0 Reviewed-on: https://chromium-review.googlesource.com/617508 Commit-Queue: Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Jamie Madill authored
Since 9.3 doesn't support non-zero level render targets, we should always be getting the level zero render target. Previously the code would never try creating a render target when level zero mode was not enabled, but this can break if we refactor the code. Fixes a bug in a future patch which creates the storage as a render target instead of as a non-renderable texture first. BUG=angleproject:2107 Change-Id: Ib2732a35e586bc4956d07783325429e8edeb0c66 Reviewed-on: https://chromium-review.googlesource.com/614120Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Possibly due to a driver bug. BUG=angleproject:1932 Change-Id: I8b10457681c5635b89f898aab09fa244b3bf7d9c Reviewed-on: https://chromium-review.googlesource.com/616817Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Martin Radev authored
The patch modifies Clear11 to add support for clearing the color, depth and stencil attachments to a side-by-side framebuffer: - Color attachments are cleared through the command ClearView. - Depth and stencil attachments are cleared by drawing a quad on top of each view. BUG=angleproject:2062 TEST=angle_end2end_tests Change-Id: I5753a72222216a48cd954eb1219bc58f968735fc Reviewed-on: https://chromium-review.googlesource.com/603853 Commit-Queue: Martin Radev <mradev@nvidia.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Martin Radev authored
The patch modifies the ANGLE_multiview specification so that issuing a Draw* command has undefined results for side-by-side FBOs if the scissor test is disabled. Also, clearing a side-by-side framebuffer will result in clearing the whole content of the specified buffers if the scissor test is disabled. StateManagerGL and FramebufferGL are modified to address this change in the spec. BUG=angleproject:2062 TEST=angle_end2end_tests Change-Id: I39a87d297944f12769dee2ead17b508ac22053db Reviewed-on: https://chromium-review.googlesource.com/612283 Commit-Queue: Martin Radev <mradev@nvidia.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Olli Etuaho authored
The arrayOfStructsSize parameter can always be determined from the TType object, so there's no need to pass it to TType::createSamplerSymbols. Furthermore, it's more natural to do the processing for arrays of structs in TType::createSamplerSymbols, rather than in the TStructure::createSamplerSymbols helper it is using. Also rename some parameter names, and move createSamplerSymbols implementation to Types.cpp. This refactoring change prepares for implementing arrays of arrays. BUG=angleproject:2125 TEST=angle_end2end_tests Change-Id: I3f8bec711c0434677ebcf3741abb4f910c36dba3 Reviewed-on: https://chromium-review.googlesource.com/614883 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
- 15 Aug, 2017 5 commits
-
-
Olli Etuaho authored
Some of the code was written under the mistaken assumption that createSamplerSymbols would be splitting sampler arrays in structs into individual samplers. Fix it by adding array dimensions to sampler parameters generated by createSamplerSymbols when necessary. BUG=angleproject:2128 TEST=angle_end2end_tests Change-Id: Ie622c777d78ae65b5629d12e0ae574800c1b78f5 Reviewed-on: https://chromium-review.googlesource.com/614882 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Brandon Jones authored
Replace many error string literals with variables existing in ErrorStrings.h BUG=:angleproject:1644 Change-Id: If5665a6787a1fa8d789811d774711c3705dfb0ab Reviewed-on: https://chromium-review.googlesource.com/598588 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1932 Change-Id: Iabc1a3e361d66313dc16bf19b392402b7836f8a5 Reviewed-on: https://chromium-review.googlesource.com/612562 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Geoff Lang authored
Mapping a buffer that is bound for active transform feedback or starting transform feedback on a mapped buffer is undefined behaviour under section 2.10.3.2 of the ES 3.0 spec "Effects of Mapping Buffers on Other GL Commands". The spec suggests that an error is generated in this case. TEST=ES3MapBufferRangeTest.TransformFeedback BUG=754000 Change-Id: I613defd07cc1a4348682d992cda61cc898936720 Reviewed-on: https://chromium-review.googlesource.com/614483Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Olli Etuaho authored
Files that only have a single function should be named consistently with the function. Unnecessary include in CallDAG.h is removed. BUG=angleproject:2068 TEST=angle_unittests Change-Id: I27d55a766b9eb66fcfd1e0a2341a2843bb9dc5bb Reviewed-on: https://chromium-review.googlesource.com/608368 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
- 14 Aug, 2017 5 commits
-
-
Geoff Lang authored
BUG=angleproject:1932 Change-Id: Iab79f2a09c2d8a85d2a9dde34acf4d2151072c2b Reviewed-on: https://chromium-review.googlesource.com/612561Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Olli Etuaho authored
This encapsulates expanding struct variables inside the VariablePacker class that packs variables according to the GLSL ES spec. The variable expansion step is no longer run twice when checking uniforms against the max uniforms limit. BUG=angleproject:2068 TEST=angle_unittests Change-Id: I012ddaa249f71c0a78d937c98007c61352e64888 Reviewed-on: https://chromium-review.googlesource.com/608367 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jiajia Qin authored
Refactor InterfaceBlocks since it only stands for UniformBlock before ES31. But for ES31, uniform block and shader storage block both belong to interface block. This CL will add GetUniformBlocks and GetShaderStorageBlocks in ShaderLang.h. Meanwhile, keep GetInterfaceBlocks which can return all the interface blocks together. BUG=angleproject:1951 Change-Id: I3036e201aadfbd490575ed03538c81bcc3793ff3 Reviewed-on: https://chromium-review.googlesource.com/582546 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Martin Radev authored
The patch adds tests to verify that an occlusion query correctly tracks whether any fragments pass the depth test for any of the views as according to the ANGLE_multiview extension. BUG=angleproject:2062 TEST=angle_end2end_tests Change-Id: Ia85bac4935192554a337c27fad110fbb7f56cf8a Reviewed-on: https://chromium-review.googlesource.com/609961 Commit-Queue: Martin Radev <mradev@nvidia.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Martin Radev authored
Handle glFramebufferTextureMultiviewLayeredANGLE calls by saving the arguments into the attachment's state. BUG=angleproject:2062 TEST=angle_end2end_tests Change-Id: I9d7c0e00fe9e917ad2f9d903a39f30b2546dc7a3 Reviewed-on: https://chromium-review.googlesource.com/609960 Commit-Queue: Martin Radev <mradev@nvidia.com> Reviewed-by:
Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
- 11 Aug, 2017 4 commits
-
-
Shao authored
This patch intends to add missing initialization of MAX_INTEGER_SAMPLES, MAX_DEPTH_TEXTURE_SAMPLES and MAX_COLOR_TEXTURE_SAMPLES required for multisampled textures on D3D backends. Since MAX_*_SAMPLES cannot be queried directly from D3D APIs, these values are initially assigned a large value in renderer11.cpp and re-calculated in context::updateCaps(). This patch also adds tests to ensure these values are greater than 1 as required in OpenGL ES3.1 spec. BUG=angleproject:1592 TEST=angle_end2end_tests Change-Id: Iba586e311d40d2da4569816902f96e40bbd6935b Reviewed-on: https://chromium-review.googlesource.com/597411 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Frank Henigman authored
In D3D cube map textures use different code paths than regular 2D textures. Add outside-the-framebuffer handling to those paths, same as was added the other paths earlier. Change-Id: I51896a07f73ae8d761cd9d7b18c68076f38d32a3 Reviewed-on: https://chromium-review.googlesource.com/603050 Commit-Queue: Frank Henigman <fjhenigman@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Olli Etuaho authored
Make sure that the type definitions for nested structs get added to the HLSL header, and that the std140 padding information gets recorded. Prior to this trying to use nested structs in interface blocks crashed. BUG=angleproject:2084 TEST=angle_end2end_tests Change-Id: If57870285c6feaf0c2e462f98f50f20730dd6470 Reviewed-on: https://chromium-review.googlesource.com/608449Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Frank Henigman authored
Cube maps go through a separate path on D3D so we need to test them. BUG=angleproject:1815 Change-Id: Ifb7a85d7e2750f25bce382fdd7a00062d23b3573 Reviewed-on: https://chromium-review.googlesource.com/597213 Commit-Queue: Frank Henigman <fjhenigman@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
- 10 Aug, 2017 4 commits
-
-
Olli Etuaho authored
In HLSL output, structs in interface blocks are not accessed directly. Rather they get copied from the D3D constant buffer to static structs in the shader header. Fix generating the copy/init code in the header to handle arrays of structs correctly. BUG=angleproject:2084 TEST=angle_end2end_tests Change-Id: If66bd5be3f3570ba591b8b62c5284c06fc83dd45 Reviewed-on: https://chromium-review.googlesource.com/608448Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Geoff Lang authored
BUG=angleproject:1932 Change-Id: I6474237cbb82b59a0bd40c1b9b9e2455952d3755 Reviewed-on: https://chromium-review.googlesource.com/600510 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Martin Radev authored
If the ANGLE_multiview extension is used in a program, the number of geometry instances is the number of instances passed to glDraw*Instanced times the number of views in the program. The attribute divisor has to be multiplied by the number of views so that the correct attributes are gathered in the input assembly stage. BUG=angleproject:2062 TEST=angle_end2end_tests Change-Id: I960d6313c02e3eb83f7a07e72b9bcac072c736f4 Reviewed-on: https://chromium-review.googlesource.com/593953 Commit-Queue: Martin Radev <mradev@nvidia.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Martin Radev authored
The patch refactors the tests to use the GL RAII objects from gl_raii.h. It also specifies a correct internal format for a texture 2D array object in one of the tests so that the texture is color-renderable. BUG=angleproject:2062 TEST=angle_end2end_tests Change-Id: Ie536ffeb5b2f2594f5273b795fe786a5042f63d4 Reviewed-on: https://chromium-review.googlesource.com/603610 Commit-Queue: Martin Radev <mradev@nvidia.com> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Olli Etuaho <oetuaho@nvidia.com>
-
- 09 Aug, 2017 5 commits
-
-
Olli Etuaho authored
When a function parameter name conflicts with another, the pointer returned to ParseContext will be null. BUG=chromium:745242 TEST=angle_unittests Change-Id: Ie53bb06b0c6660e382d85aeda41f3a1b7df5a917 Reviewed-on: https://chromium-review.googlesource.com/603368Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Martin Radev authored
The patch adds two tests to measure the performance of the ANGLE_multiview extension implementation: 1) The first test renders onto two views by issuing thousands of state changes and draw calls. The aim of the test is to stress the CPU. 2) The second test renders onto two views by drawing with one draw call half a million quads with multiple attributes per vertex. The attributes are passed to the fragment shader where they are used for computing the color. The aim of the test is to stress the GPU's memory system. The patch also extends the ANGLEPerfTest's functionality to only run the benchmark if the necessary extensions are available. BUG=angleproject:2062 TEST=angle_end2end_tests Change-Id: Ic63d54a69fdddb72439eeeb1951a500fb1247e95 Reviewed-on: https://chromium-review.googlesource.com/597630Reviewed-by:
Olli Etuaho <oetuaho@nvidia.com>
-
Yunchao He authored
BUG=angleproject:2123 Change-Id: Ic3c70c7148297662d4fd9e08edcd208f5a1cc885 Reviewed-on: https://chromium-review.googlesource.com/601370Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
jchen10 authored
Add API entry and validation checks(GLES 3.1 section 7.3). Add the first 2 interfaces(PROGRAM_INPUT and PROGRAM_OUTPUT) implementation. BUG=angleproject:1920 TEST=angle_end2end_tests:ProgramInterfaceTestES31.* Change-Id: I50057f7b99f4dc7c23ca87fa9b797ca424f66e3d Reviewed-on: https://chromium-review.googlesource.com/475075Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Martin Radev authored
The patch enables the ANGLE_multiview extension in the D3D11 renderer and determines the maximum number of available views. BUG=angleproject:2062 TEST=angle_end2end_tests Change-Id: I56e434a14c61df3d6ab66c2863ce783fcdcc5a93 Reviewed-on: https://chromium-review.googlesource.com/595507 Commit-Queue: Martin Radev <mradev@nvidia.com> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Olli Etuaho <oetuaho@nvidia.com>
-
- 07 Aug, 2017 1 commit
-
-
jchen10 authored
The __has_attribute macro was one of improvements in GCC 5 release. See https://gcc.gnu.org/gcc-5/changes.html. This checks to make it work with older GCC. BUG=angleproject:2119 Change-Id: I751249b9d028d1322829bebc1ca8d423edf27057 Reviewed-on: https://chromium-review.googlesource.com/599152 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
- 05 Aug, 2017 1 commit
-
-
Yuly Novikov authored
Was skipped on Windows and Mac before, now seen flaky also on Linux. BUG=angleproject:1541 Change-Id: Ic993eeadb104989416607271ce100b02aea7cecc Reviewed-on: https://chromium-review.googlesource.com/603087Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
-
- 04 Aug, 2017 2 commits
-
-
Yuly Novikov authored
TextureRectangleTest.TexStorage2D and TextureRectangleTest.TexImage2D failed on NVIDIA Quadro P400, previously disabled on Linux. BUG=angleproject:2122 TBR=cwallez@chromium.org Change-Id: I471dc040ed51a0e4588cfaab7d1c4c46e69932d5 Reviewed-on: https://chromium-review.googlesource.com/602779Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
-
Yuly Novikov authored
TextureRectangleTest.TexStorage2D and TextureRectangleTest.TexImage2D failed on NVIDIA Quadro P400. BUG=angleproject:2122 TBR=cwallez@chromium.org Change-Id: I72d1755881cb06ef4363266b368ada5ca954f6dd Reviewed-on: https://chromium-review.googlesource.com/601348Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
-
- 03 Aug, 2017 3 commits
-
-
Corentin Wallez authored
This is needed to support binding IOSurfaces to textures on OSX. This commit adds support in the API and tests, but didn't need to implement compiler changes as it already supported ARB_texture_rectangle. Implementation of CHROMIUM_opy_texture for rectangle texture and the spec are left for follow-up commits. Change-Id: I45c66be763a9d3f6f619640f9f95f39b05c70867 Reviewed-on: https://chromium-review.googlesource.com/559106 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1932 Change-Id: I4d19892852540797c765916131498c96511b4f55 Reviewed-on: https://chromium-review.googlesource.com/600509Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
https://chromium-review.googlesource.com/466106Nico Weber authored
Bug: 495204 Change-Id: I6d460a9e6d110be4697e3cc1685e16395276dd42 Reviewed-on: https://chromium-review.googlesource.com/600258Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
- 02 Aug, 2017 1 commit
-
-
Geoff Lang authored
By marking the images as dirty after binding a surface, the surface would be cleared when it was first read or written to. BUG=750813 BUG=angleproject:1635 Change-Id: Ic0d1c985151d55a0f1a1af67bb1edc4b0e8f2063 Reviewed-on: https://chromium-review.googlesource.com/598731 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-