kc3-lang/angle/src

Branch :


Log

Author Commit Date CI Message
5d64cafa 2014-02-11 10:23:34 Fix multiple variables named i in the same scope. Change-Id: I575e1d80d103f554892feb6369e9b76c199bf20a Reviewed-on: https://chromium-review.googlesource.com/185881 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
fc01454b 2014-02-18 14:47:13 Implement texelFetch and texelFetchOffset. BUG=angle:564 Change-Id: I7ad3484061f5d6912d7842bdadc6297de3e82ef8 Reviewed-on: https://chromium-review.googlesource.com/186990 Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
5c9a29ab 2014-02-11 10:26:24 Fix redefinition of variables. Change-Id: I04b0577c8af45fca938d8fb7cf0b9fe2eadafcf2 Reviewed-on: https://chromium-review.googlesource.com/185883 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
2adc256a 2014-02-14 23:50:59 Implement textureProjLod and textureProjLodOffset. BUG=angle:564 Change-Id: I547c69908d0aa1809f844a50230bc019e6dd5893 Reviewed-on: https://chromium-review.googlesource.com/186685 Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
df86c6b9 2014-02-14 20:09:17 Implement textureProjOffset and textureLodOffset. BUG=angle:564 Change-Id: I647abed0609afd178d2e9522f139d25dd3c7fda4 Reviewed-on: https://chromium-review.googlesource.com/186684 Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
774b39ff 2014-02-19 16:27:35 Fix commit id versioning when building with Chrome. The GYP syntax would cause problems with the ninja build. BUG=angle:529 Change-Id: I84a30afc9bd8900535e44f5d5f9d8f766a4686e8 Reviewed-on: https://chromium-review.googlesource.com/186610 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/186984 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
5508f39d 2014-02-20 13:31:36 Fix breaking the build with missing GetGlobalMaxTokenSize. Because the preprocessor is used independently from the compiler, we need a way to track max token size when we don't have access to the parse context with the current spec. BUG=angle:550 Change-Id: Idf5035ec2c001ee75f264151ab3c4e92f3cd44d7 Reviewed-on: https://chromium-review.googlesource.com/187140 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
4fd5e4a3 2014-02-14 18:17:15 Use generic sampler types to compact symbol table initialization. BUG=angle:564 Change-Id: Idbca76a4c8360d34652b571227fbb068d8d017c4 Reviewed-on: https://chromium-review.googlesource.com/186683 Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
7bee6395 2014-02-11 10:25:07 Fix incorrect cast. Change-Id: I1a41593dbe598dfef301c9df0f47a5105b5705cf Reviewed-on: https://chromium-review.googlesource.com/185882 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
759b994b 2014-02-14 17:57:14 Define generic sampler types. BUG=angle:564 Change-Id: I627f55152000371e73f3e5b4ba6938119fab0223 Reviewed-on: https://chromium-review.googlesource.com/186682 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Nicolas Capens <nicolascapens@chromium.org>
c9508842 2014-02-14 17:48:50 Simplify the creation of global types. BUG=angle:564 Change-Id: If611947f7e8ceb603001165c3c1d61d7686f1d30 Reviewed-on: https://chromium-review.googlesource.com/186681 Tested-by: Nicolas Capens <nicolascapens@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
c8058451 2014-02-03 12:04:11 Add functionality to create and destroy TransformFeedback objects. BUG=angle:491 Change-Id: I3ee3c2aec1878ad656a8f522943a29fea6f7e215 Reviewed-on: https://chromium-review.googlesource.com/185033 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
8e32884a 2014-02-10 13:11:20 Remove dependence on dxguid.lib for release builds. BUG=angle:559 Change-Id: I10c93b312b4bf206e45d061eace2d00e598403bd Reviewed-on: https://chromium-review.googlesource.com/185690 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
94a9089b 2014-02-18 17:14:19 Detect cross-process HWNDs and verify DXGI 1.2 exists in D3D11. DXGI 1.2 is required to create a swap chain for a HWND owned by another process. This fix will allow us to fall back to creating a Renderer9 if DXGI 1.2 is not available instead of failing to create the swap chain later. BUG=angle:562 Change-Id: I01b08ffb262bc3f9c86d244168df14eba52c5bdc Reviewed-on: https://chromium-review.googlesource.com/186980 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
ac97d59f 2014-02-19 23:35:42 Fix git call syntax in commit_id.bat BUG=angle:566 Change-Id: I437bdec916dbfe12cb310a20d4f38c18072eacd0 Reviewed-on: https://chromium-review.googlesource.com/187210 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org> (cherry picked from commit aacedfcffbca780c56dda2ab03ee07faccf0fbec) Reviewed-on: https://chromium-review.googlesource.com/187201 Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
496123fd 2014-02-12 11:33:51 Implement EXT_blend_minmax. BUG=angle:555 Change-Id: I1ae6a9783e718d16ee08bda5463f11cd52ad0967 Reviewed-on: https://chromium-review.googlesource.com/186123 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
2a419244 2014-02-10 13:00:44 Add defines to enable or disable specific renderers. BUG=angle:559 Change-Id: I88c168205b142701ec843aa394c82c3a5857ed0d Reviewed-on: https://chromium-review.googlesource.com/185569 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
88f6e946 2014-02-19 10:27:53 Proper support for token max size in WebGL+ES3. WebGL specifies a maximum token size of 256 characters, while ES3 specifies 1024 characters. We can determine the proper max size to support from the spec. BUG=angle:550 Change-Id: I6aeabe8af3b6184a27b456248ce2f84f361b76e4 Reviewed-on: https://chromium-review.googlesource.com/186973 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
c9f140d8 2014-02-18 15:27:21 Add preprocess bison files to the gyp files. We had accidentally left out the y and l files from our generation scripts, causing us to miss several instances of updated enum names. BUG=angle:550 Change-Id: I8790742fbaab5435e4c0db4f61c3e8194a231550 Reviewed-on: https://chromium-review.googlesource.com/186972 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
61b54433 2014-02-18 15:27:19 Fix unsized formats in GenerateMipmap. We had accidentally blocked mipmap generation for all unsized formats in ES3, because they were marked as non-renderable. The spec specifically allows for mipmaps with unsized formats in GenerateMipmap. BUG=angle:550 Change-Id: Iee7eddd011f4fe86b690422723620593f8049ba6 Reviewed-on: https://chromium-review.googlesource.com/186971 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
5c55caf3 2014-02-18 15:27:18 Fix bugged tokens marked as reserved/free in ES2. We had accidentally marked 'smoooth', 'centroid' and 'case' as reserved in ES2, when they are available as identifiers. Additionally 'sampler2DShadow' was marked as free, instead of reserved. BUG=angle:550 Change-Id: I33ec1b790ad5b4d9a6f4d2ea2e91cec1ca8e7320 Reviewed-on: https://chromium-review.googlesource.com/186970 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
d2d648cc 2014-01-29 09:27:10 Enable GPU dynamic conversion for unnormalized int formats. This patch turns on the dynamic conversion logic for integer formats that we must convert to floating point for ESSL 1.0 compatibility. The converted formats are 1, 2 and 4 channel unnormalized integer. BUG=angle:560 Change-Id: I3bcc45f1103290613029bc54fdd6012dddb0a03d Reviewed-on: https://chromium-review.googlesource.com/186700 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
dad5ed39 2014-02-10 12:59:17 Refactor HLSL compilation out of Renderer. This moves the start-up and tear-down code for D3DCompiler.dll into an object that Renderer9 and Renderer11 use. This will help future efforts to remove references to HLSL at the GL/Renderer interface level. BUG=angle:558 Change-Id: I18fcf9b237265d69c1d7d2ea345696c8fd31df29 Reviewed-on: https://chromium-review.googlesource.com/185568 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
8664b063 2014-02-14 16:41:29 Add logic for dynamic converstion of int to float vertex data. We can use the format tables and input layout to determine when we need to generate conversion code in the vertex shader. BUG=angle:560 Change-Id: Ib64fb16823bf78ed6432fba283b0d24bcb673a76 Reviewed-on: https://chromium-review.googlesource.com/185195 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
c5ede1a7 2014-02-14 16:41:27 Add logic for inserting vertex conversion code in HLSL. The patch refactors the vertex input HLSL to allow for dynamic conversion in the future. Using a placehold keyword, the code replaces that stub with the vertex input conversion logic. BUG=angle:560 Change-Id: I100c50cb4decd45b0f0c10d7c2c22583368b773e Reviewed-on: https://chromium-review.googlesource.com/185194 Reviewed-by: Nicolas Capens <nicolascapens@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
2c7d84ac 2014-02-14 16:41:26 Store un-linked shader attributes in ProgramBinary. Our caching of compiled vertex shaders according to their input signature needs a consistent input signature to match up shaders. Since the linking step currently shuffles attributes according to API specified locations we need a separate list. BUG=angle:560 Change-Id: Icc4d5df1d37ae895d5c882b86e60f05b5c268461 Reviewed-on: https://chromium-review.googlesource.com/185193 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
c5a83000 2014-02-14 16:41:25 Store multiple vertex executables in the program binary. With dynamic vertex conversion the GPU, we will have different input layouts resulting in different executables. This patch adds a way of mapping the input layouts to vertex executables. BUG=angle:560 Change-Id: Ie36f2f8ac2dfcb96f562af577d31f57d6d89b447 Reviewed-on: https://chromium-review.googlesource.com/185192 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
5f562735 2014-02-14 16:41:24 Moved all HLSL-related code from ProgramBinary to DynamicHLSL. DynamicHLSL encapsulates all HLSL generation we need outside the the shader translator, such as for linking between input and output stages and point sprite geometry shaders. BUG=angle:560 Change-Id: Ib5079aa102000a7c37b166bcbe26b09cc82f8932 Reviewed-on: https://chromium-review.googlesource.com/185191 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
e8bc3193 2014-02-14 13:04:03 Optimize masked clearing of missing channels. Instead of doing a masked clear when a texture has mismatched channel counts, set the clear color to the default for the missing channels and do a regular clear. This catches es3proto up to master in terms of clear performance. BUG=angle:557 Change-Id: I4f16976154af7735f5bb2b0b17adb3a264872ec0 Reviewed-on: https://chromium-review.googlesource.com/186611 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
0aa84f63 2014-02-13 13: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>
5f6937ca 2014-02-12 17: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>
4a667fe9 2014-02-11 12: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>
32d508e2 2014-02-11 09: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>
2a20562f 2014-02-12 10: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>
7ea42a55 2014-02-10 12: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>
0bf3a982 2014-02-11 09: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>
a4de2657 2014-02-11 09: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>
c6856732 2014-02-11 09: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>
49f9a20d 2014-02-03 11: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>
1cd1b213 2014-02-11 09: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>
cbf727ae 2014-02-10 12: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>
03ef7406 2014-02-11 09: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>
37dde692 2014-01-31 16: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>
d5da329c 2014-02-06 13: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>
1106aeb2 2014-02-06 11: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>
0550d038 2014-01-30 11: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>
2e5c6042 2014-02-06 10: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>
a5e44c92 2014-02-04 16: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>
a5d67475 2014-02-04 16: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>
7d649a00 2014-02-07 11: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>
95ffb868 2014-01-29 09: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>
80177879 2014-02-04 16: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>
7ab02faf 2014-02-04 16: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>
3078d0f7 2014-02-04 16: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>
8ff21aea 2014-02-04 16: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>
c47a678a 2014-02-04 16: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>
ecc8b6f4 2014-01-30 10: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>
e53c98ba 2014-02-03 11: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>
7993190b 2014-02-03 14: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>
8d6a0024 2014-01-31 16: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>
f8912c50 2014-01-30 10: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>
826f3d30 2014-01-29 09: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>
9eeecfc2 2014-01-29 09: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>
6246dc8f 2014-01-29 09: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>
648c9683 2014-01-21 16: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>
3810bee3 2014-01-21 16: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>
83217796 2014-01-16 09: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>
ab9d82cd 2014-01-21 16: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>
d7460c7e 2014-01-21 16: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>
1fc7e2c5 2014-01-21 16: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>
92bfd5c6 2014-01-16 13: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>
f5713124 2013-10-07 17: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>
ec91cd32 2014-01-21 16: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>
24112d68 2014-01-21 16: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>
c30003d6 2014-01-10 12: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>
4b8c3eba 2014-01-14 16: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>
b155bbcb 2014-01-13 09: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>
9c53f1e9 2014-01-08 13: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>
28576da5 2014-01-13 14: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>
55856b16 2014-01-02 13: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>
3cd50f7e 2014-01-10 13: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>
91382e55 2014-01-07 16: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>
b8f8b89b 2014-01-07 10: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>
67938efc 2014-01-07 16: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>
eaa84061 2013-12-08 18: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>
d2a88381 2014-01-06 14: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>
b1f45b70 2013-12-19 17: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>
f831e3dd 2014-01-06 12: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>
1fbc2873 2014-01-03 14: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>
b6780326 2014-01-03 10: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>
80b5a55e 2014-01-03 10: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>
44cc79f6 2014-01-03 10: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>
f9ea3e17 2014-01-03 10: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>
ee42308e 2014-01-02 14: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>
79f2f45c 2013-12-19 11: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>
2e503557 2013-12-19 13: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>
03181abc 2013-12-18 12: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>
13a2f85b 2013-12-11 16: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>
cd65ae16 2013-12-17 15: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>
79bb0d9e 2013-12-09 16: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>