- 13 Aug, 2015 7 commits
-
-
Geoff Lang authored
This reverts commit 656b0d45. Change-Id: I0b6ad5e1fa788ffc698029410aa98e13a061902d Reviewed-on: https://chromium-review.googlesource.com/293450Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
With the addition of EGL Image, the display extensions generated by Renderer9 and Renderer11 become significantly different. Instead of generating them via getXSupport() methods, generate them inside the renderers themselves. BUG=angleproject:970 Change-Id: Ib3fffabcca3e3cdef13ef994aa0b06dba0f00362 Reviewed-on: https://chromium-review.googlesource.com/293271Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
Instead of casting to the specific TextureStorage9 type before calling getSurfaceLevel, merge the prototypes into a pure method in TextureStorage9. BUG=angleproject:970 Change-Id: I07b24b6cc470fc8cb6ba9bd9a8f178c3b43be36a Reviewed-on: https://chromium-review.googlesource.com/293270Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Geoff Lang authored
BUG=angleproject:880 Change-Id: Ief76f3011ce18ad0ca396af0bc36e69a30ae143b Reviewed-on: https://chromium-review.googlesource.com/293220Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Cooper Partin authored
Additional warnings found with more testing and added C4267 warning disable only for angle_libpng BUG=angleproject:1120 Change-Id: Ic403dcff5a8018056fa51a8c408e64207f3362eb Reviewed-on: https://chromium-review.googlesource.com/293028Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Austin Kinross authored
Change-Id: I036084b2fea20d4f1712bc34b161fb3be604af0d Reviewed-on: https://chromium-review.googlesource.com/293009Tested-by:
Austin Kinross <aukinros@microsoft.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Corentin Wallez authored
BUG= This reverts commit 19ba5746. Change-Id: I5dce6c8a81570e22affbcaf32183a97c97849718 Reviewed-on: https://chromium-review.googlesource.com/293351Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Tested-by:
Corentin Wallez <cwallez@chromium.org>
-
- 12 Aug, 2015 13 commits
-
-
Corentin Wallez authored
This reverts commit 87e63a99. Speculative revert to fix the webgl cts on Windows D3D9 and the unittests on Linux. BUG= Change-Id: I488f4e0b2dc67270eed45f1c10bfba1d13c98739 Reviewed-on: https://chromium-review.googlesource.com/293350Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Tested-by:
Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
In CGL there is no notion of default Framebuffer and MakeCurrent only makes a context current but not a drawable. Instead, everything is done via render to texture. For that reason, different surfaces will have different FBOs as default framebuffers, which causes that change. BUG=angleproject:891 Change-Id: I3f6da7b587353316026ea39a5c87f91265e0f1ba Reviewed-on: https://chromium-review.googlesource.com/289872Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
BUG= Change-Id: I24ed2a2ee85a152ef79fc9cb2c3b067bbbaedf05 Reviewed-on: https://chromium-review.googlesource.com/293310Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
Instead the refcount is done via callbacks. This allows Surface to ignore this refcounting which will be useful in a follow-up CL. BUG=angleproject:891 Change-Id: I39b028476e0e3ab1837c033e1121ea21e54d7970 Reviewed-on: https://chromium-review.googlesource.com/291651Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
Otherwise glDrawElements(GL_TRIANGLES, -1, nullptr) would crash. This was found by an ASSERT in ComputeIndexRange triggered by dEQP-GLES2.functional.negative_api.vertex_array.draw_elements BUG= Change-Id: I5269031fa35aa6403c844561e04158361ee7950f Reviewed-on: https://chromium-review.googlesource.com/292710Tested-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Seems to have quite a few warnings in 64-bit on my machine. BUG=angleproject:1120 This reverts commit c5cf9bc4. Change-Id: I86768b900aeba52e7a2242d9ae8949f93f1a5ba9 Reviewed-on: https://chromium-review.googlesource.com/293280Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Nico Weber authored
Also inline a function that wasn't pulling its weight. No intended behavior change. BUG=chromium:505316 Change-Id: If059700062a38c45971397311af7a2a4037b815e Reviewed-on: https://chromium-review.googlesource.com/288399Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Nico Weber <thakis@chromium.org>
-
Tomasz Moniuszko authored
The solution is the same as in GYP version: 1. Check if .git/index is available in angle directory. 2. Use generated commit.h file if git is available or copy the default file instead. Change-Id: Ic3cedf6793c368070228a63c0eb270ca6fb47f81 Reviewed-on: https://chromium-review.googlesource.com/289391Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Tomasz Moniuszko <tmoniuszko@opera.com>
-
Olli Etuaho authored
Applying field selection directly on matrices is not mentioned in ESSL 1.00 or 3.00 specs. Remove erroneous code that generated odd error messages when a shader tried to apply certain kinds of field selection on a matrix. BUG=angleproject:1118 TEST=angle_unittests, dEQP-GLES3.functional.shaders.swizzles.* Change-Id: I7bbf5d0cbaee3f21d20b830d904c0feef445dd78 Reviewed-on: https://chromium-review.googlesource.com/293190Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Olli Etuaho <oetuaho@nvidia.com>
-
Olli Etuaho authored
Since this commit was made, dEQP tests were fixed to check that unrecognized pragma tokens only generate warnings, not errors. This applies to both ESSL1.00 and ESSL3.00, which specify this behavior in section 3.4 Preprocessor. BUG=angleproject:989 TEST=dEQP-GLES2.functional.shaders.preprocessor.pragmas.* This reverts commit d3c29f57. Change-Id: Ie4e0ec061fa3164d6f3872ac0016a063056ed110 Reviewed-on: https://chromium-review.googlesource.com/293181Tested-by:
Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
To be consistent with how we start vertex attributes. A null pointer indicates we're using the streaming buffer. Will also aid the dirty state bits refactor. The re-land fixes a crash with WebGL related to element array buffers. BUG=angleproject:1040 TEST=WebGL CTS, end2end_tests, unittests Change-Id: I9b82e06825bf95f0fc2b7c7427e1eb6dd257c1ee Reviewed-on: https://chromium-review.googlesource.com/290044Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Cooper Partin authored
BUG=angleproject:1120 Change-Id: I01ef10bea7f487c2b394d030c76628f38d2ea645 Reviewed-on: https://chromium-review.googlesource.com/292780Tested-by:
Cooper Partin <coopp@microsoft.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Olli Etuaho authored
This enables implementing specialized variants of TIntermTraverser. Intermediate subclasses of TIntermTraverser are expected to maintain contextual information in their traverse* functions, which is then used by the visit* functions in the actual traversers. This approach is better than adding a flag to TIntermTraverser, since it will make the code cleaner and easier to understand. Traverse() functions in TIntermNode subclasses are still kept around to redirect calls to TIntermTraverser traversal functions. This is less hacky than choosing the function with switch/case in TIntermTraverser would be, and if new TIntermNode subclasses get added, it's not as likely that adding the traversal support would be forgotten. TEST=angle_unittests BUG=angleproject:1116 Change-Id: Ie6889be1d7e955518f13cd3390dce17871ba49b5 Reviewed-on: https://chromium-review.googlesource.com/292720Tested-by:
Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
- 11 Aug, 2015 6 commits
-
-
Geoff Lang authored
BUG=angleproject:890 Change-Id: Id55d941a95cf38f825b9a52fc8043e0e129f7a82 Reviewed-on: https://chromium-review.googlesource.com/292631Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Cooper Partin authored
BUG=angleproject:1119 Change-Id: Ie3de5a776b5860b1ca502cee9e2b19c41cd3bfb2 Reviewed-on: https://chromium-review.googlesource.com/292051Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Cooper Partin <coopp@microsoft.com>
-
Cooper Partin authored
BUG=angleproject:1119 Change-Id: I99572711ceeae94fb920d197c86e741945d3b60b Reviewed-on: https://chromium-review.googlesource.com/292279Tested-by:
Cooper Partin <coopp@microsoft.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Cooper Partin authored
BUG=angleproject:1119 Change-Id: I2c879193dc122e6c45d0462abc91f39f5d332506 Reviewed-on: https://chromium-review.googlesource.com/292156Tested-by:
Cooper Partin <coopp@microsoft.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Cooper Partin authored
BUG=angleproject:1119 Change-Id: Ibc7cfdea72abe402cbfa1c10e0ada7576fa1cfa2 Reviewed-on: https://chromium-review.googlesource.com/292052Tested-by:
Cooper Partin <coopp@microsoft.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
BUG=angleproject:1040 TEST=angle_end2end_tests,angle_perftests,WebGL Change-Id: If471cfb9676795d5cc985eea52ad7144d4544ed1 Reviewed-on: https://chromium-review.googlesource.com/289559Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
- 10 Aug, 2015 9 commits
-
-
Jamie Madill authored
Under certain situations an integer overflow could lead to ANGLE writing to places where it shouldn't. BUG=518206 Change-Id: I9217685daecb160a4072fbf79c26e5bee9f4621e Reviewed-on: https://chromium-review.googlesource.com/292391Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
f8dd7b10 fixed unnecessary shader compiles, but introduced a draw call perf regression. Fix the regression robustly by storing a minimal set of input layout elements/vertex attribute info, but also handle the case where the vector sizes mismatch between a cached and new vertex layout. Reland with fix for comparison warning. BUG=510151 Change-Id: I578ddbb5b5bb12e7c1a901f23c7b5fcbd64b5d23 Reviewed-on: https://chromium-review.googlesource.com/292460Tested-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Geoff Lang authored
BUG=504872 Change-Id: Ib69830a556fe06c111f41d78811c7115b0d8314c Reviewed-on: https://chromium-review.googlesource.com/292450 Tryjob-Request: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
size_t comparison warning in Win32. src\libangle\renderer\d3d\programd3d.cpp(2084) : warning C4018: '<' : signed/unsigned mismatch BUG=510151 This reverts commit bf3f780c. Change-Id: I5565b697ca29270375049f3e855437fa19157de9 Reviewed-on: https://chromium-review.googlesource.com/292331Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
f8dd7b10 fixed unnecessary shader compiles, but introduced a draw call perf regression. Fix the regression robustly by storing a minimal set of input layout elements/vertex attribute info, but also handle the case where the vector sizes mismatch between a cached and new vertex layout. BUG=510151 Change-Id: If5e9ea4a4c9edaa7a78c8daa44bbe7d9927dc4e4 Reviewed-on: https://chromium-review.googlesource.com/292390Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Corentin Wallez authored
This fixes a bot compilation failure that started happening after unittest started using Display stuff that use X11. Because angle_unittests was linking against libANGLE and not libGLESv2, it didn't get linked to X11, which produced a link error. BUG= Change-Id: I8f1f0dbcb13bb7c9897f235b72c4d4896a7b8a6c Reviewed-on: https://chromium-review.googlesource.com/292380Tested-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Kenneth Russell <kbr@chromium.org>
-
Kimmo Kinnunen authored
The code is from http://smhasher.googlecode.com/svn/trunk/ revision 152. Fixes error: ../../src/third_party/murmurhash/MurmurHash3.cpp:57:41: error: inlining failed in call to always_inline ‘uint32_t getblock(const uint32_t*, int)’: function body can be overwritten at link time FORCE_INLINE uint32_t getblock ( const uint32_t * p, int i ) The error was previously fixed by adding a pragma to ignore the warning. The problem the compiler is complaining is that the function is visible to outside of the compilation unit. This can be fixed by making the function inline (as in the new version of the MurmurHash3.cpp) or static. Change-Id: I7a1262964489d72de8b4707ca2284363c8b46e20 Reviewed-on: https://chromium-review.googlesource.com/291620Tested-by:
Kimmo Kinnunen <kkinnunen@nvidia.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Dongseong Hwang <dongseong.hwang@intel.com> Tested-by:
Dongseong Hwang <dongseong.hwang@intel.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Olli Etuaho authored
In an expression like a[ind]++, a[ind] is required to be an l-value but ind is not. Reset the l-value required flags before traversing the index of an indexing operation, so that this is accurately tracked. After the index has been traversed, the previous state of the l-value required flags is restored. New tests are added to angle_unittests cover this functionality. TEST=angle_unittests BUG=angleproject:1116 Change-Id: I8929ec01e85e672c83ef7d385e455b7df8682f4b Reviewed-on: https://chromium-review.googlesource.com/290561Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Tested-by:
Olli Etuaho <oetuaho@nvidia.com>
-
Olli Etuaho authored
This functionality is refactored out of EmulatePrecision to be a common feature of TIntermTraverser. This is done since tracking where l-values are required will be useful for other traversers. For example, it will be needed for converting dynamic indexing of matrices and vectors to function calls. This change adds some overhead to all tree traversers, but the overhead is expected to be small for typical shaders which don't contain too many user-defined functions. BUG=angleproject:1116 TEST=angle_unittests Change-Id: I54d34c2b5093ef028f2b24d854c11c0195dc1dbb Reviewed-on: https://chromium-review.googlesource.com/290514Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Olli Etuaho <oetuaho@nvidia.com> Reviewed-by:
Zhenyao Mo <zmo@chromium.org>
-
- 07 Aug, 2015 5 commits
-
-
Geoff Lang authored
BUG=angleproject:890 Change-Id: If10ea7e1cb670bb3cd6fdcf40344d1c1e0acd862 Reviewed-on: https://chromium-review.googlesource.com/291650Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
BUG=angleproject:1040 TEST=angle_end2end_tests,angle_perftests,WebGL Change-Id: I72beaf7e178e042440337fbb8b9669638c5ad016 Reviewed-on: https://chromium-review.googlesource.com/289558Reviewed-by:
Geoff Lang <geofflang@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Pull over the more recent changes from Chromium which include the graphics API, which we can use for specific API suppressions for the dEQP tests. Also update the docs with detailed steps for updating from Chrome. BUG=None Change-Id: I0cb7d8268fbb2778c0160a58f1a10ef4a92c9c61 Reviewed-on: https://chromium-review.googlesource.com/287810Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Tested-by:
Jamie Madill <jmadill@chromium.org>
-
Kimmo Kinnunen authored
Exposes gl_SecondaryFragColor, glSecondaryFragData[] and gl_MaxDualSourceDrawBuffers to GLES SL 1.0. Relaxes rules for undefined output locations for GLES SL 3.0 and exposes gl_MaxDualSourceDrawBuffers. If the output GL context is GL ES 2.0 or 3.0: The emulation layer is expected to turn on EXT_blend_func_extended if the output GL context supports it. If the output GL context is GL: The emulation layer is expected to turn on EXT_blend_func_extended if the output GL context supports ARB_blend_func_extended or if GL context is 3.2 or later. If the source shader spec is GLES SL 2.0: The emulation layer is expected to inspect the shader compilation output variables upon linking. If output target is GL SL, the emulation layer should bind color location 0, index 1 to "angle_SecondaryFragColor" if variable "gl_SecondaryFragColorEXT" is used. Alternatively, emulation layer should bind "angle_SecondaryFragData" to locations 0,1,2,3,..., all color index 1, if "gl_SecondaryFragData" array is used. (The caller can not bind the locations or specify output variables.) If the source shader spec is GLES SL 3.0: The emulation layer is expected to do location auto-resolve of the the output variables that have undefined output locations that have not been bound by the caller. (The caller can not use gl_ built-ins, so nothing to do with those.) BUG=angleproject:1085 TEST=angle_unittest Change-Id: I5cafe205b0c29478b0dcd24aa89a7b0000f5d046 Reviewed-on: https://chromium-review.googlesource.com/287580Reviewed-by:
Zhenyao Mo <zmo@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Kimmo Kinnunen <kkinnunen@nvidia.com>
-
Corentin Wallez authored
When mocking functions gmock uses the keyword virtual instead of override and this conflicted with our usage of override for the destructor (there is a warning for using all one or the other). BUG= Change-Id: I9dd9204d5755dd3a588a32d438de3c1018ba07cd Reviewed-on: https://chromium-review.googlesource.com/291630Reviewed-by:
Jamie Madill <jmadill@chromium.org> Tested-by:
Corentin Wallez <cwallez@chromium.org>
-