- 02 Aug, 2016 3 commits
-
-
Jamie Madill authored
This saves us looking up the FormatSet repeatedly. BUG=angleproject:1455 Change-Id: I77890c1eb427e7d087ceaf194a5001b8b03585d4 Reviewed-on: https://chromium-review.googlesource.com/359084Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Corentin Wallez authored
BUG=621031 Change-Id: Ib4cdd88ecd58f617813a91379a8b8b518fba149b Reviewed-on: https://chromium-review.googlesource.com/364910Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
Jamie Madill authored
For some nested pow expressions, queueing two node replacements in the same tree traversal would mangle tree, resulting in invalid code. Fix this by iterating over the tree until no replacements are found, and doing one replacement each iteration. BUG=angleproject:851 Change-Id: Ie08ab23f4bfe3d5f32726856afc61ff1f3d6c789 Reviewed-on: https://chromium-review.googlesource.com/365400Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
- 01 Aug, 2016 1 commit
-
-
Geoff Lang authored
BUG=angleproject:1298 Change-Id: Ibfbad8eb8ec824e377d8c1746a6691d6b689f498 Reviewed-on: https://chromium-review.googlesource.com/362601Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
- 29 Jul, 2016 1 commit
-
-
Martin Radev authored
Entry points were generated using scripts which take the new function declarations from gl31.h, find the newly added functions and output the new function declarations and defitions. BUG=angleproject:1442 TEST=angle_unittests Change-Id: I2d77eb4cc24873a31cb2745b7b82bf611d5058c6 Reviewed-on: https://chromium-review.googlesource.com/361291Reviewed-by:
Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
- 28 Jul, 2016 2 commits
-
-
Jamie Madill authored
BUG=angleproject:851 Change-Id: I50c3b3a4f00b27fed85f09509738513a441c7b5b Reviewed-on: https://chromium-review.googlesource.com/363990Reviewed-by:
Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This is a simpler and more portable design. Thanks for Austin from MS. BUG=angleproject:1452 Change-Id: I93e8f3fc61107f13c4b2c1cf7fbaf2bb7ccdfafb Reviewed-on: https://chromium-review.googlesource.com/363041Reviewed-by:
Austin Kinross <aukinros@microsoft.com> Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
- 25 Jul, 2016 2 commits
-
-
Martin Radev authored
Entry points were outside of the extern C block. Change-Id: Ifbd159c59b850a90f728db9027c485661aa96bc8 Reviewed-on: https://chromium-review.googlesource.com/361720Reviewed-by:
Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Jamie Madill authored
ANGLE D3D11 uses a geometry shader to expand points into quads. This led to an edge case with gl_PointCoord. When the user references gl_PointCoord in the fragment shader but renders with GL_TRIANGLES or other non-point primitives, gl_PointCoord is undefined, but ANGLE would produce a link error. This would break some very odd edge-case shaders (e.g. a shader that is used with both points and triangles). We can fix this by simply adding a dummy PointCoord value to our vertex shader is all cases. If the user renders points, we ignore the PointCoord value passed to the geometry shader. If they render tris or lines and use PointCoord, the shader signatures will match, and PointCoord will even have a sane value of (0.5, 0.5). BUG=angleproject:1380 Change-Id: I322155cd3801d0241cabc9bb639a5aaa502831b3 Reviewed-on: https://chromium-review.googlesource.com/362779 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Commit-Queue: Zhenyao Mo <zmo@chromium.org>
-
- 24 Jul, 2016 2 commits
-
-
Jamie Madill authored
Since the newer driver versions are required for WebGL 2 conformance, we need a solution that can detect a driver version to know if we should apply the workaround. Use a modified copy of Chrome's Windows GPU driver detection code. In the future we should extend this to a full module when we port the command buffer workarounds. BUG=angleproject:1452 Change-Id: I783d5726454671cc22585a2bf990c071d539aa9f Reviewed-on: https://chromium-review.googlesource.com/361962Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
BUG=angleproject:851 Change-Id: I68a47b8343a29e42c0a69ca3f2a6cb5054d03782 Reviewed-on: https://chromium-review.googlesource.com/362775Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
- 23 Jul, 2016 6 commits
-
-
Jamie Madill authored
This one was in a different blit function. BUG=angleproject:1246 Change-Id: Ib571c10ddc30b3293f5c0d6bdb357b4cd3b52579 Reviewed-on: https://chromium-review.googlesource.com/362774Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Zhenyao Mo <zmo@chromium.org>
-
Jamie Madill authored
This introduced a flaky failure to the multisample resolve blit tests. They would work sometimes if the state had set the correct viewport previously, so it wasn't always evident there was a bug. BUG=angleproject:1246 Change-Id: If16d574fb87484fcdc9b7cc6ecc0531ee4a8959d Reviewed-on: https://chromium-review.googlesource.com/362699Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Zhenyao Mo <zmo@chromium.org>
-
Zhenyao Mo authored
If the GL_EXT_draw_buffers extension isn't explicitly enabled in the shader, then gl_FragData is an array of size 1, not of size max_draw_buffers. BUG=angleproject:1441 TEST=webgl2_conformance with --use-gl=angle Change-Id: I2ead1457462bf1f396fda1f47022df6b54612e17 Reviewed-on: https://chromium-review.googlesource.com/362781Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Commit-Queue: Zhenyao Mo <zmo@chromium.org>
-
Jamie Madill authored
Introduced in https://chromium-review.googlesource.com/362641 Eventually we'll switch to using the same sets of warnings for standalone and GN ANGLE. BUG=angleproject:1441 Change-Id: I6534b9f85b952ddf1d953342cf9c8ddc5de6614e Reviewed-on: https://chromium-review.googlesource.com/362780Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Now that we preserve the sized-ness information, we can validate CopyTexSubImage and related methods correctly. Fixed a lot of WebGL 2 tests when using ANGLE. BUG=angleproject:1228 Change-Id: I959322c0a9bb16a2f16d60dce7cd1e63ca95b45a Reviewed-on: https://chromium-review.googlesource.com/362618Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This has a few advantages: it preserves all the information of the internal format, such as if it is sized or unsized. It also saves looking up the format multiple times in the table, which should improve speed in some cases. The extra sized-ness information will allow us to perform the correct validation in CopyTexSubImage calls. BUG=angleproject:1228 Change-Id: I42954771b0a9a968f5d787b8cf6e0af721791855 Reviewed-on: https://chromium-review.googlesource.com/362626Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
- 22 Jul, 2016 7 commits
-
-
Zhenyao Mo authored
BUG=angleproject:1441 TEST=webgl2 conformance Change-Id: Idb27036347e1e814ba4603969cc2065e425ac4aa Reviewed-on: https://chromium-review.googlesource.com/362641Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Kenneth Russell <kbr@chromium.org> Commit-Queue: Zhenyao Mo <zmo@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Geoff Lang authored
It's allowed to not have all code paths return a value in ESSL but the HLSL compiler detects this and generates an error. Work around this by adding dummy return statements at the end of each function that doesn't have one. TEST=deqp/data/gles2/shaders/functions.html BUG=angleproject:1015 BUG=478572 Change-Id: I2913f90f0994d4caf25cc43b16b9fc4e9efb19a5 Reviewed-on: https://chromium-review.googlesource.com/362085Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
These were missing and are in the spec. BUG=angleproject:1228 Change-Id: Ife9d311e76662d467d06b7aec4e674f9699b3573 Reviewed-on: https://chromium-review.googlesource.com/362624Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This was stored as DEPTH_STENCIL when it should be STENCIL. BUG=angleproject:1228 Change-Id: I34c226a273cf962e83a040630bedbefa0f9ee382 Reviewed-on: https://chromium-review.googlesource.com/362623Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Taiju Tsuiki authored
This should no longer needed after http://crrev.com/d805a40eb7b1ef6b BUG=chromium:630299 Change-Id: I2f78a922d873cf1b5809b3454cb0b72267261b97 Reviewed-on: https://chromium-review.googlesource.com/362295Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Fix this by producing an error on undefined or negative shifts. BUG=629518 Change-Id: Idfca5ed3fc8e557f6178408f3426a5ef2ce7cf14 Reviewed-on: https://chromium-review.googlesource.com/362020Reviewed-by:
Antoine Labour <piman@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Olli Etuaho authored
The patch for initializing output variables introduced a warning that broke MSVS 2015 standalone build. The "shaderType" variable passed to TCompiler::initializeOutputVariables was unnecessary and had the same name as a member variable of TCompiler that stores the shader type. TEST=MSVS 2015 build Change-Id: I9e01f5eae77a88babde21d4864a02c8731a220de Reviewed-on: https://chromium-review.googlesource.com/362550Reviewed-by:
Olli Etuaho <oetuaho@nvidia.com> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
- 21 Jul, 2016 7 commits
-
-
Zhenyao Mo authored
BUG=angleproject:1441 TEST=bots Change-Id: Ia4cf415d8346c3234bf0f548a178ee3ea8cd35c4 Reviewed-on: https://chromium-review.googlesource.com/362110Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Commit-Queue: Zhenyao Mo <zmo@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1298 Change-Id: I32750d5d81c14fe5a17634586cddf117f0a4e692 Reviewed-on: https://chromium-review.googlesource.com/362157Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Olli Etuaho authored
Vectors or matrices that are dynamically indexed as a part of an l-value generate new statements in the RemoveDynamicIndexing AST transformation step. SplitSequenceOperator needs to detect this case and split the sequence operator before statements are generated from its operands to ensure the correct order of execution. BUG=angleproject:1341 TEST=angle_end2end_tests Change-Id: I84e41a59c88fb5d0111669cab60312b930531a22 Reviewed-on: https://chromium-review.googlesource.com/361695Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Olli Etuaho authored
Split sequence operators if some of their operands generate statements in subsequent AST transformations to guarantee the right order of execution. For now, this is supported for expressions that return arrays and unfolded short-circuiting operators, which is enough to get WebGL 2 tests passing. A trickier corner case with dynamic indexing of vectors as an l-value is left to be addressed later. BUG=angleproject:1341 TEST=angle_end2end_tests, WebGL 2 conformance test: conformance2/glsl3/array-in-complex-expression.html Change-Id: I9301edd3366be7607a8aa4c42a5ec13928749e10 Reviewed-on: https://chromium-review.googlesource.com/361694Reviewed-by:Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Martin Radev authored
The ANGLETest::TearDown() call was set at the beginning of the function where as it should be at the end since it destroys the context. The earlier version would not cause any crashes because the GL function calls would be ignored. BUG=angleproject:1445 TEST=angle_end2end_tests Change-Id: I187cb8fede1db4ef2bfc13ab850594c41e00b0b0 Reviewed-on: https://chromium-review.googlesource.com/362220Reviewed-by:
Olli Etuaho <oetuaho@nvidia.com> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Olli Etuaho authored
This will enable sharing code between different AST traversers that apply transformations on similar node structures. This will make the code more maintainable. For now the helper class is used in UnfoldShortCircuitToIf and SeparateExpressionsReturningArrays. BUG=angleproject:1341 TEST=angle_end2end_tests, WebGL 2 conformance tests Change-Id: Ib1e0d5a84fd05bcca983b34f18d47c53e86dc227 Reviewed-on: https://chromium-review.googlesource.com/361693Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Geoff Lang authored
The previous logic of only checking the currently enabled draw buffers was incorrect. Also updated the logic to be more lenient and allow multiple slices or mips of the same texture. BUG=483282 Change-Id: I0d406d1a9a96e48342baefbaf11e0c2ecc6d390c Reviewed-on: https://chromium-review.googlesource.com/361533Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
- 20 Jul, 2016 5 commits
-
-
Sami Väisänen authored
BUG=angleproject:1443 Change-Id: I1ad2ecee3ffc81a4d1c128aa4de4437e3ee88e34 Reviewed-on: https://chromium-review.googlesource.com/360120Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Martin Radev authored
glCopyTexSubImage2d and glReadPixels should generate a GL_INVALID_OPERATION when GL_NONE is specified as a color buffer. There are two tests added which cover glCopyTexSubImage2D and glReadPixels. BUG=angleproject:1445 TEST=angle_end2end_tests Change-Id: I3ab1428aad7eee96ca2330909e2b6f765f539705 Reviewed-on: https://chromium-review.googlesource.com/360860Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Martin Radev authored
The dEQP test for context creation passes. SH_WEBGL3_SPEC has been added, but it should be considered whether we should keep it, remove it or rename it. It was added so that there is a webgl mapping to es 310 shaders. Check Compiler.cpp. The bison file has been modified so that some tokens from es3 can be also used in es31 as well. A separate macro ES3_1_ONLY is added so that some tokens are limited only for es 310 shaders. BUG=angleproject:1442 TEST=angle_unittests Change-Id: I2e5ca227c96046c30dc796ab934f3fda9c533eba Reviewed-on: https://chromium-review.googlesource.com/360300Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Yoichi Osato authored
Change-Id: I920e9be38c3dd63e00db111294f69c335c4e772d Reviewed-on: https://chromium-review.googlesource.com/361663Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Martin Radev authored
Calls to functions ObjectLabel, ObjectPtrLabel, GetObjectLabel, GetObjectPtrLabel were resulting into segfaults due to improper validation and parameter handling. It could be that the implementations of those functions were based on an earlier version of the KHR_Debug extension. The patch fixes the segfault error and almost all failing dEQP 3.1 tests related to KHR_Debug. The failing tests were also relevant to older ES versions. There is still one failing test, but that one fails since ES3.1 is not fully supported yet. List of reasons for the segfault error and failing tests: - the segfault error was caused by strlen called on a null pointer - another segfault was caused by writing out the length to a null pointer - even if the buffer size for getObject(Ptr)Label is 0, still the length of the label can be returned. That was not handled. BUG=angleproject:1446 TEST=angle_deqp_gtest_gles31_tests --gtest_filter=*functional_debug_object* Change-Id: I4743be8e862f3620091061cd7abb206a426655ed Reviewed-on: https://chromium-review.googlesource.com/361300Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
- 19 Jul, 2016 4 commits
-
-
Jamie Madill authored
Test failures on Intel Release: https://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20%28New%20Intel%29/builds/1163 Also Intel Debug: https://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Debug%20%28New%20Intel%29/builds/820 Also NVIDIA with a different config: https://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20%28NVIDIA%20GeForce%20730%29/builds/1564 BUG=angleproject:1379 This reverts commit 7f539ea5. Change-Id: I2634ad2b3fcc31e1e5ffb3674b94cb0aed9fd773 Reviewed-on: https://chromium-review.googlesource.com/361840Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Geoff Lang authored
NVIDIA drivers sometimes go into infinite loops in this code, jbauman@ speculated that these drivers may need to do the flush in the GetData call. BUG=626849 Change-Id: I85408fbe7176242240862225e968f557bd7818cf Reviewed-on: https://chromium-review.googlesource.com/360130Reviewed-by:
John Bauman <jbauman@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1438 Change-Id: I9b8d0da30e41c133ee92685d00f5f0239c7b2574 Reviewed-on: https://chromium-review.googlesource.com/358490Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
Track buffer offets in the transform feedback object and dirty them when a buffer is bound. This fixes problems when a buffer is rebound at the same offset and maintains tracking between context switches. BUG=angleproject:1447 BUG=angleproject:1298 Change-Id: I2f890e3ad5edacab47f624a95a502615c86cc0c8 Reviewed-on: https://chromium-review.googlesource.com/360910Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-