Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 2173db3d | 2016-01-12 13:55:14 | Add sampler array tests This adds some coverage for samplers that is missing from dEQP. The shaders in the added tests both have a sampler array with two samplers. The test shaders sample both textures, add up the results, and the tests then check that the results of the shaders are correct. Only constant indexing is used to access the sampler arrays. One test accesses the sampler array in the main function, another one first passes the array as a parameter to a user-defined function. BUG=angleproject:1261 TEST=angle_end2end_tests Change-Id: I9a0100705ac0da4905d50da37c0149fdbdd24c42 Reviewed-on: https://chromium-review.googlesource.com/321623 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| 4644a20b | 2016-01-12 15:12:53 | Add a test for sampler as a function parameter This adds some coverage for samplers that's missing from dEQP. The test shader passes a sampler to an user-defined function, samples the texture there and sets the returned sample to gl_FragColor. The test then checks that the shader result is correct. BUG=angleproject:1261 TEST=angle_end2end_tests Change-Id: I2cc511e591a4af01515c6fb38fd43c5f15337bcb Reviewed-on: https://chromium-review.googlesource.com/321622 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| 53a2da13 | 2016-01-11 15:43:32 | Test drawing with a shader with two different sampler types This adds some test coverage that's missing from dEQP. The test uses two different samplers in a shader, a cube map sampler and a 2D texture sampler, adds the sampling results together and checks if the result is correct. BUG=angleproject:1261 TEST=angle_end2end_tests Change-Id: If21e24c964fc208b5d1ccd446834dabf13194944 Reviewed-on: https://chromium-review.googlesource.com/321621 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| 4a8329f2 | 2016-01-11 17:12:57 | Refactoring: Split TextureTest to multiple classes This removes the cube map setup and the draw scale parameter from the tests that don't need them, and reuses the code for setting up the window and the shader program for most of the texture tests. The tests are now structured as follows: TexCoordDrawTest: Test class that sets up a shader program for drawing with texture coordinates. Vertex shader source can be overridden in subclasses, and fragment shader source must be specified in subclasses. Texture2DTest: Inherits TexCoordDrawTest, sets up a 2D texture and a shader for drawing from it. Texture2DTestWithDrawScale: Inherits Texture2DTest, adding a scale parameter that scales the quad that gets drawn. TextureCubeTest: Inherits TexCoordDrawTest, sets up a cube map and a 2D texture and a shader for drawing from them. Texture2DArrayTestES3: Inherits TexCoordDrawTest. Reserves a texture ID and sets up an ESSL3 shader for drawing from a 2D texture array. Also add a few comments about where things being tested are specified. Also, ANGLETest::drawQuad parameter names are renamed to make their meaning clearer. The parameters affect the vertex shader attribute values, which the shader may use for other things besides setting the vertex position. BUG=angleproject:1261 TEST=angle_end2end_tests Change-Id: Id673e36d5883aaaf47f2f830c2a1ad0ca293d578 Reviewed-on: https://chromium-review.googlesource.com/321620 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| c89df2ba | 2015-12-07 13:05:17 | Add loadable_module versions of libEGL and libGLESv2. Reland with a link fix for Clang on Windows In order to implement the --use-gl=angle Chrome flag on Linux, we need to have the ANGLE .so directly in the build directory however GYP places shared_libraries under lib/ on Linux. On the contrary loadable_modules cannot be linked against so we need to keep the shared_library targets. This commit adds _ANGLE versions of the libEGL and libGLESv2 targets as loadable module that depend on their respective shared library. BUG=522967 Change-Id: Iad968ab786b94b6041c279921de99633d23b48a7 Reviewed-on: https://chromium-review.googlesource.com/318470 Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> | ||
| 1fae3556 | 2016-01-07 14:33:48 | Add dEQP Linux GN integration. BUG=angleproject:1272 Change-Id: I20cb8968221c25bb374b3cc71d7ca619a35f1a2f Reviewed-on: https://chromium-review.googlesource.com/320781 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 5f80d016 | 2016-01-11 11:16:01 | Disallow invariant(all) pragma in ESSL 3.00 fragment shaders ESSL 3.00.4 section 4.6.1 says that using #pragma STDGL invariant(all) in a fragment shader is an error, so make it an error. This spec language is not found in ESSL 1.00, and it's been removed in ESSL 3.10. BUG=angleproject:1276 TEST=angle_unittests Change-Id: I2022f35475f867304b55dfb142f8568f6df28830 Reviewed-on: https://chromium-review.googlesource.com/321240 Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> | ||
| edbc2449 | 2016-01-04 11:25:00 | Add dEQP GN integration. This is Windows-only for now, but will be expanded to Linux. Also do a bit of refactoring in our deqp.gypi file. BUG=angleproject:1272 Change-Id: I526a99fe3b91a2d9e8901c7e033a4916a06780be Reviewed-on: https://chromium-review.googlesource.com/320800 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 82b5ab60 | 2015-12-11 09:30:15 | Compile out GLSL/ESSL translator output code if it's not needed In WinRT we only use the HLSL code, so the GLSL/ESSL output code is not necessary and is only adding to our binary size. BUG=angleproject:1250 Change-Id: I9363ca3981bde50a230f8353c1bcc09f6ea209cb Reviewed-on: https://chromium-review.googlesource.com/317358 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Austin Kinross <aukinros@microsoft.com> Tested-by: Austin Kinross <aukinros@microsoft.com> | ||
| ff318af1 | 2015-12-22 15:34:45 | Fix BlendMinMaxTest.RGBA16F on D3D11 Feature Level 9_3 This test checks for OES_texture_half_float, but it's trying to use a 16F texture as a color buffer so it should be checking for EXT_color_buffer_half_float. Since EXT_color_buffer_half_float requires more format support (e.g. R16F, RG16F, RGB16F) than OES_texture_half_float, it's possible for an implementation to support one extension and not the other. D3D11 Feature Level 9_3 does this. Change-Id: I40fb38aa3f419be2606464bd0476cd064afe90fa Reviewed-on: https://chromium-review.googlesource.com/319642 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org> | ||
| 9a866453 | 2016-01-08 10:35:55 | Fix compilation error on Linux BUG=574909 Change-Id: I6dc4b010b67a9c7f3b64215a168e6ed5e894989b Reviewed-on: https://chromium-review.googlesource.com/320635 Commit-Queue: Byungseon Shin <xingri@gmail.com> Tested-by: Byungseon Shin <xingri@gmail.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Corentin Wallez <cwallez@chromium.org> | ||
| 539146e1 | 2016-01-06 19:34:18 | Add rpath for GN build of angle_end2end_tests. This fixes the static library build of this target on Linux. BUG=angleproject:1270 Change-Id: Id65bd9b7136918829f385920b540a4df83650c6f Reviewed-on: https://chromium-review.googlesource.com/320615 Tested-by: Kenneth Russell <kbr@chromium.org> Tryjob-Request: Kenneth Russell <kbr@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 8d8b108a | 2016-01-04 16:44:57 | Disallow local function prototypes Function prototypes should not be allowed inside other functions according to ESSL 3.00.4 section 4.2.4. BUG=angleproject:1068 TEST=angle_unittests, dEQP-GLES*.functional.shaders.functions.invalid.local_function_proto* Change-Id: I54160da4d49b92a6cd7cbee020e67733963d4e10 Reviewed-on: https://chromium-review.googlesource.com/320091 Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| 5d653186 | 2016-01-04 14:43:28 | Disallow multiple function prototypes in ESSL 1.00 The same function can't be declared twice in ESSL 1.00. In ESSL 3.00 this is allowed. A function prototype following the definition of that function is not interpreted as redeclaration, and the shader compiler continues to allow this. BUG=angleproject:1067 TEST=angle_unittests, dEQP-GLES2.functional.shaders.functions.invalid.double_declare* Change-Id: I6d2ddafd456d378d92839600f19069ad1cd19aff Reviewed-on: https://chromium-review.googlesource.com/320082 Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| ee63f5d9 | 2016-01-04 11:34:54 | Move function parsing code to ParseContext This change is pure refactoring. It will make it easier to fix bugs related to function declarations. BUG=angleproject:911 BUG=angleproject:1067 BUG=angleproject:1068 TEST=angle_unittests Change-Id: I031783dc02612d9cf3ff7a9c8291cf8ab33577aa Reviewed-on: https://chromium-review.googlesource.com/320081 Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> | ||
| e1743f37 | 2016-01-06 05:24:22 | Clang warning fixes This fixes member initialization order and unused private member warnings that broke the Clang build after the last Angle roll. BUG=82385 Change-Id: If866f352bda6d66093c180fdbec6c16bf902b628 Reviewed-on: https://chromium-review.googlesource.com/320466 Reviewed-by: Nico Weber <thakis@chromium.org> Tryjob-Request: Nico Weber <thakis@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tryjob-Request: Geoff Lang <geofflang@chromium.org> Tested-by: Nico Weber <thakis@chromium.org> | ||
| ce95d05b | 2015-12-20 22:20:14 | Fixed memory leak in egl::Error and gl::Error Move assignment operator of both classes contained a memory leak. Changed type of mMessage from mutable std::string *to mutable std::unique_ptr<std::string> BUG=angleproject:1264 Change-Id: I7d1419b2e9f385b36afebfd6371983be33ee9e61 Reviewed-on: https://chromium-review.googlesource.com/319520 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tryjob-Request: Tibor Ouden, den <tibordenouden@gmail.com> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 69bbc98e | 2016-01-05 13:25:05 | Fix case of #includes in DisplayCGL.mm Building libGLESv2 on Mac currently results in .../DisplayCGL.mm:9:10: fatal error: 'libANGLE/renderer/gl/CGL/DisplayCGL.h' file not found Other files in libANGLE/renderer/gl/cgl are using lowercase `cgl` for #includes. DisplayCGL.mm should do the same. Change-Id: I03b68041ef3194eb14d65738e4e4fb12711b1b20 Reviewed-on: https://chromium-review.googlesource.com/320155 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> | ||
| ca311ddb | 2015-12-07 15:07:48 | Enable and fix the -Wshorten-64-to-32 BUG=angleproject:635 Change-Id: If09014508d5f4dfeb17ac946672a76a98b8ad175 Reviewed-on: https://chromium-review.googlesource.com/316580 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> | ||
| 7ee40d1a | 2016-01-04 08:37:00 | Fix compilation failures on OSX standalone builds BUG= Change-Id: Ifd40ae30d601227caf550546fcffc286cf533a73 Reviewed-on: https://chromium-review.googlesource.com/320290 Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> | ||
| ce8045dc | 2016-01-04 19:40:47 | Fix EGL_ANGLE_flexible_surface_compatibility string The extension string was misspelled. Change-Id: Ic44dfe7340696e7e49c4924db068e9454927d5c4 Reviewed-on: https://chromium-review.googlesource.com/320371 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 0d53c400 | 2016-01-05 03:30:51 | Revert "Ignore clang -Wall warning." This was not working as intended. The correct fix was implemented in 444922662a59a45ad8f86ec9480b180571337f4e This reverts commit 74b92323c9a210178ab97cc9418d6bf639cb9d8c. Change-Id: Ib2bc3861bcdb49555b59981ca95f1c1c1e924d7d Reviewed-on: https://chromium-review.googlesource.com/320480 Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 465b3a5f | 2015-12-15 12:08:24 | Add texture sampling perf test The test generates a texture containing random data and then blurs it in a fragment shader using nearest neighbor sampling. The test is specifically designed to test overhead of GLSL's builtin texture*() functions that may result from how ANGLE translates them on each backend. BUG=angleproject:1261 TEST=angle_perftests Change-Id: I188fa8c07e609b7f371e587358f913b506bd7d44 Reviewed-on: https://chromium-review.googlesource.com/319382 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| 9b6b351e | 2016-01-05 14:16:22 | Fix build issue in direct composition patch MSVS2013 was warning about implicit conversion from EGLint to bool. Fix this by making the conversion explicit like another similar conversions. The issue got introduced by the recent patch "Implement EGL_ANGLE_direct_composition extension". Since the issue only affects some particular build varieties, it's simpler to fix it rather than revert the patch. Change-Id: I120d34fddb48278856cbb0339ce25c49e57eb781 Reviewed-on: https://chromium-review.googlesource.com/320530 Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| 49ae88ba | 2015-12-09 16:44:29 | Implement EGL_ANGLE_direct_composition extension On D3D11, if dcomp.dll can be loaded then EGL_ANGLE_direct_composition is exposed. Setting EGL_DIRECT_COMPOSITION_ANGLE as an attrib on a surface will force it to use DirectComposition to draw to the screen, possibly saving power. BUG=524838 Change-Id: I3ea175a97bbca1a3388ffe52fdd1587a2f0c2ce7 Reviewed-on: https://chromium-review.googlesource.com/319214 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: John Bauman <jbauman@chromium.org> | ||
| 44492266 | 2016-01-04 13:04:08 | Disable virtual destructor warning in dEQP. This small error in dEQP triggers a warning that was recently enabled in Chromium builds. We should remove the suppression once we fix dEQP. BUG=angleproject:1271 Change-Id: I9df3a304043b6decc00440103d105c9de76dc2db Reviewed-on: https://chromium-review.googlesource.com/320320 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nico Weber <thakis@chromium.org> Tryjob-Request: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| c22cf238 | 2016-01-04 13:58:38 | Fix missing virtual destructor warning. This only showed up on Linux/standalone builds for me. The error was added during the Debug extension patch. Change-Id: Ibfcbdb61a71f30e863a10719c552ce662f835256 Reviewed-on: https://chromium-review.googlesource.com/320330 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 7f448b58 | 2015-12-16 13:31:57 | Add an EGL_ANGLE_surface_orientation extension. BUG=angleproject:1262 Change-Id: Ifbb0f5302311a68a0c6f02baaea706cbb7055a52 Reviewed-on: https://chromium-review.googlesource.com/320011 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 666cb828 | 2016-01-04 17:44:09 | Revert "Add an EGL_ANGLE_surface_orientation extension." Compilation warnings on clang. This reverts commit 18cc14b5951842ede85c06dcbc0bba230bcedc45. Change-Id: If58047486116e34ef30c4b317d3fb47cd2349d15 Reviewed-on: https://chromium-review.googlesource.com/319822 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 18cc14b5 | 2015-12-16 13:31:57 | Add an EGL_ANGLE_surface_orientation extension. BUG=angleproject:1262 Change-Id: I863c46c8557604da045447550f7d69831c9f06b5 Reviewed-on: https://chromium-review.googlesource.com/318780 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 329af698 | 2016-01-04 11:12:12 | Make generate_parser.sh run from any working directory The script used to have partial support for specifying complete paths to the files it referenced, but the patch command didn't work if the working directory wasn't src/compiler/translator. It's simplest to fix the script by just changing the working directory in the script. Change-Id: If3642cbe11436d8c7553cd1812ee0f6c19fe990b Reviewed-on: https://chromium-review.googlesource.com/320270 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| 66641c61 | 2016-01-04 15:31:15 | Fix typo in shader test The only error in the test should be the non-integer index. gl_FragColor should be used correctly. BUG=angleproject:1254 TEST=angle_unittests Change-Id: I0b7a36be5485661cc03bf2c476aaacae5d3b6e76 Reviewed-on: https://chromium-review.googlesource.com/320280 Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| d8cd6f2c | 2016-01-02 12:44:33 | Fix clang warning in Buffer.cpp BUG=angleproject:520 Change-Id: I3ee9e61a6a25eb6f16cf7d68d6da27ba1eec752d Reviewed-on: https://chromium-review.googlesource.com/320240 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 70d0f499 | 2015-12-10 17:45:46 | Implement GL_KHR_debug. BUG=angleproject:520 Change-Id: I9ced3e7ab1515feddf2ec103c26b2610a45b1784 Reviewed-on: https://chromium-review.googlesource.com/319830 Tryjob-Request: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 74b92323 | 2016-01-02 09:58:25 | Ignore clang -Wall warning. Change-Id: I76e3cd5038457a7d978497ef9a5ebee60b05e34d | ||
| 66988745 | 2015-12-22 19:39:19 | Revert "Implement GL_KHR_debug." This reverts commit 6c521b7a70a53b1c9f7762e53e34b5a8146b0f7b. Change-Id: I6ff981198e31f34d3e405edea6277ee75516d6ee Reviewed-on: https://chromium-review.googlesource.com/319820 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 6c521b7a | 2015-12-10 17:45:46 | Implement GL_KHR_debug. BUG=angleproject:520 Change-Id: I78d14cc8c94f5cef58604220f0ca847473b25bf8 Reviewed-on: https://chromium-review.googlesource.com/317820 Tryjob-Request: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 8047f065 | 2015-12-15 17:54:42 | Improve perf testing framework The ANGLERenderTest subclasses have a parameter "iterations". Previously most of these tests would perform iterations^2 iterations, since the looping was done both in ANGLERenderTest and in the individual test classes. Do the looping only in the individual test classes instead. This enables getting rid of separate beginDrawBenchmark() and endDrawBenchmark() functions. Some other unused code is also removed: 1. stepBenchmark function 2. unused parameters to step() This makes the core loop of running tests simpler. The perf testing framework also now has shared logic for deciding when to end a given test. The score calculation for tests is also changed. Instead of reporting just the number of operations done, it is reported relative to the actual run time of the test. This should make the test results more accurate, since run time of the tests may have some variation. It also enables changing the run time of the tests without rebaselining them. In the tests that use GPU, GPU operations are also waited to finish before stopping the timer. BUG=angleproject:1261 TEST=angle_perftests Change-Id: I69e9aad8afd2d9dedd60e144f0a5d4203618feef Reviewed-on: https://chromium-review.googlesource.com/319381 Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> | ||
| add0ef14 | 2015-12-17 15:43:31 | Remove deprecated ShShaderOutput versions. These aren't referenced from Chromium code any more. BUG=chromium:550487 Change-Id: Ie4094667ec5f739efd9f1253ffdb779deaf3cebc Reviewed-on: https://chromium-review.googlesource.com/319162 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Kenneth Russell <kbr@chromium.org> | ||
| 5aeed4cc | 2015-12-09 13:36:43 | Using dirty bit notification for D3D9 viewport state BUG=angleproject:1249 This is a continuation of D3D dirty bit refactor for D3D9 performance enhancements Change-Id: Iedd7eb003981cac7f81a58560cb326760f01c06a Reviewed-on: https://chromium-review.googlesource.com/317313 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tryjob-Request: Dian Xiang <dianx@google.com> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| fecbed9f | 2015-12-17 12:01:12 | Fix code style in perf tests 1) Format switch/case with git cl format 2) Change NULL -> nullptr 3) Change int to GLint where appropriate 4) Use more appropriate variants of asserts BUG=angleproject:1261 TEST=angle_perftests Change-Id: I97d6260dbd72ef3897fff145682b7043bf323b76 Reviewed-on: https://chromium-review.googlesource.com/319380 Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| a8893120 | 2015-12-08 16:37:21 | Using dirty bit notification for D3D9 scissor state BUG=angleproject:1249 This is a continuation of D3D dirty bit refactor for D3D9 performance enhancements Change-Id: I480bb95414a1baf71e7768a1704b34ae55244ed1 Reviewed-on: https://chromium-review.googlesource.com/316917 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Dian Xiang <dianx@google.com> | ||
| 6ae40ea5 | 2015-12-07 20:15:28 | Using dirty bits notification for D3D9 depth stencil state BUG=angleproject:1249 This is a continuation of the D3D dirty bit refactor for D3D9 for performance enhancements Change-Id: I8690d47999b73483c47f4994dc46cd97f4ced63d Reviewed-on: https://chromium-review.googlesource.com/316449 Tryjob-Request: Dian Xiang <dianx@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Dian Xiang <dianx@google.com> | ||
| c660ba8e | 2015-12-07 22:42:33 | Using dirty bit notification for D3D9 rasterizer state BUG=angleproject:1249 Continuation of refactor for d3d9 dirty bit refactor for performance enhancements Change-Id: I414cc9bfbdc806d870a9f208895f411edf5adcf3 Reviewed-on: https://chromium-review.googlesource.com/316515 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Dian Xiang <dianx@google.com> | ||
| f521069b | 2015-12-10 14:29:28 | Removing unused render target format in D3D11 This takes up about 2.9% of the time in performance runs. BUG=angleproject:1161 Change-Id: I9ff98cd6f4bfd14cab0c702d5873f3fadfbcb4d7 Reviewed-on: https://chromium-review.googlesource.com/317574 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Dian Xiang <dianx@google.com> | ||
| 31aabdfb | 2015-12-16 10:53:46 | gyp: Always use pkg-config wrapper Calling pkg-config directly doesn't work when building with a sysroot image as it will looks for host libraries rather than those within the sysroot. BUG=chromium:569947 Change-Id: I6f3e63c1816cd9393110cb3060744a69a93c9a2e Reviewed-on: https://chromium-review.googlesource.com/318771 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Sam Clegg <sbc@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| cd089732 | 2015-12-17 09:53:09 | Re-land "Implement GL_EXT_color_buffer_half_float." This exposes previously enabled functionality. Also update the format support check to be: supported: GLES3 || texture extension renderable: supported && color buffer extension filterable: filtering extension (Note: we silently support float rendering in ES2) Re-land with suppression for newly exposed failing test. BUG=angleproject:445 Change-Id: I4e46699e6b0c2ec8a7d8b36f1f598af1ec6420bc Reviewed-on: https://chromium-review.googlesource.com/318931 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 0a90f527 | 2015-12-17 14:51:56 | Revert "Implement GL_EXT_color_buffer_half_float." Failing dEQP-GLES3.functional.fbo.color.repeated_clear.sample.tex2d.rgb16f http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20dEQP%20%28NVIDIA%29/builds/4651 Likely missing a suppression for this test. It likely passed only because the extension was missing and it was passing as not supported. BUG=angleproject:1229 This reverts commit 39f9251daef5c4ddb4b7c413466a092f4a7f21bf. Change-Id: Ia703378d5aaacafc14503aff0b52a795b7eb4467 Reviewed-on: https://chromium-review.googlesource.com/319080 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| fe3e46ab | 2015-11-24 19:13:55 | Add EGL_ANGLE_flexible_surface_compatibility This extension allows users of ANGLE to make contexts current with surfaces that were created with different bit depths. BUG=angleproject:1223 Change-Id: I9072c256e0a36aee1ce41ab69cb9a04240bf0521 Reviewed-on: https://chromium-review.googlesource.com/314935 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tryjob-Request: John Bauman <jbauman@chromium.org> Tested-by: John Bauman <jbauman@chromium.org> | ||
| 39f9251d | 2015-12-14 15:34:09 | Implement GL_EXT_color_buffer_half_float. This exposes previously enabled functionality. Also update the format support check to be: supported: GLES3 || texture extension renderable: supported && color buffer extension filterable: filtering extension (Note: we silently support float rendering in ES2) BUG=angleproject:1229 Change-Id: Icf0775891d6e336acd1a0ac07c3b37cf6bb0f101 Reviewed-on: https://chromium-review.googlesource.com/308430 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 3e03ebd6 | 2015-12-07 13:15:10 | Using dirty bits notification for D3D9 blend state BUG=angleproject:1249 Dirty bit notifications are used in GL and D3D11 for state tracking. This is a continuation of D3D dirty bit refactor for D3D9 Change-Id: Ifaa1826a93cf36c83d68150107b164d1d269c2b0 Reviewed-on: https://chromium-review.googlesource.com/316475 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tryjob-Request: Dian Xiang <dianx@google.com> Tested-by: Dian Xiang <dianx@google.com> | ||
| 792a41d1 | 2015-12-15 12:39:16 | Fix missing newline from "Missing main()" error message Change-Id: Id28e20097fc2c66117c688425c73df731afecbe3 Reviewed-on: https://chromium-review.googlesource.com/318431 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| 90c253a6 | 2015-12-15 15:14:08 | Add an instancing perf test. BUG=526217 BUG=angleproject:1164 Change-Id: Ia353a3b2fa0ab0e8b7fd15d72bb63e5ecb7833b1 Reviewed-on: https://chromium-review.googlesource.com/301469 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tryjob-Request: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 3215b207 | 2015-12-15 16:41:39 | Validation cube completeness for FBO attachments. ES3 adds a clause that cube map FBO attachments must be cube complete to produce complete framebuffers. ES2 doesn't have this clause, but some (if not all, unverified) OpenGL back-ends don't support these incomplete cube map attachments. BUG=angleproject:1259 Change-Id: Idd4564488375b8646dde712e6ce4a158c23020ee Reviewed-on: https://chromium-review.googlesource.com/318264 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Rafael Cintron <rafael.cintron@microsoft.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 4bc76d07 | 2015-12-15 20:07:23 | Revert "Add loadable_module versions of libEGL and libGLESv2." This reverts commit 6beb0bfdd0e57d7cb5797355d10e971c7c97cc29. It caused compile failures on win_clang_dbg because when building libEGL_ANGLE.dll DllMainCRTStartup wasn't defined. Change-Id: I8080f8db373f5988d86560da1b8b2a1bae30d3ea Reviewed-on: https://chromium-review.googlesource.com/318460 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> | ||
| 91dec84c | 2015-12-08 15:18:08 | Extend the CallDAG info log to report undefined functions BUG=angleproject:784 Change-Id: If5073a91bc4f47ade27c242d6966306600029f33 Reviewed-on: https://chromium-review.googlesource.com/316870 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> | ||
| e678b66c | 2015-12-07 15:54:17 | TDependencyGraph: use range-base for loops instead of iterators No functional changes intended. BUG=angleproject:591 Change-Id: Ieccf0b792766be86a3533e5324ce6f83ee508ad5 Reviewed-on: https://chromium-review.googlesource.com/316601 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> | ||
| 0469479f | 2015-12-07 15:52:05 | Compiler: remove dead code in limitExpressionComplexity TGraphTraverser is a class that does nothing by itself so the for loop was a noop statement and has been for at least two years (since 17732823f9c2, didn't check earlier). BUG=angleproject:591 Change-Id: I1919059fcb8987c2f043a71fed6223e16bc014d8 Reviewed-on: https://chromium-review.googlesource.com/316600 Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> | ||
| 700ad289 | 2015-12-07 15:57:47 | Don't crash when calling ShConstructCompiler with a wrong output BUG=angleproject:446 Change-Id: Ic1c326f79105950e5c3eb8724eba12fca187a2ec Reviewed-on: https://chromium-review.googlesource.com/316610 Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> | ||
| e102fee7 | 2015-12-10 11:23:30 | Add stub entry points for GL_KHR_debug. BUG=angleproject:520 Change-Id: I6f19ca160214a44c75619c320d5e1db7e4098eda Reviewed-on: https://chromium-review.googlesource.com/317540 Tryjob-Request: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 6beb0bfd | 2015-12-07 13:05:17 | Add loadable_module versions of libEGL and libGLESv2. In order to implement the --use-gl=angle Chrome flag on Linux, we need to have the ANGLE .so directly in the build directory however GYP places shared_libraries under lib/ on Linux. On the contrary loadable_modules cannot be linked against so we need to keep the shared_library targets. This commit adds _ANGLE versions of the libEGL and libGLESv2 targets as loadable module that depend on their respective shared library. BUG=522967 Change-Id: I08f2ce0ee0430eff5bee852f09cd7d30b94d6266 Reviewed-on: https://chromium-review.googlesource.com/316421 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> | ||
| cb34ea5e | 2015-12-11 16:01:18 | Re-land "Finish ReadBuffer support in end2end_tests." Currently we had a few TODOs concerned about unimplemented calls in ANGLE. ANGLE now has support for ReadBuffer, so uncomment the calls. Re-land with end2end_tests fix. BUG=angleproject:940 Change-Id: I6e00c3aac6307308fb7f00c7e0426812563ed778 Reviewed-on: https://chromium-review.googlesource.com/317821 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 7c8d1d84 | 2015-12-09 13:09:03 | D3D11: Use default arguments in texture format table. This reduces the footprint of the table considerably, and makes it a little bit easier to maintain. BUG=angleproject:1244 Change-Id: I84710729b94ba78813f9be2fcadb8c4d51fe8d7d Reviewed-on: https://chromium-review.googlesource.com/317330 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| bb1a5be9 | 2015-12-02 12:03:46 | Expose unsized GL_FLOAT formats required by GL_OES_texture_float BUG=angleproject:1209 Change-Id: I490c524d203dd72a8e6c556b537c4254720d9447 Reviewed-on: https://chromium-review.googlesource.com/315510 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tryjob-Request: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 0998fe96 | 2015-12-11 11:31:38 | Fix Clang 3.7 build issue in VS 2015 Update 1 VS 2015 Update 1 adds support for 'Clang 3.7 with Microsoft CodeGen'. This fixes these errors when using Clang 3.7 in VS2015: compiler\translator\ASTMetadataHLSL.cpp(69,10): error : 'visitLoop' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override] compiler\translator\ASTMetadataHLSL.cpp(75,10): error : 'visitSelection' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override] compiler\translator\ASTMetadataHLSL.cpp(336,10): error : 'visitLoop' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override] Change-Id: Ia9c3029eb2966132827596b55ad9afce34b6f19c Reviewed-on: https://chromium-review.googlesource.com/317732 Tryjob-Request: Austin Kinross <aukinros@microsoft.com> Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> | ||
| 8e89866d | 2015-12-11 12:24:21 | Remove redundant index integer check from ValidateLimitations Non-integer indices are already rejected in the parser, so the ValidateLimitations pass doesn't need to check for them. ESSL 1.00 spec is not actually terribly clear about whether the parser should do this check, but the language grammar in the spec only has indexing with "integer_expression" so it seems like ANGLE's interpretation of only allowing indexing with integers is correct. ESSL 3.00 makes this restriction explicitly clear in section 5.7. BUG=angleproject:1254 TEST=angle_unittests Change-Id: I02b2a6f4d9fa7801a98df63ed21bc990e1585eb8 Reviewed-on: https://chromium-review.googlesource.com/317741 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com> | ||
| 8a76dcc7 | 2015-12-10 20:25:12 | Don't try to apply ForLoopUnroll to loops it can't handle ForLoopUnroll should only mark loops that fit the limitations in ESSL 1.00 Appendix A. BUG=angleproject:1253 TEST=angle_unittests, WebGL conformance tests Change-Id: I00b0a7d29cd42efea9611d020aa1f873ac04773f Reviewed-on: https://chromium-review.googlesource.com/317551 Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Zhenyao Mo <zmo@chromium.org> | ||
| 5807a536 | 2015-12-03 13:01:22 | Fix buffer unbinding upon deletion. - Remove buffer bindings for new ES3 buffer types. - Fix detachment behavior to GLES3 spec, i.e. detach only from currently bound containers. - Make pack/unpack buffer binding parameter available in GLES3. - Update test expectations. BUG=angleproject:1191 Change-Id: Iab4c1de8d96a523d5af55d22956d50c10f7c93c2 Reviewed-on: https://chromium-review.googlesource.com/315521 Tryjob-Request: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> | ||
| d561057f | 2015-12-10 19:42:09 | Fix ValidateLimitations for folded non-constant expressions ANGLE recently gained the ability to constant fold some expressions that are not constant expressions. ValidateLimitations should continue to recognize all cases where an expression is not a constant expression. BUG=angleproject:851 TEST=angle_unittests Change-Id: I8ad0552a59213cdd6af9a220ffd672be9752271d Reviewed-on: https://chromium-review.googlesource.com/317281 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tryjob-Request: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Zhenyao Mo <zmo@chromium.org> | ||
| b0f0b81d | 2015-11-21 17:49:29 | Don't skip delete_bound.transform_feedback. A one-line subset of 36167ab3 allowed dEQP-GLES3.functional.lifetime.delete_bound.transform_feedback to pass, though it indented that line differently than its neighbors. Fix up the indentation and don't skip the test. BUG=angleproject:1150 TEST=angle_deqp_gtest_gles3_tests --gtest_filter='*transform_feedback*' Change-Id: I8471bd46f8a642b0945b43ab9b980c11c50d63c0 Reviewed-on: https://chromium-review.googlesource.com/313860 Tryjob-Request: Frank Henigman <fjhenigman@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Frank Henigman <fjhenigman@chromium.org> | ||
| 31c9d16e | 2015-12-08 10:51:25 | Re-land "Disable RTTI in VS release builds" - Re-land with fix for Chromium Debug Windows builds Chrome forbids RTTI, but standalone ANGLE currently allows it. Disallowing RTTI in standalone release builds brings ANGLE and Chrome closer, and prevents accidental use of dynamic_cast in ANGLE. It also reduces binary size. Win10 libGLESv2 (x86) is 47KB smaller after this. BUG=angleproject:1239 Change-Id: I505fd0d72868a38444e47198a9bf85ee3e25719f Reviewed-on: https://chromium-review.googlesource.com/316830 Tryjob-Request: Austin Kinross <aukinros@microsoft.com> Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> | ||
| 08bf81d5 | 2015-12-09 16:23:32 | clang/win: Let EGLDeviceTest.cpp build with -Wextra on trunk too. Like https://chromium-review.googlesource.com/317360, but for code that's in ANGLE trunk but not yet rolled in by Chromium. BUG=567877 Change-Id: I59b1568b134f57919eb333e99e7d185416d5d3b5 Reviewed-on: https://chromium-review.googlesource.com/317390 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tryjob-Request: Jamie Madill <jmadill@chromium.org> Tested-by: Nico Weber <thakis@chromium.org> | ||
| 41ae31c4 | 2015-12-08 11:40:54 | Destroy surfaces from Display::terminate instead of the DisplayImpl destructor. Previously, the parent display impl would be destroyed before the surface impls. It is useful to call helper functions in the parent display during surface destruction. BUG=540829 Change-Id: I0884826d2e360319da896f049d46bfc01a2481a0 Reviewed-on: https://chromium-review.googlesource.com/316801 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 1b3979b9 | 2015-12-08 11:39:24 | Pass the gl::Texture object into Surface::bindTexImage. BUG=540829 Change-Id: Iee602165e69bfe574821c6f628a745c32932a938 Reviewed-on: https://chromium-review.googlesource.com/316800 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 02bbec19 | 2015-12-02 16:54:53 | Refactoring RendererD3D to not have virtual functions for state calls BUG=angleproject:1242 Draw calls get called many times. Eliminating the number of virtual function calls will help with performance. Renderer9 and Renderer11 now have diverging paths for managing state with the dirty bits. Hence, we can remove some of the virtual calls. Change-Id: Ic5d69e744826f1c4f4ae168bca058f4743ff0843 Reviewed-on: https://chromium-review.googlesource.com/315229 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Jamie Madill <jmadill@chromium.org> Tested-by: Dian Xiang <dianx@google.com> | ||
| d3754d82 | 2015-12-09 22:45:44 | Revert "Finish ReadBuffer support in end2end_tests." Fails on the bots, on ReadPixelsTest.DrawWithPBO/ES3_D3D11 BUG=angleproject:940 This reverts commit ada5d07ec6c3578eb07adbb647360c0ae60edf46. Change-Id: I60c71af6317f6b5ee1bf1555cb4573c5e82a11d6 Reviewed-on: https://chromium-review.googlesource.com/317430 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 0c93b8a0 | 2015-12-09 15:31:40 | clang/win: Let EGLDeviceTest.cpp build with -Wextra. In a Chromium build, this target is built as part of gpu, with the chromium_code warning settings applied. Make sure it builds in that config. BUG=567877 Change-Id: I7464538a259295d83d990853b06b9ba76b82889d Reviewed-on: https://chromium-review.googlesource.com/317360 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Nico Weber <thakis@chromium.org> | ||
| ada5d07e | 2015-12-08 15:40:52 | Finish ReadBuffer support in end2end_tests. Currently we had a few TODOs concerned about unimplemented calls in ANGLE. ANGLE now has support for ReadBuffer, so uncomment the calls. BUG=angleproject:940 Change-Id: Ib297e3ab7f2fa2424ee2cc85918331066dae4475 Reviewed-on: https://chromium-review.googlesource.com/317340 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 91d3e94f | 2015-12-08 11:26:15 | D3D11: Apply null InputLayout with no attributes. In some cases in ES3, we can render without vertex attributes. For this, don't bind or create an empty input layout, but instead bind null. This silences a D3D11 warning in Debug, when viewing the system out. BUG=angleproject:667 Change-Id: Ib88dc1177d7f9bb6a5fa15e44c74da022be137f6 Reviewed-on: https://chromium-review.googlesource.com/316612 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| febe45fc | 2015-12-08 10:18:13 | Don't disable COMDAT folding or OptimizeReferences in WinRT This is bloating the WinRT binaries unnecessarily. BUG=angleproject:1250 Change-Id: I87fa2422e7d58374329956540d03933b0177234b Reviewed-on: https://chromium-review.googlesource.com/316820 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 508a5b7d | 2015-12-08 11:26:14 | Windows: Write test name in debug log. This helps isolate particular debug log messages to specific tests. BUG=angleproject:667 Change-Id: I6be37d50cc41a13abbceb395e6e9b603bd44c7bd Reviewed-on: https://chromium-review.googlesource.com/316611 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 1e928bc0 | 2015-12-09 13:17:39 | dEQP/Win: Skip trig tests that crash on new compiler. The new version of D3DCompile_47.dll that gets bundled with the Chromium depot_tools Windows SDK seems to crash when compiling these shaders, I think during the optimization step. BUG=angleproject:1252 BUG=568170 Change-Id: Ic54a6353ffe3520ecc5e5012721c0a09eb370b22 Reviewed-on: https://chromium-review.googlesource.com/317331 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 6163c759 | 2015-12-07 16:32:59 | ES3: Allow floating point blit conversions under extension. If we support EXT_color_buffer_float, we should also allow blits to and from float and fixed point data, according to the extension spec. BUG=angleproject:1243 TEST=dEQP-GLES3.functional.fbo.blit.* Change-Id: I0957ac0647c94e38ebd67480c608eeb16c82dbf4 Reviewed-on: https://chromium-review.googlesource.com/316030 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 3d890436 | 2015-12-08 11:47:59 | Load the WGL_NV_DX_interop entry points in FunctionsWGL. BUG=540829 Change-Id: Iab080789f2a21b900e2641aa97c0e3392d007391 Reviewed-on: https://chromium-review.googlesource.com/316802 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| c5629759 | 2015-12-07 16:29:04 | Implement full program binary support for ES3. Refactor validation to be used in both the OES and ES3 entry points. BUG=angleproject:600 BUG=angleproject:1101 Change-Id: I2008c4ea04ce07910f03ae0b997f8a77b66203d8 Reviewed-on: https://chromium-review.googlesource.com/316620 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 36167ab3 | 2015-12-07 10:27:14 | Don't allocate VertexArray or TransformFeedback objects until binding. Follow the spec more closely and only reserve IDs of vertex arrays and transform feedback objects before binding. This saves memory and allows the glIs* calls to succeed. BUG=angleproject:1218 BUG=angleproject:1101 Change-Id: I0039680c39c66c1c5506f6a1a9121a71791b77e9 Reviewed-on: https://chromium-review.googlesource.com/316591 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 50b3fe89 | 2015-12-08 14:49:12 | Revert "Don't allocate VertexArray or TransformFeedback objects until binding." This reverts commit 070c0124be642383220ca44f795225b89d56f13b. Change-Id: I4ffa528f63311615bb4e22593c6e8a0ec424cd2d Reviewed-on: https://chromium-review.googlesource.com/316780 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 6c9b2ae9 | 2015-12-08 13:43:11 | Revert "D3D11: Use clamp wrap mode for Integer textures." dEQP-GLES3 texture failures: http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20dEQP%20%28NVIDIA%29/builds/4510/steps/angle_deqp_gles3_tests/logs/stdio dEQP-GLES3.functional.shaders.texture_functions.texture.isampler* dEQP-GLES3.functional.shaders.texture_functions.texture.usampler* BUG=angleproject:1244 This reverts commit 7a6a1ffeb275a8b565701305c8b42857ff2bf0b0. Change-Id: I0e25e7aed0e0d78015d5b8f5a7b9a81e0a5fca4e Reviewed-on: https://chromium-review.googlesource.com/316641 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 8c46ab11 | 2015-12-07 16:39:19 | OutputHLSL: Avoid using info sink stack as much as possible. Due to how the traversers work, it might not be trivial to avoid the info sink stack entirely, but minimize its use to keep the code as functional as possible. BUG=angleproject:958 Change-Id: I354313f10f496feea7c6a6f167b0617aeadbe5b0 Reviewed-on: https://chromium-review.googlesource.com/316412 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 61fea139 | 2015-12-07 14:20:02 | Protect against overflow in BinaryInputStream. BUG=angleproject:1112 Change-Id: I6d58d9e0db97ec6c67661abd92b57f61f357d6b5 Reviewed-on: https://chromium-review.googlesource.com/316640 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 41a2b8ea | 2015-12-07 21:44:26 | Revert "Protect against overflow in BinaryInputStream." This reverts commit dfa2fe31ad66ede57af1c0244ee99b8918eb2d9b. Change-Id: If4a7eb1876876991c537d0a9077cede52ba40b95 Reviewed-on: https://chromium-review.googlesource.com/316621 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| a5ed56ee | 2015-12-07 16:32:59 | D3D11: Mask off alpha channel for RGBA->RGB blits. We emulate RGB8 in D3D11 with RGBA8 textures. Make sure when we blit that we don't copy the unused texture channel. BUG=angleproject:1245 TEST=dEQP-GLES3.functional.fbo.blit.* Change-Id: I805132fda984860a6d84ad4c1fc7169973938df9 Reviewed-on: https://chromium-review.googlesource.com/316010 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 7a6a1ffe | 2015-12-07 16:32:58 | D3D11: Use clamp wrap mode for Integer textures. Until we can support all wrap modes for int textures, use a correct clamping scheme. This fixes several dEQP GLES3 FBO tests. This shuffles some of the tests in functional.texture.units since it hard-codes a different behaviour for all wrap modes, ignoring the sampler setting. BUG=angleproject:1244 TEST=dEQP-GLES3.functional.texture.* Change-Id: Ic7e89a111728dfb18821534996bf5b9a5ad172b6 Reviewed-on: https://chromium-review.googlesource.com/313997 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| dfa2fe31 | 2015-12-07 14:20:02 | Protect against overflow in BinaryInputStream. BUG=angleproject:1112 Change-Id: Iedd92ce7a56b20f42e51ef86278eb64fbae3c353 Reviewed-on: https://chromium-review.googlesource.com/316031 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 976489b2 | 2015-12-07 10:27:14 | Don't allocate VertexArray or TransformFeedback objects until binding. Follow the spec more closely and only reserve IDs of vertex arrays and transform feedback objects before binding. This saves memory and allows the glIs* calls to succeed. BUG=angleproject:1218 BUG=angleproject:1101 Change-Id: I7bf99870a7c93f5545325785cbecd891c6b77f8a Reviewed-on: https://chromium-review.googlesource.com/316402 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| adf825b3 | 2015-12-07 09:20:05 | Move TType::getCompleteString to Types.cpp. Probably left over from previous refactoring. BUG=angleproject:1247 Change-Id: Ieb4b60ae9f724248f92ae77d23e4bdd8c5d9265a Reviewed-on: https://chromium-review.googlesource.com/316400 Tryjob-Request: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> | ||
| 5c079d24 | 2015-12-07 09:56:32 | Don't print assertion expression as a format string. If the assert contained '%' symbols, it would be interpreted as a substituion. BUG=angleproject:1189 Change-Id: Ib347bc1a892397373e7318e032070c0337f110de Reviewed-on: https://chromium-review.googlesource.com/316410 Tryjob-Request: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> | ||
| 4028159e | 2015-11-19 18:24:44 | Using dirty bit notification for D3D11 viewport state BUG=angleproject:1161 This is a continuation of the dirty bit refactor Change-Id: I101f415094dd406f6b0a40cb260f1cbbfec7b62c Reviewed-on: https://chromium-review.googlesource.com/313249 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Dian Xiang <dianx@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Dian Xiang <dianx@google.com> | ||
| 29a65546 | 2015-11-17 17:15:50 | Using dirty bit notification for D3D11 scissor rectangle state BUG=angleproject:1161 This is a continuation of the dirty bit refactor Change-Id: I1a9f297835943eee5f756e4e4721b2db543184ec Reviewed-on: https://chromium-review.googlesource.com/312987 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Dian Xiang <dianx@google.com> | ||
| 2da819e1 | 2015-12-03 15:53:19 | D3D11: Fix blit from out-of-bounds. Do not copy pixels in a negative read region. Also make sure we clamp the boundaries so the dEQP tests are mostly pixel-perfect. We can't yet fix some default framebuffer tests because of issues with blitting RGBA8 (default FBO) to floating point framebuffers. BUG=angleproject:1241 TEST=dEQP-GLES3.functional.fbo.blit.* Change-Id: I16ee264b0b1a7e6b9121dde5ae4f96cfd27ea53e Reviewed-on: https://chromium-review.googlesource.com/315670 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> |