src


Log

Author Commit Date CI Message
Arun Patole 0c5409f8 2015-07-08T15:17:53 Support constant folding of fragment processing built-ins This change adds constant folding support for following derivative functions: - dFdx, dFdy and fwidth. As per spec, derivatives of constant arguments should be 0, so this change just sets result components to zero when the above operations are performed on constant argument. BUG=angleproject:913 TEST=dEQP Tests dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions. fragment_processing.* (All 12 tests started passing with this change.) Change-Id: I67b7c5abd970b740e15e3bd1ee56721e81bbecc4 Reviewed-on: https://chromium-review.googlesource.com/283759 Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Arun Patole 551279e5 2015-07-07T18:18:23 Support constant folding of more common built-ins This change adds const folding support for below mentioned common built-ins: - isnan, ininf, floatBitsToInt, floatBitsToUint, intBitsToFloat and uintBitsToFloat BUG=angleproject:913 TEST=angle_unittests(new: MathUtilTest.isNan/inInf), dEQP Tests dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.common.* (20 more tests started passing with this change) Change-Id: Ifdedb251cd8b183b4999314c0f5de857bc20702f Reviewed-on: https://chromium-review.googlesource.com/283767 Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez bcab6426 2015-07-06T07:35:14 Fix typo in Buffer11::getContantBufferRangeStorage BUG=angleproject:516 Change-Id: I907ec41ce5691300d17ca5b08a62b0d4579b01e5 Reviewed-on: https://chromium-review.googlesource.com/283244 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 2e62a9a8 2015-07-03T14:13:50 Simplify the flow of IndexDataManager::prepareIndexData This will simplify the work on follow up CLs a lot BUG=angleproject:516 Change-Id: Ie8374ec28fce2e01e76c711a4d280e1ed004a21f Reviewed-on: https://chromium-review.googlesource.com/283380 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Corentin Wallez 0b5a4a49 2015-07-08T11:59:46 EGLContextCompatibilityTest: check for suppression only when a context is bound. Otherwise glGetString(GL_RENDERER) returns "ANGLE" and doesn't provide information on the vendor. BUG=angleproject:892 Change-Id: I01899ca78656aaa8db860829c78bf3c61c355eae Reviewed-on: https://chromium-review.googlesource.com/284051 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill d3dfda2b 2015-07-06T08:28:49 Refactor how we store vertex formats. Instead of storing a vertex format as a struct with the full info, instead use an enum, and look up the info when we need it. This saves a lot of constructor initialization time, operator comparison time, and storage. It also will allow us to look up D3D format info more quickly. BUG=angleproject:959 Change-Id: I202fd1ea96981073bc1b5b232b1ec3efa91485cb Reviewed-on: https://chromium-review.googlesource.com/277289 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2810a20c 2015-07-07T14:23:58 Fix the InputLayoutCache test on Windows 8. On some configs, this would use an RGBA4 16-bit backbuffer, which is not enough resolution for the test. Fix this by requiring 32-bit backbuffers. We might also want to figure out if we want to default to 16-bit on Windows 8 desktop, which seems less than ideal. BUG=angleproject:959 Change-Id: I53b3a9ef6cbecf76c7c764623e5eb1f454a6b72d Reviewed-on: https://chromium-review.googlesource.com/283773 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Austin Kinross <austin.kinross@gmail.com> Reviewed-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Daniel Cheng fda3ec74 2015-07-08T08:22:04 Fix another clang warning with -Wmissing-braces in ANGLE. Clang warns if there are missing braces around a subobject initializer. The most common idiom that triggers this is: STRUCT s = {0}; which can be more simply written as: STRUCT s = {}; BUG=505297 Change-Id: Ie9f9037a1ba4b6303daa30424cdc24c1ecf18896 Reviewed-on: https://chromium-review.googlesource.com/284160 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Arun Patole ab2b9a23 2015-07-06T18:27:56 Refactor unary operation constant folding code This change splits TIntermConstantUnion::foldUnary into two functions: - foldUnaryWithDifferentReturnType: - Handles constant folding of operations where the return type has a different number of components compared to the operand type. - foldUnaryWithSameReturnType: - Handles constant folding of unary operations where the return type is the same as operand type. BUG=angleproject:913 TEST=angle_unittests, dEQP Tests (dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.*) Change-Id: I675891138d4e17fd2390c03e9f710e0be0b7c7b6 Reviewed-on: https://chromium-review.googlesource.com/283464 Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Arun Patole cdfa8f50 2015-06-30T17:48:25 Constant fold float pack/unpack functions This change adds constant folding support for following floating point pack and unpack functions: - packSnorm2x16, unpackSnorm2x16, packUnorm2x16, unpackUnorm2x16, packHalf2x16, and unpackHalf2x16. BUG=angleproject:913 TEST=angle_unittests(new: MathUtilTest.packAndUnpack*), dEQP Tests dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.float_pack_unpack.* (all 10 tests started passing with this change) Change-Id: I2b69faebee4127e5e13900b3a9485b7145950277 Reviewed-on: https://chromium-review.googlesource.com/282683 Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Olli Etuaho 846fe05f 2015-07-07T17:41:21 Disable using globals as l-values in global initializers It should not be possible to use globals as l-values in global initializers. This change was tested extensively with popular WebGL content, with no regressions found. TEST=angle_unittests BUG=angleproject:988 Change-Id: I21ab731eb1d92aeae25795856ccae280792ad1f0 Reviewed-on: https://chromium-review.googlesource.com/283910 Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Kenneth Russell 6affeef6 2015-07-07T15:16:49 Suppress angle_end2end_tests failures on Linux/NVIDIA and Linux/AMD. Verified the NVIDIA suppression locally; assuming the AMD suppression will take effect on the bot. Thanks to geofflang@ and cwallez@ for the suggestion on the approach to take. BUG=angleproject:892 Change-Id: Ida4b6c1395185b0dfb0ea890395e35cb6db7ccd5 Reviewed-on: https://chromium-review.googlesource.com/283974 Tested-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 2f232370 2015-07-07T21:57:55 Revert "Cache TTypes." Lots of compile errors. BUG=492725 This reverts commit 5377720aae042c5bfae0e8a37032c90dc3ab78cf. Change-Id: I64889b99b1f1f48d39b87ebb668f6a32a3abac45 Reviewed-on: https://chromium-review.googlesource.com/283945 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez e9336c0d 2015-07-07T16:46:26 EGLSurfaceTest: run d3d specific tests only on d3d. This is to help with the FYI bot and pending a refactor to use our test instantiation. BUG=angleproject:892 Change-Id: I56e772d7988a2172ad2384bdf408a8eaeab7129a Reviewed-on: https://chromium-review.googlesource.com/283971 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Cooper Partin <coopp@microsoft.com> Tested-by: Corentin Wallez <cwallez@chromium.org>
Dmitry Skiba 5377720a 2015-06-23T17:43:14 Cache TTypes. This change saves us ~70KiB per compiler with just ~3KiB of cache. BUG=492725 Change-Id: I2ee748f7271b1afe0834083cbff6f0b84104aa53 Reviewed-on: https://chromium-review.googlesource.com/281411 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Dmitry Skiba <dskiba@google.com>
Austin Kinross da056468 2015-06-16T17:00:11 For WinRT, add EGLRenderSurfaceScaleProperty to specify swapchain scaling factor Change-Id: Iede6682306082346cf2a3a55fe58f732b7a453df Reviewed-on: https://chromium-review.googlesource.com/277931 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Olli Etuaho ce39f6ff 2015-07-06T15:25:19 Disallow user-defined function calls in global variable init Generate an error message when an user-defined function call is found in a global variable initializer. Even before this patch, the call graph already marked functions that were only called from the global scope as unused. This change was tested extensively with popular WebGL content, with no regressions found. TEST=angle_unittests BUG=angleproject:988 Change-Id: Iec1b16d2af386f1e5c383f86926d80cef553b694 Reviewed-on: https://chromium-review.googlesource.com/283291 Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Jamie Madill 8fc55c8e 2015-06-30T11:04:18 Lazily load SwapChain11 pass-through resources. This allows Chromium to avoid initializing a whole bunch of resources and a shader when it collects GPU information. This should speed up startup. BUG=angleproject:1014 Change-Id: Id1e777c6ea86d66ad812540f9d8494744cda64de Reviewed-on: https://chromium-review.googlesource.com/282553 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Jamie Madill e62cedd0 2015-06-30T11:03:54 Load Clear11 resources lazily. Again this saves on startup time and memory use. BUG=angleproject:1014 Change-Id: I3890dc2ea50ff4e4f1ff9d7cb223e1ab57c330ce Reviewed-on: https://chromium-review.googlesource.com/282552 Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 86a07aec 2015-06-30T11:03:18 Add LazyInputLayout to defer loading input layouts. Lazily loading input layouts can also save memory and startup time. There are several cases where we don't need these resources until later, or sometimes, at all. BUG=angleproject:1014 Change-Id: I4e0d45353b5d3969bd1ed86ad26f47d34e542ed5 Reviewed-on: https://chromium-review.googlesource.com/282551 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org>
Jamie Madill 531d5f45 2015-07-06T08:26:45 D3D11: Refactor InputLayout cache. *re-land with fix for cache overflowing* Using a much more compact input layout structure allows us to save quite a bit of time comparing input layouts, or computing hashes. A subsequent patch shrinks the size of the structure further. BUG=angleproject:959 Change-Id: If240bb7c84d78fc8c9fb6f9049bf71d8a81c97c6 Reviewed-on: https://chromium-review.googlesource.com/283227 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 01e4bfe7 2015-07-02T15:07:13 Update dEQP test expectations with Linux failures BUG=angleproject:1051 Change-Id: I5f397e230f0e56b1e6832c3dae5ae5c0c9a8b7c4 Reviewed-on: https://chromium-review.googlesource.com/283226 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill 16f99b74 2015-07-02T14:09:06 Fix warnings with code analysis tools. Variable shadowing and a few other non-bug warnings. BUG=None Change-Id: Ibf62d6e7fef91fc213a53a6902f494147ed30ebc Reviewed-on: https://chromium-review.googlesource.com/283223 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Arun Patole 56eee79f 2015-07-01T15:23:54 Move Float16ToFloat32 implementation to common Float16ToFloat32 is now required by constant folding of float pack/unpack built-ins as well, moving it to commom so that it is available in libangle_common instead of libANGLE. BUG=angleproject:913 TEST=angle_unittests Change-Id: I1e23bb98c1b725c79f933a66ddb9986133fec19c Reviewed-on: https://chromium-review.googlesource.com/282961 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Ben Wells e6e8c7c5 2015-07-01T16:48:31 Fix 'unused private field' warnings for clang. BUG=505317 Change-Id: I731b6e5ae5d5eba50f556314eeeebc6a3d29fc7a Reviewed-on: https://chromium-review.googlesource.com/282932 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Cooper Partin 1bd7dd45 2015-06-11T08:58:53 Added 16-bit formats to GLConfigs to reduce offscreen texture memory usage. BUG=angleproject:1042 Change-Id: I7024bd47601a21b08cafbf6460d512151b53d035 Reviewed-on: https://chromium-review.googlesource.com/277002 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 54c34e06 2015-07-02T15:06:55 Fix compilation on Linux BUG=angleproject:892 Change-Id: I135e356e1ec78c95e69a260bd0576e5285e759b5 Reviewed-on: https://chromium-review.googlesource.com/283225 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Cooper Partin 558f2b5a 2015-06-02T09:34:11 Added emulated indexed pointsprite rendering support. This emulation is for renderers that do not support Geometry Shaders. BUG=angleproject:949 Change-Id: I7acf003e83ea6661f10a703486e6d07eb28786f8 Reviewed-on: https://chromium-review.googlesource.com/274851 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Cooper Partin <coopp@microsoft.com>
Corentin Wallez ccda698b 2015-07-02T08:26:22 Remove redundant chdir in angle_deqp_test_main Fixes the tests not running directly from the VS UI. BUG=angleproject:1051 Change-Id: Ia299d8e7ad676330902725c114e8f5766db49d82 Reviewed-on: https://chromium-review.googlesource.com/283158 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez c491e0fb 2015-07-02T10:41:11 Fix command line being ignored in non-gtest dEQP tests BUG=angleproject:1051 Change-Id: If10abaea31ad29af9f8d438403f67b9dfbfd7e45 Reviewed-on: https://chromium-review.googlesource.com/283167 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez f5cb6aa5 2015-06-30T11:31:54 Port gpu_test_expectations and angle_deqp_googletest to Linux BUG=angleproject:1051 Change-Id: I46c3a5651d36750558735eb626ed5c9424b250b4 Reviewed-on: https://chromium-review.googlesource.com/282596 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill 2c70e64b 2015-07-02T15:09:58 Revert "D3D11: Refactor InputLayout cache." Seems to be failing maps_pixel_test on the bots. BUG=angleproject:959 This reverts commit 53fd1552ba7dbf91a726fce139d748860bd8a5f5. Change-Id: I1f2593caca58f701d284993d2ee313846806491b Reviewed-on: https://chromium-review.googlesource.com/283157 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 53fd1552 2015-07-02T07:26:19 D3D11: Refactor InputLayout cache. Using a much more compact input layout structure allows us to save quite a bit of time comparing input layouts, or computing hashes. A subsequent patch shrinks the size of the structure further. BUG=angleproject:959 Change-Id: I7a0f10428cc7e96967e60cc085ff2e8779718978 Reviewed-on: https://chromium-review.googlesource.com/277288 Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 03260faa 2015-06-22T13:57:22 D3D11: Optimize checks for active UBOs. We can reduce the amount of iterations we use by using std::vectors for storing UBO indexes, and resizing them to the max active index. This allows us to skip inactive ranges. Reduces draw call overhead. BUG=angleproject:959 Change-Id: I2577e5dbdce0e5ab102ca916eb7f1f35cf03f9ad Reviewed-on: https://chromium-review.googlesource.com/277287 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Daniel Cheng f33ab835 2015-06-30T19:08:16 Fix some clang warnings with -Wmissing-braces in ANGLE. Clang warns if there are missing braces around a subobject initializer. The most common idiom that triggers this is: STRUCT s = {0}; which can be more simply written as: STRUCT s = {}; BUG=505297 Change-Id: Ib4513ee195d43e7c4a4a2f46c328866f0023a2a5 Reviewed-on: https://chromium-review.googlesource.com/282921 Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Kenneth Russell <kbr@chromium.org>
Dmitry Skiba 7f17a50c 2015-06-22T15:08:39 Store TFunction::returnType by a const pointer. On 32-bit Android this change saves ~30KiB per compiler instance. BUG=492725 Change-Id: I8bea48d57ee7eac0a0ee417035085c0d335aea09 Reviewed-on: https://chromium-review.googlesource.com/281047 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Dmitry Skiba <dskiba@google.com>
Dmitry Skiba efa3d8eb 2015-06-22T14:52:10 Change TSymbolTable::insertBuiltIn() TType* pointers to const. Const types make it possible to implement caching and other optimizations. BUG=492725 Change-Id: I64398bb9effcc909dd052a038acbb5ec0ca730e8 Reviewed-on: https://chromium-review.googlesource.com/281046 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Dmitry Skiba <dskiba@google.com>
Jamie Madill 517ccdf8 2015-06-30T11:02:55 Rename DeferredShader to LazyShader. Deferred rendering is a shading technique, and "lazy" is the more correct term. Also rename a few methods so we can use a shared interface for other types of lazy D3D11 resources. BUG=angleproject:1014 Change-Id: I2fd2c823291d414003690066eaec063f1cd0bc4c Reviewed-on: https://chromium-review.googlesource.com/282550 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Reviewed-by: Brandon Jones <bajones@google.com>
Corentin Wallez a55e4b7a 2015-06-09T13:30:25 Enable compilation of dEQP tests on Linux BUG=angleproject:1051 Change-Id: I158e59ca581b580825848e831d05064cdcc30d96 Reviewed-on: https://chromium-review.googlesource.com/276202 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Minmin Gong d3e7aa33 2015-06-29T12:25:24 Allow calling HandleAllocator::reserve with MAX_UINT. BUG=angleproject:1052 Change-Id: I03883799ef334f39c9e855a0a4b7af1ab02d5da9 Reviewed-on: https://chromium-review.googlesource.com/282414 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Minmin Gong <mgong@microsoft.com>
Jamie Madill 006909d6 2015-06-30T12:33:22 Update failing WebGL test expectations. Change-Id: I8c469dad3e6a084e5b37a76ea3a1f86b9a99d613 Reviewed-on: https://chromium-review.googlesource.com/282624 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Austin Kinross 137b1517 2015-06-17T16:14:53 Improve D3D GetProgramBinary chipset validation - Check chipset identifying info before trying to compile shaders - Check device feature level when loading a binary - Use chipset VendorID/DeviceID etc instead of LUID so that program binaries remain valid across system reboots Change-Id: I88ba4543bb990956d1d8fb324abf9784d72950cd Reviewed-on: https://chromium-review.googlesource.com/280428 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross 5a6dec50 2015-06-12T14:53:53 Ensure FencSyncTests::BasicOperations can't get stuck in an infinite loop BUG=angleproject:1053 Change-Id: If6661ce3d87cdf44b1d45911418ecf78b5e6175a Reviewed-on: https://chromium-review.googlesource.com/277370 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 476682e6 2015-06-30T10:04:29 Use std::vector for TranslatedAttribs. This allows us to cache a std::vector between calls, and avoids us calling allocation/constructors for locals, which saves us some time. It also allows us to use the vector's size to limit the range of attribs we look at. BUG=angleproject:959 Change-Id: I799ed6c92fa8fca96e92e235b125a11d2d551aab Reviewed-on: https://chromium-review.googlesource.com/277286 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 46565a42 2015-06-22T13:57:21 Small optimization to VertexDataManager. Avoid calling a getter repeatedly in a loop, when we can instead store a local reference to an array. BUG=angleproject:959 Change-Id: I507ad1a6cf3bb6183dd3499df024dfec6950a6c8 Reviewed-on: https://chromium-review.googlesource.com/277285 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Sam McNally 5a0edc62 2015-06-30T12:36:07 Change intializer list order to match field order. BUG=505304 Change-Id: I38149e72732f0b4eb7d398f90b5d11660e2a7fbc Reviewed-on: https://chromium-review.googlesource.com/282465 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill fdee4112 2015-06-26T14:27:31 Roll dEQP 554adf..92f7752. Includes updated Licences. https://android.googlesource.com/platform/external/deqp/+log/554adf..92f7752 BUG=angleproject:998 Change-Id: If2da8719addeef25ec46adc105cf63c8b861f55a Reviewed-on: https://chromium-review.googlesource.com/282271 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@google.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez ac2582d3 2015-06-26T13:18:18 WindowSurfaceGLX: swap before resizing the child window BUG=angleproject:892 Change-Id: I9b27777547624959fce6e045f9aac2652f139b9b Reviewed-on: https://chromium-review.googlesource.com/282058 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 9de512e2 2015-06-26T13:16:50 WindowSurfaceGLX: Fix child window creation size This makes Chrome on ANGLE work on Linux without obvious bugs. BUG=angleproject:892 Change-Id: I595ac00a6646cb407941932b0d4f9f020d4cd059 Reviewed-on: https://chromium-review.googlesource.com/282057 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang e6d4e12c 2015-06-29T13:33:55 Add remaining ES3 caps queries. BUG=angleproject:1049 Change-Id: Ib5076380c692f4fa94921692baa7da14440556d1 Reviewed-on: https://chromium-review.googlesource.com/282386 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Jamie Madill 27c08917 2015-06-22T13:57:20 Cache active attribute lists in VertexDataManager. This saves us re-creating vector memory every iteration, and allows us to iterate over much smaller lists of attributes. In the future it could allow us to update the cache more efficiently with state change updates. BUG=angleproject:959 Change-Id: Ie8ae7a31726468dc2184165380f1f3e5e0152936 Reviewed-on: https://chromium-review.googlesource.com/277284 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 3d72cc79 2015-06-22T13:57:19 Pass current value type instead of the object. This allows us to simplify the logic in VertexDataManager enough that we can start to cache attribute information. BUG=angleproject:959 Change-Id: I7b53a137d73f40f86e3acb9caebb66f9cacf8b6f Reviewed-on: https://chromium-review.googlesource.com/277283 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 2a46b4e8 2015-06-29T15:06:49 Remove the PackUnpackHalfOverflow test. Different drivers handle overflow differently. The overflow case is not defined in the spec. BUG=angleproject:1044 Change-Id: I9e3883af147c6c1a4fcdcddea3ff70c62f859c56 Reviewed-on: https://chromium-review.googlesource.com/282540 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 8273e006 2015-06-15T13:40:19 Add new GLSL target versions. Test the emulated GLSL functions against multiple GL versions. BUG=angleproject:1044 Change-Id: I1e12523301042f0d541ab2f4e73f02319d1584ef Reviewed-on: https://chromium-review.googlesource.com/277702 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 83ab236f 2015-06-23T13:18:03 Improve the test precision in PackUnpackTest. * Output to floating point framebuffers so that results are not truncated to 8 bit normalized values. * Tighten the epsilon from 1/255 to 0.0005. May need further tweaking as more GPUs are tested. * Explicitly check for -inf and inf values when they were previously rounded to 0 and 255. * Explicitly check for clamping of overflowed normalized floats by providing the expectations instead of computing them. BUG=angleproject:1044 Change-Id: I8410cf61fe79a9919fb0db7e415bf97b2d0abd9e Reviewed-on: https://chromium-review.googlesource.com/281191 Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang b3a6a8f3 2015-06-23T16:10:14 Error when encountering non-preprocessor tokens before #extension in ESSL3. BUG=angleproject:1047 Change-Id: I4a548270f651e35b2c8d1ab5d0f46185230c5f74 Reviewed-on: https://chromium-review.googlesource.com/281216 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 34d719b5 2015-06-26T15:28:06 Revert "Revert "dEQP: Compile dEQP targets in Chromium."" Should be fixed now with latest patches. BUG=angleproject:998 BUG=500736 This reverts commit d0071dd9c39d0ada72292d476d8e8e081731c953. Change-Id: I3a611bfa10429a1f97d18e9aa1f316eabb67d114 Reviewed-on: https://chromium-review.googlesource.com/282055 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 4d06a24c 2015-06-26T11:12:24 dEQP: Extend GoogleTest support. *re-land after rebase on top of Chrome build fix* This patch will enable a Chromium-side CL to build dEQP/ANGLE with GoogleTest. BUG=angleproject:998 BUG=500736 Change-Id: Id02c66a260b0a7bab3de9cda624fe097322b2d3c Reviewed-on: https://chromium-review.googlesource.com/281824 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@google.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill 86bc3a66 2015-06-26T11:12:23 dEQP: Move the DEPS dirs to mirror Chromium. This avoid us needing to replicate gyp variables in both Chromium's and ANGLE's common.gypi files. BUG=angleproject:998 Change-Id: Iba1938fd37eb4bee28ae7daad31bf85a2d3bd692 Reviewed-on: https://chromium-review.googlesource.com/282145 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@google.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Arun Patole 7fa3355f 2015-06-10T15:15:18 Add constant folding support for matrix built-ins This change adds constant folding support for following matrix built-ins: - matrixCompMult, outerProduct, transpose, determinant and inverse. BUG=angleproject:913 TEST=angle_unittests(new: MatrixUtilsTest, ConstantFoldingTest.*Matrix*), dEQP Tests: dEQP-GLES3.functional.shaders.constant_expressions.builtin_functions.matrix.* (All 54 tests started passing with this change) Change-Id: I7b9bf04b9a2cbff72c48216cab04df58c5f008d6 Reviewed-on: https://chromium-review.googlesource.com/276574 Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 9e582b93 2015-06-22T11:18:32 perf_tests: Normalize MS counts in EGL init test. The un-normalized values depend on the number of frames rendered, so if we optimize down one time, the other ms values all increase, because we are rendering more frames. This generates spurious perf alerts from the perf dashboard. BUG=None Change-Id: I1bc480141a8cad7eee96bcdf4d6747a3cbae30f2 Reviewed-on: https://chromium-review.googlesource.com/280980 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 7d112bb9 2015-06-22T13:57:19 Refactor source pointer math out of VertexBuffer9/11. This math can live in a single place in the VertexDataManager. This cleans up the code and paves the way for future optimizations. BUG=angleproject:959 Change-Id: I7138c6e080d9c3d6507b55d981bfb62c2590a2a8 Reviewed-on: https://chromium-review.googlesource.com/277282 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 9c38580b 2015-06-22T13:57:18 Refactor VertexDataManager to store translated attrib. Refactoring patch only. Reduces the number of parameters we need to pass around in internal functions. Clears the way for future optimization work. BUG=angleproject:959 Change-Id: Ic98ab5a07189eaa053dffce994546666bb07cede Reviewed-on: https://chromium-review.googlesource.com/277281 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Kenneth Russell 3b345ebd 2015-06-24T17:24:20 Fix ANGLE build on Chrome OS ARM. These builders set use_x11=1 but don't have GLX headers. Avoid trying to compile ANGLE's GL, GLX and X11 sources on Chrome OS at all. BUG=503173,angleproject:892 Change-Id: I7f5862bb83b33f6ce302244fa5668295789a3a41 Reviewed-on: https://chromium-review.googlesource.com/281778 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Kenneth Russell <kbr@chromium.org>
Kenneth Russell 0eb0a816 2015-06-19T20:18:16 Fix seg fault in IsPlatformAvailable. Some GLX implementations can't handle having libGL.so.1 dlclose'd out from under them while there's any X window still open against which a GLXWindow was ever created. Load the library once per process rather than once per FunctionsGLX instance. This showed up as a crash in X11Window::destroy, during XCloseDisplay. BUG=angleproject:892 Change-Id: I0da2674786a952865e5bea2513259c0a32d4453c Reviewed-on: https://chromium-review.googlesource.com/280902 Tested-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Corentin Wallez <cwallez@google.com>
Jamie Madill 57cdc69c 2015-06-23T21:03:06 Revert "dEQP: Extend GoogleTest support." Causing runhooks failures: gyp: Undefined variable deqp_path in C:\b\build\slave\GPU_Win_Builder\build\src\third_party\angle\src\tests\tests.gyp BUG=angleproject:998 BUG=500736 This reverts commit 8edd75d1bb6680e7c2018ece9f5c81e3b87bf938. Change-Id: I8cd83bb5871dea81abea61554b182825145298e6 Reviewed-on: https://chromium-review.googlesource.com/281208 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill d0071dd9 2015-06-23T21:01:01 Revert "dEQP: Compile dEQP targets in Chromium." Causing runhooks failures: gyp: Undefined variable deqp_path in C:\b\build\slave\GPU_Win_Builder\build\src\third_party\angle\src\tests\tests.gyp BUG=angleproject:998 BUG=500736 This reverts commit 3018c206abd1fbfb94ab049326ff89f1f8cf3be4. Change-Id: I8c0402fb7465101a9331cbb2020693469d644e7e Reviewed-on: https://chromium-review.googlesource.com/281194 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez eed29ebb 2015-06-23T12:43:38 Simplify the assignment of use_x11. Hopefully fixes the flaky compile errors in ChromeOS BUG=angleproject:892 BUG=503173 Change-Id: Ifd79f1e382c12be3aecd9efb4860287df7d43060 Reviewed-on: https://chromium-review.googlesource.com/281180 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill 3018c206 2015-06-22T15:35:54 dEQP: Compile dEQP targets in Chromium. This switches the primary targets for dEQP into the non-standalone namespace, so we can build dEQP ANGLE tests on Windows with Chrome. BUG=angleproject:998 BUG=500736 Change-Id: I2ae25f31ab123c49965412445f661b6b69d19109 Reviewed-on: https://chromium-review.googlesource.com/281020 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 8edd75d1 2015-06-22T15:35:53 dEQP: Extend GoogleTest support. This patch will enable a Chromium-side CL to build dEQP/ANGLE with GoogleTest. BUG=angleproject:998 BUG=500736 Change-Id: Ie480e3319c1bd77dd1de2c964f78ef97297fcfe9 Reviewed-on: https://chromium-review.googlesource.com/280856 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Geoff Lang e148f3d3 2015-06-17T11:41:28 Fix lots of compilation errors in generated GLSL functions. Reformatted to improve readability. BUG=angleproject:angleproject:947 Change-Id: I467f0396a0318b7a51d5cafce3f11e55d929c369 Reviewed-on: https://chromium-review.googlesource.com/278250 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 7b9b284b 2015-06-15T11:02:49 Refactor GLSL version calculations for emulated functions. Pass the target GLSL version to InitBuiltInFunctionEmulatorForGLSL so that it can be updated to generate emulated functions for multiple versions. BUG=angleproject:1044 Change-Id: I34c408df52fd0f7d6c2f66d0579ac854afd93b87 Reviewed-on: https://chromium-review.googlesource.com/277700 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 12425d25 2015-06-22T15:35:52 dEQP: Rename deqp_dir to deqp_path. The same for the other dEQP gyp path vars. BUG=angleproject:998 Change-Id: I7c123dbd8983e032dc9339bf289259e6d8ec654b Reviewed-on: https://chromium-review.googlesource.com/281009 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill 8e8a1c68 2015-06-22T15:35:51 dEQP: Move libtester sources to a gyp variable. This keeps the target definition cleaner and will enable GN, if we ever get to that point. BUG=angleproject:998 Change-Id: I8692c93155a6bada9b1b0c05a1dd34af64a3b400 Reviewed-on: https://chromium-review.googlesource.com/280992 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Jamie Madill b3f4e8d1 2015-06-22T13:57:17 Refactor VertexDataManager's current value cache. This clears the way for future optimizations. BUG=angleproject:959 Change-Id: Ief9077159e1e5fed5670862454a6f0b41d630551 Reviewed-on: https://chromium-review.googlesource.com/277280 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill f9327d33 2015-06-22T13:57:16 D3D11: Optimize ProgramD3D::sortAttributesByLayout. We can use pointer math here, instead of copying values. BUG=angleproject:959 Change-Id: I3b87956224d0846c9011f5d8edb811bc5e4f2b85 Reviewed-on: https://chromium-review.googlesource.com/277119 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 9bbfdd63 2015-06-22T18:38:09 Try setting use_x11 to 0 when doing a linux chromeos build. BUG=503173 Change-Id: I31c09a1d0849de14cc72ba3a357e482c7e329a46 Reviewed-on: https://chromium-review.googlesource.com/281025 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Cooper Partin 1acf438b 2015-06-12T12:38:57 Added define to enable/disable uniform precision validation for shaders. This feature was requested by developers to allow non-conformant shaders to be used which contain mismatched precisions. Change-Id: I57899efe064f7ffed1c0e43a508930ac70f6aa03 Reviewed-on: https://chromium-review.googlesource.com/277340 Tested-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Cooper Partin a0b8a41c 2015-06-12T16:24:52 Updated libEGL to have correct application revision type for winrt project generation. Change-Id: Ifc4ffda8a80d2317dda70f5bf2add53ea91df961 Reviewed-on: https://chromium-review.googlesource.com/277420 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill aa9e9971 2015-06-22T13:57:16 D3D11: Reduce overhead of clearing unused textures. *re-land with compile fix* We would spend a fair bit of time iterating over the unused textures, setting them to null one-by-one, and updating our cache. We can reduce this time by smarter caching, and skipping unmodified ranges. BUG=angleproject:959 Change-Id: I4de20bc131c4a568108ad670a2ef491cfd4c50ed Reviewed-on: https://chromium-review.googlesource.com/280916 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill d4898490 2015-06-22T17:56:18 Revert "D3D11: Reduce overhead of clearing unused textures." Compile error on Windows: error C2561: 'rx::Renderer11::clearTextures' : function must return a value BUG=angleproject:959 This reverts commit 475e5b7f91f8ed9688b5a46efe54f15357096e3e. Change-Id: Id34ff9530a71ce43549e2eb78d2d927084d46a47 Reviewed-on: https://chromium-review.googlesource.com/280915 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 475e5b7f 2015-06-22T13:12:45 D3D11: Reduce overhead of clearing unused textures. We would spend a fair bit of time iterating over the unused textures, setting them to null one-by-one, and updating our cache. We can reduce this time by smarter caching, and skipping unmodified ranges. BUG=angleproject:959 Change-Id: I92f11cf63542c55bb3adbbb8276a54bcfe848f61 Reviewed-on: https://chromium-review.googlesource.com/277118 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Austin Kinross bb579f8c 2015-06-18T13:31:49 In WinRT, prevent too many calls to DXGIGetDebugInterface1 Change-Id: Id0ec9eb40566f7c2169b228394fb3afe9f32e6f5 Reviewed-on: https://chromium-review.googlesource.com/280551 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Corentin Wallez e2adce1b 2015-06-19T23:06:32 Workaround for some STLs not parsing floats with a suffix BUG=angleproject:1046 BUG=angleproject:891 Change-Id: I01c3f024142e573385a5f40d721171ad752ffd19 Reviewed-on: https://chromium-review.googlesource.com/278210 Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 52445286 2015-06-09T09:15:54 Add a OSPixmap class to have cross platform pixmaps This will help make the deqp support code platform agnostic. BUG=angleproject:892 Change-Id: I6f8c738ed8125057db87afea2079583f8feac977 Reviewed-on: https://chromium-review.googlesource.com/276201 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez ce991cf6 2015-05-27T15:07:33 Add OSWindow::takeScreenshot to be used by some dEQP egl tests This helps make dEQP support platform agnostic BUG=angleproject:892 Change-Id: Ifd9436caa8c79018a053c27e32b514ef9ebee707 Reviewed-on: https://chromium-review.googlesource.com/273596 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 3c85635d 2015-05-27T12:50:55 Add SetLowPriorityProcess to utils and use it in dEQP support This provides a cross-platform way to make sure dEQP runs in a low priority process. BUG=angleproject:892 Change-Id: I0d12f1eacb78be43edcdb6622f945734c0b377ff Reviewed-on: https://chromium-review.googlesource.com/273595 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 774c66f3 2015-05-27T12:37:42 dEQP support: use OSWindow instead of tcuWin32Window This is to help dEQP support become cross platform. BUG=angleproject:892 Change-Id: I4480b64a33b1725fb42769bf7dddef1b4ee27c83 Reviewed-on: https://chromium-review.googlesource.com/273594 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez f0c1d029 2015-06-18T18:37:09 Fix compilation errors and Mac and some try bots BUG=angleproject:892 Change-Id: I9a449889109b7df9c69776573b0fc2098cd06199 Reviewed-on: https://chromium-review.googlesource.com/280565 Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 4ffd7790 2015-06-11T15:28:33 DisplayGLX: add error checking for the dummy pbuffer creation BUG=angleproject:892 Change-Id: I7a15f2be19a598e40d4fa5a7c70d879cdbc6d32a Reviewed-on: https://chromium-review.googlesource.com/277011 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez e1a5518e 2015-06-18T19:20:55 Fix defines being exported outside of ANGLE This should fix a build failure on a GPU try bot so we can Roll ANGLE BUG=angleproject:892 Change-Id: I86cb0135dc71b003f691633e339d5d0527eaace4 Reviewed-on: https://chromium-review.googlesource.com/280396 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Kenneth Russell 62342590 2015-06-18T17:29:52 Revert "Add workaround for flushing before readPixels." This reverts commit 46c13a15fa90130eca14301a4ef6deed12315037. Seems to have introduced significant flakiness on the Windows AMD FYI bot. Reverting while investigating. Change-Id: I9cfdb09a4a0d792a0c5db76c8b0b9d3285c0695a Reviewed-on: https://chromium-review.googlesource.com/280365 Tested-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Kenneth Russell 46c13a15 2015-06-17T16:33:50 Add workaround for flushing before readPixels. This has been found necessary on the D3D11 backend on AMD GPUs, and on the D3D9 backend on all GPUs. Tested an earlier version of this patch overnight on one of the affected Windows AMD bots; it eliminated the flakiness observed on one of the WebGL conformance tests. BUG=491419 Change-Id: I668493eb5ec109b5e0650c154dc97b786e0745bd Reviewed-on: https://chromium-review.googlesource.com/278265 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Kenneth Russell <kbr@chromium.org>
Corentin Wallez 322653bf 2015-06-17T18:33:56 Fix Chromium build of angle_end2end_tests BUG=angleproject:892 Change-Id: I9922046fc9e4d82d7034405f5952263f982c6529 Reviewed-on: https://chromium-review.googlesource.com/278159 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez fd0957d9 2015-06-17T18:26:24 Fix standalone compilation on Linux Use a "gyp trick" to define a default value for use_x11, thanks goes to kbr for remembering the other instance of this trick. BUG=angleproject:892 Change-Id: Ifb64af4e56d9eb90993760a495008d95dd31ae3d Reviewed-on: https://chromium-review.googlesource.com/278158 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Dmitry Skiba 2539fffa 2015-06-16T17:56:09 Add ShClearResults() for clearing last compilation results. This helps reclaiming memory used by the results when we don't need them anymore. BUG=492725 Change-Id: I4bc11be27b23589548120f0dc43e9979bf894089 Reviewed-on: https://chromium-review.googlesource.com/277808 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Dmitry Skiba <dskiba@google.com> Tested-by: Dmitry Skiba <dskiba@google.com> Reviewed-by: Dmitry Skiba <dskiba@google.com>
Jamie Madill e9e4c7f7 2015-06-12T11:40:33 Roll dEQP 9b4161..554adf1. Includes some tests for EXT_debug_marker https://android.googlesource.com/platform/external/deqp/+log/9b4161..554adf1 BUG=None Change-Id: I911fcb5577caefaa1fe3479445146a2b3f819124 Reviewed-on: https://chromium-review.googlesource.com/277140 Reviewed-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 3f6096b7 2015-06-17T09:11:31 Fix some markdown syntax that github had trouble parsing. Change-Id: I00f4409b7c6e12bb0cd6944a488fde3f6ef4054c Reviewed-on: https://chromium-review.googlesource.com/278055 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang ee09b58e 2015-06-16T15:13:52 Notify the VertexArrayImpl when a buffer is detached. Update VertexArrayGL to clear it's cached buffer binding when a buffer is detached to prevent name aliasing. Fixes: * DEQP standalone crashes. * WebGL Conformance DEQP tests. Change-Id: If21a617629e15873ddeae0368b5399616f2ca68b Reviewed-on: https://chromium-review.googlesource.com/278050 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang a80d4046 2015-06-15T11:44:30 Document ESSL3 builtin functions and which GLSL version they became core in. BUG=angleproject:1044 Change-Id: I1cd35f17a2d6cc384ac1bfae72a23a092ca50244 Reviewed-on: https://chromium-review.googlesource.com/277701 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Corentin Wallez <cwallez@google.com> Tested-by: Geoff Lang <geofflang@chromium.org>