- 24 Nov, 2016 1 commit
-
-
Jamie Madill authored
BUG=angleproject:422 Change-Id: I10a2192c5c91360a1b7fe5e4d014bcf1fa84c96e Reviewed-on: https://chromium-review.googlesource.com/413713Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
- 23 Nov, 2016 5 commits
-
-
Corentin Wallez authored
This also makes BlitGL work correctly on OpenGL ES (provided vertex arrays are available) BUG=angleproject:1356 Change-Id: Icb7cef35bebfe6672220aa0b312ab89187dbf585 Reviewed-on: https://chromium-review.googlesource.com/412452 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Corentin Wallez authored
BUG=angleproject:1636 Change-Id: Idea0e4f4a4415351b83e8f1a39b697139ff9ebe6 Reviewed-on: https://chromium-review.googlesource.com/414205 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Olli Etuaho authored
Add a configurable limit for how many nested MacroExpander objects can be created in the preprocessor, so that stack overflow can be prevented in case of malicious shaders. By default the limit is set to 1000. In unit tests the limit is set lower to make the test run faster. Includes refactoring of most of the preprocessor tests so that they use utility functions provided by the test class instead of repeating the same code for initializing the preprocessor. BUG=angleproject:1600 TEST=angle_unittests Change-Id: I23b5140d9f2dc52df96111650db63150f7238494 Reviewed-on: https://chromium-review.googlesource.com/413986 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1468 Change-Id: I3cf0d0a9486778b1d4384e00359034e08e425191 Reviewed-on: https://chromium-review.googlesource.com/414284Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Olli Etuaho authored
Fail compiler initialization if the built-in resources are invalid. This avoids creating zero-sized arrays out of built-ins into the symbol table, which could later lead to asserts when these built-ins were indexed by constants. BUG=chromium:667468 TEST=angle_unittests Change-Id: I9553c7c91ea355abb35b9cc6088ee14b40b0922b Reviewed-on: https://chromium-review.googlesource.com/413037 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
- 22 Nov, 2016 8 commits
-
-
Geoff Lang authored
BUG=angleproject:1442 Change-Id: Ia4b4a3f9dc870a53b6c793c6bfc07b76d6b19673 Reviewed-on: https://chromium-review.googlesource.com/413038Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1442 Change-Id: Iece3efb272fdcbe004d4136129ba7bfe74ba5265 Reviewed-on: https://chromium-review.googlesource.com/405530Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
He Yunchao authored
Change-Id: Ibfd39bc478c4e9ddf40138ccf6bd37f247f83632 Reviewed-on: https://chromium-review.googlesource.com/413036 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1468 Change-Id: I3c42872ba13dbf346722bc34b9415a4e79c9f82c Reviewed-on: https://chromium-review.googlesource.com/413328 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1468 Change-Id: I1908821fc560bed0cb5427a23739d11b17fea227 Reviewed-on: https://chromium-review.googlesource.com/413327Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1468 Change-Id: I106f765e59b18de0659c85f31ce3fbac8016de95 Reviewed-on: https://chromium-review.googlesource.com/413329Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
BUG=angleproject:1633 Change-Id: If8273747ade1cd3530b96006f2445e1dce0ccf00 Reviewed-on: https://chromium-review.googlesource.com/413231Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Olli Etuaho authored
BUG=angleproject:1600 TEST=angle_unittests Change-Id: I72bf81ec060f36255a0f13b132a4fd69b89672ff Reviewed-on: https://chromium-review.googlesource.com/412744 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
- 21 Nov, 2016 3 commits
-
-
Geoff Lang authored
BUG=angleproject:1468 Change-Id: I3d75a03fcf624fe7f9510e76edc4a8298d8c5a72 Reviewed-on: https://chromium-review.googlesource.com/412860 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1356 Change-Id: If63779e39609083deb6bb72dc8c29eaaa90c698c Reviewed-on: https://chromium-review.googlesource.com/339813 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1468 Change-Id: I8dfc9a3c71e5638de22bc9d9a5dadfb495ef23a7 Reviewed-on: https://chromium-review.googlesource.com/388846 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
- 18 Nov, 2016 9 commits
-
-
Corentin Wallez authored
BUG=angleproject:1356 Change-Id: I19ec4efa37d142ac7370815b078f4ba79caa0bea Reviewed-on: https://chromium-review.googlesource.com/412451 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1468 Change-Id: I2727602e66a4f4f2ca166948eebd9c975e315fe7 Reviewed-on: https://chromium-review.googlesource.com/412861 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
For loop unrolling is not used and causes the translator fuzzer to find a hang when unrolling tons of nested loops (duh). Also remove MMap.h which was unused. This is essentially a revert of https://codereview.appspot.com/4331048 BUG=chromium:665255 Change-Id: Id6940f7e306d4ed53bc992f751e9ffe733190f17 Reviewed-on: https://chromium-review.googlesource.com/412023 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1468 Change-Id: I1452b7d0f98d2e936ad16350a7ef5b01c45e76e9 Reviewed-on: https://chromium-review.googlesource.com/412862Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
BUG=angleproject:1468 Change-Id: Ife6f0001b9a6ae06c98385df47fc3887036f3a36 Reviewed-on: https://chromium-review.googlesource.com/412863 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Jamie Madill authored
The check should be using the newer operator== to check if attachments are the same - the id() method will hit an UNREACHABLE if it's called on a Surface attachment. I noticed this when using this method in the Vulkan RenderPass implementation. BUG=angleproject:1583 Change-Id: I387b35805893d04003b22a1c7c9c12fc41c726ce Reviewed-on: https://chromium-review.googlesource.com/412801Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
We only need the typed variable information in our header files. The entry point and other enum info can be encapsulated better in the cpp files that call through to the translator. The only tricky one is the compile options, which we return from our implementation - put the typedef for these in the ShaderVars header to fix this. This should partially work around the problem of shaderlang for Vulkan and ANGLE's translator (also ShaderLang) using some identifiers with the same names. BUG=angleproject:1576 Change-Id: I43c530486498c210796b9e197a6780bf2f7b3afb Reviewed-on: https://chromium-review.googlesource.com/412423Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Olli Etuaho authored
This fixes parsing floats that are out-of-range, and floats that have more digits than the standard library float parsing functions can handle. In these cases, we now fall back to a custom implementation of float parsing. The custom parsing path can correctly process floats with up to hundreds of millions of digits in their mantissa part. Rounding behavior of the custom float parser may not be entirely consistent with the standard parser, but the error should be at most a few ULP. This can be considered acceptable since floating point operations are not expected to be exact in GLSL in general. Settling for lower accuracy also enables the parser to run in constant memory, instead of having to store all the significant digits of the decimal mantissa being parsed. BUG=angleproject:1613 TEST=angle_unittests Change-Id: I04a5d9ae5aaca48ef14b79cca5b997078614eb1c Reviewed-on: https://chromium-review.googlesource.com/412082 Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Corentin Wallez authored
Use it to implement lazy state setting methods for texture filters and swizzle that will be used in subsequent workarounds. BUG=angleproject:1356 Change-Id: Ia58267c4f125262cf57fbd98438a6d8eb8a04b33 Reviewed-on: https://chromium-review.googlesource.com/412404Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
- 17 Nov, 2016 5 commits
-
-
Qiankun Miao authored
AMD driver in Linux requires invariant qualifier to match between shaders even for GLSL >= 4.2. This conflicts with ESSL 3.0 which disallows invariant qualifier in fragment shader. Remove invariant qualifier in vertex shader to workaround AMD driver bug. BUG=chromium:639760 TEST=webgl2_conformance Change-Id: Id5adf7e7032105486df90a1f200471ea81ee5c36 Reviewed-on: https://chromium-review.googlesource.com/411917Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Zhenyao Mo <zmo@chromium.org>
-
Jamie Madill authored
BUG=angleproject:1576 Change-Id: I9fdd7a27944880383df53aa8468884ea2e99e670 Reviewed-on: https://chromium-review.googlesource.com/412422Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
The comment here was incorrect, and the signature passed some redundant arguments. Noticed this when I was looking at the code for Vulkan/glslang. BUG=angleproject:1576 Change-Id: Ie9e7eb7cbe4b65503901b2550e95cd818b7c28c0 Reviewed-on: https://chromium-review.googlesource.com/412324Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
The missing check was a bit buggy, and the paths were not updated to the new 'gyp' folder instead of 'build'. BUG=angleproject:1569 Change-Id: I10408252851e90b79e306c8aea175ebe6a931b61 Reviewed-on: https://chromium-review.googlesource.com/412320Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Corentin Wallez authored
BUG=angleproject:1492 Change-Id: Ica9a7c72f0e463850dd93f4a15d9b572fb10a1f6 Reviewed-on: https://chromium-review.googlesource.com/412054Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
- 16 Nov, 2016 3 commits
-
-
Jamie Madill authored
This workaround avoids using inter-buffer copies involving constant buffers. Instead of copying from a staging storage to a constant buffer (or vice-versa), the Buffer memory managment will keep the system memory storage around permanently. This uses a bit more memory but should fix all the problematic cases where we have the canonical version of the buffer data inside GPU memory. BUG=chromium:593024 Change-Id: I2ce0cfd22784aa43e819ce2df2d0da540d0a0cfe Reviewed-on: https://chromium-review.googlesource.com/412140Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
We can call setData internally to re-use the same code. BUG=chromium:593024 Change-Id: I9f53bef1e86a11fc23799123937c354bf45de014 Reviewed-on: https://chromium-review.googlesource.com/411919Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This getter will now return the offset to bind along with the ID3D11Buffer pointer. This encapsulates the logic of the emulation so that we only actually check the capabilities of the driver in a single place. This solves the issue of needing to edit the code in multiple places when trying to force the caps for debugging, and also encapsulates the offset calculation in the Buffer11 class. BUG=chromium:593024 Change-Id: Idb09d560868ae12b98bcaf4ea031c4e0b6c82b4a Reviewed-on: https://chromium-review.googlesource.com/411918Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
- 15 Nov, 2016 6 commits
-
-
Jamie Madill authored
The old 'build' dir was copying stale DLLs. BUG=angleproject:1569 Change-Id: Ib11fb9f1e1e480fe32af3f291357e0fb92429318 Reviewed-on: https://chromium-review.googlesource.com/411389Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Corentin Wallez authored
The OpenGL spec allows "count" to overflow safely implemented but some drivers like the Intel Windows OpenGL driver don't handle this correctly and crash on overflow tests. BUG=661413 Change-Id: I10de9292c75daa375f002850900bb5e1cbfce3b6 Reviewed-on: https://chromium-review.googlesource.com/411387Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
Reland with a temporary test suppression. BUG=661413 Change-Id: I552b64de754b326dcd499b84d9f337b9d015dc8e Reviewed-on: https://chromium-review.googlesource.com/411473Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
Reland with a Windows build fix. We want to move the Chromium initialization of the ANGLE platform from being Windows-specific to being EGL-specific. Because the mechanisms by which the ANGLE library is loaded are OS-specific, it is inconvenient to use dlsym and friends to get the ANGLEPlatform entry points. Instead we expose the through eglGetProcAddress which is readily available in the EGL-specific part of Chromium. BUG=angleproject:1621 Change-Id: I022a39493756a3b5d1ed626fd05e74af3f043211 Reviewed-on: https://chromium-review.googlesource.com/410066 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
Before validating the texture format, verify that the texture level already exists in glTexSubImage calls. BUG=602737 Change-Id: I0d83c7d43c7b358abdb59583dc83265df70c13b5 Reviewed-on: https://chromium-review.googlesource.com/411361 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Geoff Lang authored
This reverts commit 9863a3ef. Change-Id: I840a735b49bc4f2319c8af5f620d7f52bb7eecf1 Reviewed-on: https://chromium-review.googlesource.com/411470Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-