Log

Author Commit Date CI Message
Jamie Madill 0aa84f63 2014-02-13T13:17:23 Merge 'Tie program binary version to commit hash.' Port changes from master branch with commit hash embedding to the development branch. BUG=angle:529 Change-Id: I307bf44103913aaaeb875a2e3ade1fab77838c48 Reviewed-on: https://chromium-review.googlesource.com/186390 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 5f6937ca 2014-02-12T17:15:22 Align static and streaming vertex data to 16-byte boundaries. Certain vertex formats using fewer than 4 bytes could confuse our buffer code, giving us improperly aligned offsets. Aligning vertex data across the board should fix the problem, and minimal cost. Change-Id: I6884b4ddcfb91ef309a970593aaf7932cb65712e Reviewed-on: https://chromium-review.googlesource.com/185196 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Zhenyao Mo 4a667fe9 2014-02-11T12:35:01 Add an option to initialize varyings without static use in vertex shaders ANGLEBUG=554 TEST=webgl conformance test on mac: shaders-with-varyings.html r=kbr@chromium.org,nicolascapens@chromium.org cc=alokp@chromium.org,shannonwoods@chromium.org Change-Id: I2e692d43fb15f1cf3ade3e398020d1fedb2b32f0 Reviewed-on: https://chromium-review.googlesource.com/185922 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Zhenyao Mo <zmo@chromium.org> Conflicts: src/common/version.h src/compiler/translator/Compiler.cpp Change-Id: If7db13ef345bd6199d4ea0d7786f0de20885f2f3 Reviewed-on: https://chromium-review.googlesource.com/186144 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Zhenyao Mo <zmo@chromium.org>
Geoff Lang 32d508e2 2014-02-11T09:39:48 Fix checking for a NULL pointer after using the pointer. Change-Id: I0ead14916ec677c97afb53f4c31a903e71fbc70f Reviewed-on: https://chromium-review.googlesource.com/185862 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 2a20562f 2014-02-12T10:41:24 Fix depth texture validation in ES2 contexts. We were checking for extra conditions that apply to ES3 within all ES2 contexts, causing the webgl depth texture conformance test to fail. BUG=angle:550 Change-Id: Iae9a4880b9efc6be8c6857bce27a47d42fecc23a Reviewed-on: https://chromium-review.googlesource.com/186122 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 7ea42a55 2014-02-10T12:49:15 Move ShaderCache.h to the d3d directory. Change-Id: I56e0f5ff11cebd8b9415081b930a804dcce9530c Reviewed-on: https://chromium-review.googlesource.com/185566 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 0bf3a982 2014-02-11T09:40:48 Fix variable being used to initialize itself. Change-Id: Ied10d866627485c6cd3eb09e23c14937efc465f4 Reviewed-on: https://chromium-review.googlesource.com/185864 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Geoff Lang a4de2657 2014-02-11T09:39:20 Mark destructors of Surface and Context as virtual. Change-Id: If09d621cc249754caa57b057f76ff84726c18265 Reviewed-on: https://chromium-review.googlesource.com/185861 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Geoff Lang c6856732 2014-02-11T09:38:55 Fix wrong enum type being compared. Change-Id: I020bbf8179c08574f5fc0a207db03d7456eeeba1 Reviewed-on: https://chromium-review.googlesource.com/185860 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 49f9a20d 2014-02-03T11:58:11 Add TransformFeedback object. Change-Id: I1f836575824ff9df17fe3832997f06acc7464746 Reviewed-on: https://chromium-review.googlesource.com/185032 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 1cd1b213 2014-02-11T09:42:27 Fix wrong variable being compared. Change-Id: I83b68286b6f3dd369081cb2188af27c86b3de6eb Reviewed-on: https://chromium-review.googlesource.com/185865 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang cbf727ae 2014-02-10T12:50:45 Remove references to D3D formats in the Texture class. Change-Id: I67add42cc69ec372840c67656bd2c77c623b23d0 Reviewed-on: https://chromium-review.googlesource.com/185567 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 03ef7406 2014-02-11T09:40:20 Fix comparing blend states with the wrong structure size. Change-Id: I0e4c79cb7eaacf5403203b7b65094a54405ad47a Reviewed-on: https://chromium-review.googlesource.com/185863 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 37dde692 2014-01-31T16:34:54 Add support for transform feedback queries. Change-Id: I0aab43b146f87259898db57acb9f74fdbfdb1b96 Reviewed-on: https://chromium-review.googlesource.com/184580 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang d5da329c 2014-02-06T13:24:33 Improve the enumerate_files.py script. Cleaned up the agument parsing and added support for excluding files/folders. BUG=angle:552 Change-Id: I6dcf965f9b92ce4aa1c0b64bd4f9a0420883bcf6 Reviewed-on: https://chromium-review.googlesource.com/185204 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 1106aeb2 2014-02-06T11:06:50 Move the enumerate_files script to the build directory. BUG=angle:552 Change-Id: I9f357c68c258c7731cf0d5c2ceed3a2875b21228 Reviewed-on: https://chromium-review.googlesource.com/185142 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 0550d038 2014-01-30T11:29:07 Implement GL_RASTERIZER_DISCARD. BUG=angle:498 Change-Id: Ib60c39e206003ae67c93769e35f7f9ef790ce9f4 Reviewed-on: https://chromium-review.googlesource.com/184396 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 2e5c6042 2014-02-06T10:45:32 Add GL headers to libGLESv2, libEGL and translator projects. Change-Id: I66f36623eb5fb60fbb92d16af4f9854688b9484c Reviewed-on: https://chromium-review.googlesource.com/185190 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Jamie Madill a5e44c92 2014-02-04T16:04:15 Relax alignment restrictions to allow more direct storage. Our restriction to 4-byte alignments caused us to always convert formats like R8 or R16, or R8G8 instead of allowing D3D to handle these formats naturally. From experimentation the proper rule seems to be "4-bytes, unless the vertex format is 1- or 2-byte size." I couldn't find supporting documentation on MSDN, but it seems common sense. Change-Id: I9e38fe86790e34024d1ae912a809a3d3cdc02ccf Reviewed-on: https://chromium-review.googlesource.com/184523 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Jamie Madill a5d67475 2014-02-04T16:04:13 Remove VertexBuffer::requiresConversion. Since we now have Renderer methods to query formats for vertex inputs, we can get rid of the remaining calls to VertexBuffer which we used to query properties of vertex formats. Change-Id: I9e57d1d9bf80296aef271877fdd97a16d29114af Reviewed-on: https://chromium-review.googlesource.com/184522 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Nicolas Capens 7d649a00 2014-02-07T11:24:32 Fix initializing the MaxExpressionComplexity and MaxCallStackDepth compiler limits. BUG=339860 Change-Id: I64600db4bef62236c6acd8728902471df06a8f0a Reviewed-on: https://chromium-review.googlesource.com/185380 Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Jamie Madill 95ffb868 2014-01-29T09:26:59 Add vertex format queries to Renderer. With the new support for vertex formats living in the format utils, we can use the Renderer class to query vertex properties instead of the VertexBuffer class. Change-Id: Id76bd4dbf63855016faccef703521887f50da3b9 Reviewed-on: https://chromium-review.googlesource.com/184521 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 80177879 2014-02-04T16:04:10 Move D3D9 vertex format tables to formatutils9. Vertex format information is useful for querying format properties with the new vertex translation logic with dynamic shaders. Change-Id: I1935c75f1e3920dc1d4a364a2d6968c82692e476 Reviewed-on: https://chromium-review.googlesource.com/184520 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Jamie Madill 7ab02faf 2014-02-04T16:04:08 Add D3D11 vertex format tables to our format utils. Moving the vertex format information to a globally accessible helper file makes them available for the dynamic shaders logic. Change-Id: I67d6280c0603d9c601ca504751c8905677c2426f Reviewed-on: https://chromium-review.googlesource.com/184399 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 3078d0f7 2014-02-04T16:04:06 Add VertexFormat internal struct to represent vertex inputs. A VertexFormat is similar to a simplified VertexAttribute, without extra unncessary data. VertexFormats will be useful for GPU vertex conversions with dynamic shader compilation. Change-Id: I4e60e0a12d5f081fb52d95c8977c43d481b33bff Reviewed-on: https://chromium-review.googlesource.com/184398 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 8ff21aea 2014-02-04T16:04:05 Move storage for uniform blocks to the program binary. With dynamic shaders we may have multiple shader executables per program binary. We must store the uniforms outside the executable, in the program binary, to be consistent between variations. Change-Id: I1b29a5d78c72dede8562d4878569b609536ba074 Reviewed-on: https://chromium-review.googlesource.com/183586 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill c47a678a 2014-02-04T16:04:03 Move the storage for uniform blocks to its own class. With dynamic shaders we may have multiple shader executables per program binary. We must store the uniforms outside the executable, in the program binary, to be consistent between variations. Change-Id: I1bec83dfb83ee9bb422448b157338a46e8e7ba56 Reviewed-on: https://chromium-review.googlesource.com/183585 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Geoff Lang ecc8b6f4 2014-01-30T10:44:23 Refactor BufferStorage11. In preparation for transform feedback, BufferStorage11 needs to be able to handle a non-staging buffer being updated. Each D3D11 buffer now has an incrementing data revision associated with it so the most up-to-date buffer is always known. Staging buffers are now represented like any other DirectBuffer. Change-Id: I6e881867cb2bd02d600213d08cce3ebba316c525 Reviewed-on: https://chromium-review.googlesource.com/184395 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Jamie Madill e53c98ba 2014-02-03T11:57:13 Add work-around for D3D9 shader compiler bug. With certain selection statements with a vertex input in the condition and side-effects in the else-block, we'd run in to a D3D9 compiler bug which would cause incorrect results. We can work around this bug in D3D9 by selectively rewriting these statements to use an 'else if' clause instead of 'else'. BUG=322794 Change-Id: I93c96fb201ff4959c00d9a36321faac7e0343278 Reviewed-on: https://chromium-review.googlesource.com/184681 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 7993190b 2014-02-03T14:29:42 Fix wrong allocator being used for sampler deletion. Change-Id: I5e5aca5cda2bf1a96db05d594c64970ebf54fd29 Reviewed-on: https://chromium-review.googlesource.com/184572 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 8d6a0024 2014-01-31T16:38:31 Fixed missing break statement. Change-Id: I83e3091243be442eafa4d16e4a4ce247a326c493 Reviewed-on: https://chromium-review.googlesource.com/184570 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang f8912c50 2014-01-30T10:12:03 Refactor buffer existance check into Buffer::invalidateStaticData. Change-Id: I28a7654d152865c236831636f00554a71784667b Reviewed-on: https://chromium-review.googlesource.com/184394 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 826f3d30 2014-01-29T09:26:49 Add a GetComponentType method to query a DXGI format. Also add a few missing DXGI formats related to vertex inputs. Change-Id: Ia39234a164000d11eef3806ba4f06b6426f1cbb7 Reviewed-on: https://chromium-review.googlesource.com/183584 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 9eeecfc2 2014-01-29T09:26:48 Split DXGI format info to a GL mapping and info block. The GL mapping depends on context client version (for certain depth textures), but the DXGI base format info is consistent across versions. Also add DXGI component type information to the table, and add a few missing formats related to vertex inputs. Change-Id: I2d1a8ca92b1cb39f4592d94d7d435ae0ada1de65 Reviewed-on: https://chromium-review.googlesource.com/183583 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 6246dc8f 2014-01-29T09:26:47 Track dirty D3D shaders instead of program serial. With dynamic shaders, we can have multiple vertex shaders in one program binary. Hence the binary serial by itself isn't enough to determine when we need to apply new shaders to D3D. Change-Id: I5a8b8616d353b506790ffc809e2d459bfc2b831d Reviewed-on: https://chromium-review.googlesource.com/184370 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 648c9683 2014-01-21T16:50:58 Minor optimizations to texture functions. By shuffling some parameters and calls around we can reduce the number of function calls we run for texture operations. Change-Id: If6d14cb6dff668cdfcb2f1fe6705e0d488dbc03f Reviewed-on: https://chromium-review.googlesource.com/183582 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 3810bee3 2014-01-21T16:47:12 Add the missing GL_DEPTH enum to the fbo attachment query. This enum is only availabe in GLES 3. We were failing a dEQP state query test (fbo.draw_framebuffer_default_framebuffer) Change-Id: I4cfb07b8597899561b8cc7956a9eb4cd4b0a99a8 Reviewed-on: https://chromium-review.googlesource.com/181782 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 83217796 2014-01-16T09:52:38 Remove system.h. The gyp files already define NOMINMAX and WIN32_LEAN_AND_MEAN. windows.h is also included via the D3D includes. This ends up speeding up the build process significantly by not having windows.h included in nearly every file. Also fixes issues on non-windows systems by not having stdarg.h included in debug.cpp. Change-Id: Id32d9aac37a5a29df832a062dd8024302a798a1c Reviewed-on: https://chromium-review.googlesource.com/183251 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill ab9d82cd 2014-01-21T16:38:14 Fix FramebufferRenderbuffer validation. We were not checking for an invalid renderbuffer when attaching to a framebuffer. Change-Id: Ie29dca1833cc8c2b974f746d51dbee848f52a741 Reviewed-on: https://chromium-review.googlesource.com/181558 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill d7460c7e 2014-01-21T16:38:14 Fix gl::ValidTextureTarget to work on all enum values. Change-Id: I347583ae1adcaaae9feeb1276f6150ceb8739885 Reviewed-on: https://chromium-review.googlesource.com/181557 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 1fc7e2c5 2014-01-21T16:47:10 Refactor validation of FramebufferRenderbuffer. Consolidate a lot of duplicated code into helper methods. Also move GetTargetTexture to the context class. Change-Id: I8e3990a5e3c1976cb533941d0a0946466accec30 Reviewed-on: https://chromium-review.googlesource.com/181556 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 92bfd5c6 2014-01-16T13:51:35 Remove __stdcall from non-windows builds. Change-Id: I424cb538808ec64137c85af3bbe8742043e1c573 Reviewed-on: https://chromium-review.googlesource.com/183260 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang f5713124 2013-10-07T17:06:30 Rework tracing and perf defines. Changed ANGLE_DISABLE_* to ANGLE_ENABLE_* for perf and tracing defines so they are disabled by default. Updated the gyp files to only turn on perf by default for windows debug builds. Change-Id: I71706674e6d12fbf4208acc8f100d963b82c7674 Reviewed-on: https://chromium-review.googlesource.com/183250 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill ec91cd32 2014-01-21T16:38:12 Clamp stencil reference value to D3D11 8-bit limitations. D3D11 can only mask 8 bits of a stencil reference value, so the upper bits are ignored. GL, however, expects the reference value to be able to scale to 32-bits. We will expect to fail certain edge cases where the reference value, and mask, both use particular 9+ bit values. Change-Id: I8c7451270d9e40310f4154955d38e51bbf7de4df Reviewed-on: https://chromium-review.googlesource.com/181555 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 24112d68 2014-01-21T16:39:19 Only use 4-channel shaders for unpack buffers. D3D11 supports sampling other channel sizes of backing object and declaring them as 4-vectors in HLSL. This allows us to simplify the logic for fast unpack shaders significantly. Source: http://msdn.microsoft.com/en-us/library/windows/desktop/bb509700(v=vs.85).aspx (Default Values for Missing Components in a Texture) Change-Id: I7f645372f266f57bd94cdb1c795f1d30bf2a60a4 Reviewed-on: https://chromium-review.googlesource.com/181901 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill c30003d6 2014-01-10T12:51:23 Fix zero-size textures and unpack buffers. We would sometimes attempt to use a NULL staging texture when initializing a zero size texture when using unpack buffers. Change-Id: I2e03141c19d9c47eeffb0d56c03bcfe476a9e48d Reviewed-on: https://chromium-review.googlesource.com/181781 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 4b8c3eba 2014-01-14T16:09:43 Fix build on Visual Studio 2013. A breaking change in VS2013 necessitates we include <algorithm> to use std::min/max. BUG=angle:547 Change-Id: Ia1b21e61d22148ab6d268b34dbfe9a707ca3e59d Reviewed-on: https://chromium-review.googlesource.com/182512 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill b155bbcb 2014-01-13T09:51:03 Properly clamp stencil mask query values to max int. We could overflow when casting from max unsigned int to integer, and return a negative mask. See dEQP functional.state_query.stencil_value_mask_getfloat Change-Id: I59189a40b662ad9d8ded79cdfeded923b98f0b85 Reviewed-on: https://chromium-review.googlesource.com/181780 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang a50232fd 2014-01-10T15:52:18 Added a utility application to generate c headers from dds textures. Change-Id: Idb4c2ca318c84433f2b06bd4f0c66045f43e56de Reviewed-on: https://chromium-review.googlesource.com/182191 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 2c254d8f 2014-01-15T14:51:23 Add swizzle tests. Change-Id: If04bc249b9da8306896c89c28bb057c2cf4da511 Reviewed-on: https://chromium-review.googlesource.com/181771 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang d701ea12 2014-01-10T15:53:35 Replaced Stanford model images. Change-Id: I76d568ce7b1acb84aba99adf8e6ca921e0933ac4 Reviewed-on: https://chromium-review.googlesource.com/182190 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 9c53f1e9 2014-01-08T13:41:47 Add more D3D11 buffer usages. Works around performance regressions when index and vertex buffer bind flags are used on the same buffer. Change-Id: I28bc0d3147c6bd70cec507f20e41d97ec4cc45a5 Reviewed-on: https://chromium-review.googlesource.com/181911 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Geoff Lang 28576da5 2014-01-13T14:20:10 Don't include windows.h on non-windows systems. Change-Id: I8cf650073ead5b52bac44e31c8c3c894bc31e01c Reviewed-on: https://chromium-review.googlesource.com/182320 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 55856b16 2014-01-02T13:59:50 Clean up state query methods. Consolidate a lot of the code duplication in GetIntegerv, GetFloatv, GetBooleanv and GetInteger64v. BUG=angle:540 Change-Id: I7b4a5803ea76e5eeb0ebf25c5caadec4c647b485 Reviewed-on: https://chromium-review.googlesource.com/180971 Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 3cd50f7e 2014-01-10T13:04:48 Fix remaining discrepencies between master and es3proto project files. Change-Id: I335c9346ac268beab25184e2b18ccfdd0b15c7b1 Reviewed-on: https://chromium-review.googlesource.com/182150 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 91382e55 2014-01-07T16:16:30 Renderer11 tracks applied textures as SRVs. Since swizzled textures have multiple SRVs and the same serial, it was possible that the bound SRV would not be updated if the texture became swizzled while already bound. Change-Id: Id06e82f4002aa7f7661c7a69243692aa65a83b48 Reviewed-on: https://chromium-review.googlesource.com/181772 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill b8f8b89b 2014-01-07T10:12:50 Fix using wrong value for array size in 2D array storage. We were incorrectly calling Texture::getBaseLevelDepth() which was correctly reporting the number of 3D slices of the texture (1). Also rename Texture2DArray::getDepth to getLayers for clarity. Change-Id: I1968cbcb0a3528bb76ec3e4ea4148e5dc0f302c7 Reviewed-on: https://chromium-review.googlesource.com/181553 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 67938efc 2014-01-07T16:17:21 Added missing depth swizzle backing formats and fixed compressed texture bit calculation. Change-Id: I2390ace1fe5297f9fcad0c873c55dae564a09c43 Reviewed-on: https://chromium-review.googlesource.com/181773 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Brendan Long eaa84061 2013-12-08T18:26:50 Remove unnecessary int cast in ParseContext. BUG=angle:536 Change-Id: I72287f5ce9736cd48fc241022e09446db717cf92 Reviewed-on: https://chromium-review.googlesource.com/181770 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill d2a88381 2014-01-06T14:03:51 Fix improper deferencing of a zero-size vector. When doing a masked clear with only a depth-stencil buffer, we would look for the zero-th element of an empty vector. Change-Id: I17d61cf582c6e91fd46f8a8e13e35c6d32dfa109 Reviewed-on: https://chromium-review.googlesource.com/181554 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Nicolas Capens b1f45b70 2013-12-19T17:37:19 Create HLSL texture offset functions. BUG=angle:541 Change-Id: I63dd47c40d693724aa6bed93e9967e3b1f8535bd Reviewed-on: https://chromium-review.googlesource.com/181521 Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Shannon Woods f831e3dd 2014-01-06T12:06:46 Add NetBSD and DragonFly to posix-compliant OS list BUG=angle:428 Change-Id: I282a6bf138b4e2a2c17baf428cbe1e636f43bdd6 Reviewed-on: https://chromium-review.googlesource.com/181640 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/181670 Commit-Queue: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Nicolas Capens 1fbc2873 2014-01-03T14:12:09 Add textureOffset intrinsics to the symbol table. BUG=angle:541 Change-Id: Ied96edd073017a507369319a781b8ed23f60790b Reviewed-on: https://chromium-review.googlesource.com/181520 Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Jamie Madill b6780326 2014-01-03T10:57:25 Fix default vertex attribute component size to 4. The GL spec states that by default a vertex attribute has a size of 4. Change-Id: Ic4c977fb936cc0b232ed4742eeb061d6ba6843be Reviewed-on: https://chromium-review.googlesource.com/181480 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 80b5a55e 2014-01-03T10:57:11 Fix compressed formats breaking swizzle bits checks. We defautled to zero max bit depth, which breaks the swizzle format lookup. Change-Id: I4d1cd8bcfb79db3460950fa22630c259f90fa432 Reviewed-on: https://chromium-review.googlesource.com/181481 Reviewed-by: Jamie Madill <jmadill@google.com> Commit-Queue: Jamie Madill <jmadill@google.com> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Nicolas Capens 44cc79f6 2014-01-03T10:57:22 Fix compiler crash. Create a fake variable for function identifiers used as a variable identifier to allow continuing compilation after reporting the error. BUG=chromium:330222 Change-Id: I96c330694e3503fe2df66621375d2bf76115e325 Reviewed-on: https://chromium-review.googlesource.com/181491 Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Nicolas Capens f9ea3e17 2014-01-03T10:21:58 Regenerate the parser using Bison 2.7.12. The next patch requires a parser grammar change, but Cygwin's Bison version got updated so this separates the changes caused by that update from the ones for the actual bug fix. Change-Id: I6a596e02198725c7dbc6a1a356fdbe388ee512d7 Reviewed-on: https://chromium-review.googlesource.com/181490 Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill ee42308e 2014-01-02T14:04:09 Update guards in ShaderVariable.h. We neglected to update the text of the guards when we renamed the file from Uniform.h to ShaderVariable.h. BUG=angle:533 Change-Id: I59969113536b69a418cf233ef0d7dd797e666ea9 Reviewed-on: https://chromium-review.googlesource.com/180978 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 79f2f45c 2013-12-19T11:13:02 Fix allowing ES3 enum queries to call through to ES2 contexts. In some cases we would not validate the enums against the context version, allowing the app to call through to unimplemented features. BUG=angle:540 Change-Id: Ic89422a3a48882314c054f133961af0b4d8d739a Reviewed-on: https://chromium-review.googlesource.com/180970 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2e503557 2013-12-19T13:48:34 Add in fixes for dEQP state reset. dEQP relies on a couple specific enums to reset state (see the prerequisites test) which we don't currently implement. Prior changes require us to implement a few query parameter to allow dEQP to work. BUG=angle:540 Change-Id: Ibd7caa08ffb821ea2de120717beedb2f82428da2 Reviewed-on: https://chromium-review.googlesource.com/180981 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Jamie Madill 03181abc 2013-12-18T12:56:06 Fix sorting uninitialized attribute semantics to the end. A missing condition would produce a sort order where sometimes -1 was shifted to the front of the semantic array, instead of the end. BUG=angle:527 Change-Id: I69b2e5ccc03f6523771601cd59293d6cd325be2f Reviewed-on: https://chromium-review.googlesource.com/180651 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 13a2f85b 2013-12-11T16:35:08 Implement max elements indices and vertices. ES3 has integer queries for the maximum recommended number of vertices and indices per draw call. These are roughly correlated to D3D's resource limits -- however, while ES3 has recommended limits D3D has hard limits. Change-Id: Ib653bc27e61607c78d0c5e70b0d97fea7af6464f Reviewed-on: https://chromium-review.googlesource.com/179670 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Jamie Madill cd65ae16 2013-12-17T15:20:14 Trigger lost device on an error in D3D9 Present. This fixes device remove handling on AMD systems, as well as notifying the app layer there may have been an internal problem during Present. BUG=313210 Change-Id: I843ffb3946dd9ef34fbd24b3a46a7b97e3c0fd16 Reviewed-on: https://chromium-review.googlesource.com/179140 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/180450 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang f11dbdb3 2013-10-23T14:37:58 Added a read pixels test. Change-Id: Ia4c5a0290e62e2c312d86fa18ef4e76d782a4a41 Reviewed-on: https://chromium-review.googlesource.com/179357 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang 066230a8 2013-10-30T12:59:30 Added compressed texture tests. Change-Id: Id6090b134b957ca195afa615d61a10f8b008208e Reviewed-on: https://chromium-review.googlesource.com/179358 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang 2e475a5a 2013-10-23T14:37:44 Added tests for maximum texture size. Change-Id: I3bce6ce2a04a3347933bfe515bcaa9b5eaebf255 Reviewed-on: https://chromium-review.googlesource.com/179356 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang 1f12fa0b 2013-10-23T13:24:53 Added line loop tests. Change-Id: I77a8997ccdf1b0918127d6d46a145039a941ce06 Reviewed-on: https://chromium-review.googlesource.com/179355 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang 0ddab0c8 2013-10-23T13:24:41 Added incomplete texture tests. Change-Id: Ie223404eb3b36664a6fbaefc45d9ff24d0be5cb1 Reviewed-on: https://chromium-review.googlesource.com/179354 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang b6046502 2013-10-23T13:11:32 Moved the compiler test initialization and tear down into a gtest environement class. Change-Id: I1fd05a188830567b04b9341793e64488da027894 Reviewed-on: https://chromium-review.googlesource.com/179353 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang bb134678 2013-10-23T13:06:46 Added a gtest environment class to initialize the ANGLETest class window. Change-Id: I6fa59201364960cc8fe1cb44e2d09a14cf61dd8a Reviewed-on: https://chromium-review.googlesource.com/179352 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 79bb0d9e 2013-12-09T16:20:28 Fix initializer type bug when using list declarations. We were using the first type as the type for each declaration, which could cause erros for arrays, eg "float one[4], two;" BUG=angle:431 TEST=WebGL CTS 1.0.2 Change-Id: I104d6701cc019ae3b3831a2d568ffe2b656b45a2 Reviewed-on: https://chromium-review.googlesource.com/179351 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Jamie Madill 7a93437b 2013-12-06T18:17:48 Fix initialization of thread local storage in libGLESv2. When an app would load libGLESv2.dll via LoadModule, then would call methods on a thread that was already created, we could creash because of uninitialized thread local storage. BUG=angle:488 Change-Id: I9b05de462232a16d639c58ec07386b7c38a01793 Reviewed-on: https://chromium-review.googlesource.com/179132 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill a4e68d43 2013-12-09T14:37:13 Fix initialization of thread local storage in libEGL. When an app would load libEGL.dll via LoadModule, then would call methods on a thread that was already created, we could creash because of uninitialized thread local storage. BUG=angle:488 Change-Id: If3f73fb59dcc5f0713f5b6fb9ca9f8535ee23c73 Reviewed-on: https://chromium-review.googlesource.com/179131 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill a738f085 2013-11-01T17:45:04 Fix build on QNX. InfoSink.h needs stdlib.h for abs(int) and free() in the global namespace. ExpressionParser needs malloc.h, because bison needs malloc and free in the global namespace, but "#include <cassert>" will put it only in the std:: namespace on QNX. BUG=500 R=geofflang@chromium.org, jmadill@chromium.org, shannonwoods@chromium.org, zmo@chromium.org Review URL: https://codereview.appspot.com/19330044 Change-Id: Ifa30a8ba5eced1156123416d4a24b490620721af Reviewed-on: https://chromium-review.googlesource.com/178993 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Jamie Madill d7f2135f 2013-10-30T17:53:15 Fix build on QNX. InfoSink.h needs stdlib.h for abs(int) and free() in the global namespace. ExpressionParser needs malloc.h, because bison needs malloc and free in the global namespace, but "#include <cassert>" will put it only in the std:: namespace on QNX. BUG=500 R=geofflang@chromium.org, shannonwoods@chromium.org Review URL: https://codereview.appspot.com/19330044 Conflicts: src/compiler/translator/InfoSink.h Change-Id: Ie480d5c293d099f21dafc8c1e7997c0b4cda7207 Reviewed-on: https://chromium-review.googlesource.com/178998 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
John Bauman 827a471b 2013-10-29T16:03:11 Disable automatically resizing swapchain if window is iconified The size of the window is changed if the window is iconified, but that change should be ignored. BUG= R=shannonwoods@chromium.org Review URL: https://codereview.appspot.com/19460043 Conflicts: src/libEGL/Surface.cpp Change-Id: Ia5053a2f210b29d39551796de3d8a394d7897ac9 Reviewed-on: https://chromium-review.googlesource.com/178997 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Zhenyao Mo 7cab38b5 2013-10-15T12:59:30 Add an option to unfold short circuiting in AST. We replace "a || b" with "a ? true : b", "a && b" with "a ? b : false". This is to work around short circuiting bug in Mac drivers. ANGLEBUG=482 TEST=webgl conformance tests R=alokp@chromium.org, kbr@chromium.org Review URL: https://codereview.appspot.com/14529048 Conflicts: src/build_angle.gypi src/compiler/translator/Compiler.cpp Change-Id: Ic2384a97d58f54294efcb3a012deb2007a9fc658 Reviewed-on: https://chromium-review.googlesource.com/178996 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Zhenyao Mo 6cb95f3a 2013-10-03T17:01:52 Fix a traverse bug. In loop node, the init part was skipped in traversing. BUG= TEST= R=kbr@chromium.org Review URL: https://codereview.appspot.com/14366043 Change-Id: If3200f1dbcafda1147820b2d47b758b897de0fc6 Reviewed-on: https://chromium-review.googlesource.com/178992 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Zhenyao Mo e88dcaf3 2013-10-03T16:55:19 Style violation cleanup for IntermTraverse.cpp Per suggested by kbr in https://codereview.appspot.com/14366043/, we clean up the stype violation in a separate CL. BUG= TEST=no behavioral change TBR=kbr@chromium.org Review URL: https://codereview.appspot.com/14371043 Change-Id: I27e15f632eff3a9d0d22ae955b5a952793128661 Reviewed-on: https://chromium-review.googlesource.com/178991 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Jamie Madill c5a63124 2013-12-09T13:03:32 Add unit tests for proper TLS initialization. The test creates a worker thread which initializes EGL, then calls EGL methods which check for thread local storage values. This can cause a crash of the values are uninialized. BUG=angle:488 Change-Id: Ibaffede0605c720ba9ca47910690a1334ee9e20e Reviewed-on: https://chromium-review.googlesource.com/179130 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 3b866b6c 2013-09-30T15:21:00 Clear11 will not clear channels that are not supposed to exist in the render target's format. Change-Id: I9c2bb927ec63d67d315893d44f199ceab4b5df82 Reviewed-on: https://chromium-review.googlesource.com/176856 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Geoff Lang c142e9da 2013-09-30T15:19:47 Renderer classes now set their blend states to mask out channels that do not exist in the render target. Change-Id: Ia49bf8de07bbdfa31275ec9835de28adc3717485 Reviewed-on: https://chromium-review.googlesource.com/176855 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Shannon Woods 5cd4761f 2013-12-02T19:13:14 Re-add jschuh's TODO comment for 64-bit warnings Change-Id: I690cfd9146c51cd1e19dc2bcd2cc227b4d156cd0 Reviewed-on: https://chromium-review.googlesource.com/178995 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Shannon Woods 1bfaf782 2013-12-02T18:57:22 Merge preprocessor test changes from f84ef70bc729506184b052e5e9cf78796a5a4704 Change-Id: I672f8b37f1e8189e43273abb59bce23ff1d580c1 Reviewed-on: https://chromium-review.googlesource.com/178994 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Jamie Madill 3929c1c4 2013-12-05T11:48:38 Store the commit date in version.h, and in the DLL properties. This will allow Chrome, or other apps who reference ANGLE internally, to pull chronological version information about ANGLE. Change-Id: I7dbd5b60b533f176b34f7248d70a1d9757ae99d6 Reviewed-on: https://chromium-review.googlesource.com/179100 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Commit-Queue: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Jamie Madill 39173f13 2013-12-04T15:56:32 Roll gyp and regenerate public projects to have the cleaned paths. With gyp r1804 we can support having nice project folders without nested subfolders. We must disable the parallel build for gyp as it is currently broken in our project, and turned on by default. Change-Id: Ie147ce423115009e254447d51cc30da0cfb2704f Reviewed-on: https://chromium-review.googlesource.com/178782 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang f8c2f5cb 2013-12-05T13:52:33 Fix indices not being offset to the bound vertex buffer when drawing indexed points in D3D9. bug=angle:535 Change-Id: I5b86874cddbd3b90fe141e94085f5a4afb9f3db3 Reviewed-on: https://chromium-review.googlesource.com/179101 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Scott Graham 86f601cb 2013-09-17T13:28:00 Adds algorithm.h dependency to support VS2013 builds. Change-Id: I1c254be3532d9b69380f8e2b0dde0be76a8ad262 Reviewed-on: https://chromium-review.googlesource.com/178990 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Geoff Lang 34256ed8 2013-09-30T15:15:52 Image and RenderTarget classes now initialize their textures if required. Change-Id: I2cce6f4ffdc7e2a6c23c50d663c6316f9b125880 Reviewed-on: https://chromium-review.googlesource.com/176854 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Geoff Lang 0c99b1b0 2013-09-30T15:07:43 Add functions to check if texture data initialization is required. Change-Id: I54c3b90780c304d6001b9e52278672981c96cb83 Reviewed-on: https://chromium-review.googlesource.com/176853 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>