Log

Author Commit Date CI Message
Geoff Lang 59c4debe 2015-01-05T14:49:56 Move copyimage to the D3D folder. BUG=angle:681 Change-Id: I2ce237281cc75fdae11b5ddb4eca52058c395e7a Reviewed-on: https://chromium-review.googlesource.com/238475 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 6f5dc074 2015-01-05T14:46:20 Move vertexconversion.h to the d3d9 folder. BUG=angle:681 Change-Id: I87ef6856040978a9a6045d1df20fe3117def35a3 Reviewed-on: https://chromium-review.googlesource.com/238474 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 359ef269 2015-01-05T14:42:29 Rename ShaderExecutable to ShaderExecutableD3D and move it to the D3D folder. BUG=angle:681 Change-Id: I097d6591be4e873c9a6f210cc91e3f4eb60f036b Reviewed-on: https://chromium-review.googlesource.com/238473 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 2dc4639f 2015-01-05T14:33:58 Rename SwapChain to SwapChainD3D and move it to the D3D folder. BUG=angle:681 Change-Id: Idcf24556e590e07cc0b6cf640d4701353a0cda5e Reviewed-on: https://chromium-review.googlesource.com/238472 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang c2e75afa 2015-01-05T14:26:24 Rename RenderTarget to RenderTargetD3D and move it into the d3d folder. BUG=angle:681 Change-Id: I1946e01ce09d99405c318723c254fe300cc5ac53 Reviewed-on: https://chromium-review.googlesource.com/238471 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang b4dedf3e 2015-01-05T14:08:53 Merge the Image class into ImageD3D. BUG=angle:681 Change-Id: I0c0d41fb3ff9592b08ede58a8c2ec2bd2d94a0b2 Reviewed-on: https://chromium-review.googlesource.com/238470 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 909b90ce 2015-01-12T14:07:26 Use the ImageIndex class for indexing the Texture size information. BUG=angle:681 Change-Id: I0c8d1c04ca8eefb9b618ee6635c0643d162c0cc1 Reviewed-on: https://chromium-review.googlesource.com/240241 Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Olli Etuaho abf6dadd 2015-01-14T14:45:16 Implement matrix inverse built-in Inverse is emulated in HLSL by calculating the cofactor matrix and dividing that with the determinant. This results in the transpose of the inverse as is required. Better performing options might exist especially for 4x4 matrices, but this is enough for a working implementation. BUG=angle:859 Change-Id: I5185797cc1ed86865f5f4342707abdc2977a186b Reviewed-on: https://chromium-review.googlesource.com/240331 Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Olli Etuaho d68157fc 2015-01-16T12:24:17 Fix issues related to modulus operator Make sure that "scalar %= vector" is not approved by the compiler, and that % and %= are only exposed on GLES3. BUG=angle:854 Change-Id: I3ac7eb607bd86a6caa905d2bef5d397688ad3fd3 Reviewed-on: https://chromium-review.googlesource.com/241410 Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Gregoire Payen de La Garanderie 5f7a717b 2015-01-12T10:50:33 Fixing EVENT message of gl::RenderbufferStorage. Change-Id: Iaf151d7521e67e8fe8bca331dabdf44d72e77ca1 Reviewed-on: https://chromium-review.googlesource.com/241420 Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross e8c86274 2015-01-15T18:55:36 MipmapTestES3's SetUp() doesn't conform to standards Change-Id: I57dba132cd08bb1b3db2cda2fe0c31b97746e1a4 Reviewed-on: https://chromium-review.googlesource.com/241380 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Nico Weber <thakis@chromium.org>
Austin Kinross 773c5180 2015-01-15T12:31:29 Fix WinRT build break. angle_common needs the WinRT flags. Change-Id: I409527becc9d8d2d91766a4cc5a24f96fd2b7505 Reviewed-on: https://chromium-review.googlesource.com/241070 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Austin Kinross <aukinros@microsoft.com>
Jamie Madill 155610b9 2015-01-15T16:37:17 Fix off-by-one max mip levels in getSRV. We would try to create SRVs with zero mip levels, when we should be asking for a single mip level. This would happen when the base level is equal to the max level. See the dEQP test: texture.mipmap.2d.max_level.linear_nearest Change-Id: I3f231f159dbdecbf7c2e61b373bfc3545875f36e Reviewed-on: https://chromium-review.googlesource.com/240762 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 3c9db122 2015-01-15T16:36:55 Fix pixel unpack buffers for some formats. The renderability test got flipped in 6cf8e1b906ebfc. See dEQP test: texture.specification.teximage2d_pbo.rgba8_snorm_2d Note: this test still fails due to a bug in isMipmapComplete, which has a fix in a subsequent patch. Change-Id: Ied8ad7712bbb844132b6ac37426716780c9801c9 Reviewed-on: https://chromium-review.googlesource.com/240761 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross 276171b4 2015-01-15T13:16:18 Disable MipmapTest::ThreeLevelsInitData test due to failure on D3D11 Change-Id: I5d1ee78fceb91c05f3925e753888b10cc81ec2b8 Reviewed-on: https://chromium-review.googlesource.com/241080 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2a30ccef 2015-01-15T11:36:13 Remove usage of std::copy_n from the entry points. This method is c++11 only and caused a build breakage on Mac. BUG=angle:773 Change-Id: Ib362b8d577aa85b9d6d2b8b87840ec5197240cf2 Reviewed-on: https://chromium-review.googlesource.com/241010 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross 215b37a6 2014-12-22T12:56:07 Work around zero-LOD mipmap issue on D3D11 Feature Level 9_3 In OpenGL ES, it is possible to sample from level 0 of a mipmapped texture by setting GL_TEXTURE_MIN_FILTER to GL_NEAREST. This is possible in D3D9 and D3D11 Feature Level 10_0+ via various methods. It's not possible in D3D11 Feature Level 9_3, though. This change works around this restriction by creating two copies of each texture on 9_3. The textures are identical, except one has mipmaps and one doesn't. The D3D11 renderer figures out which texture to use at the right time, and keeps the textures in sync with each other as necessary. Note: each texture is only created when it's needed. It's possible that only one (or even neither) D3D texture will be created for a given GL texture. Change-Id: I3c17137b4f63b9158b3abf067ad8e5d5c49d2191 Reviewed-on: https://chromium-review.googlesource.com/234522 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross be0facc6 2015-01-07T16:22:29 Reduce calls to ID3D11DeviceContext::Map() in VertexBuffer11.cpp This change moves VertexBuffer11::storeVertexAttributes()'s call to Map() outside a for-loop, eliminating unnecessary calls to Map(). Since Map() is a relatively expensive operation (even when using NO_OVERWRITE) this change gives a noticeable performance boost in some scenarios. Change-Id: I320111b32f2bb9eed92efbd240206e12aaa9964e Reviewed-on: https://chromium-review.googlesource.com/240181 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Austin Kinross <aukinros@microsoft.com>
Geoff Lang 691e58cd 2014-12-19T17:03:25 Merge all gl::Texture* classes. The validation for sampler completeness had a lot of duplicated code. The special cases have been merged into the base class by checking mTarget. BUG=angle:681 Change-Id: I11d94c1432f8fc70a1edaaf8228bbc43c3c8fff3 Reviewed-on: https://chromium-review.googlesource.com/236932 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 562e81bb 2015-01-14T14:31:02 Fix Linux build, and update BUILD.gn. Re-re-land with fixes for Linux and Android. We were getting multiply defined symbol errors on Linux for some stuff in the common sources. Switch to using a static lib target for the common sources, and also sync BUILD.gn with the latest gyp. BUG=angle:773 Change-Id: Ia2d52978a167c532e5e76cb711de589855eff44e Reviewed-on: https://chromium-review.googlesource.com/240553 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill dd806c2b 2015-01-14T14:26:35 Use emmintrin.h for SSE includes. This header should work on all available platforms, instead of the platform-specific intrin.h or x86intrin.h. BUG=angle:773 Change-Id: Ia012053064838f9893aa647d872e136a47cfad1a Reviewed-on: https://chromium-review.googlesource.com/240552 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Cooper Partin ffe38e1c 2015-01-14T08:32:19 Fixed WinRT ARM build break. ARM cannot use SSE. Change-Id: I9a55d37db148f82b255e2c7ff414e79259e2c4e1 Reviewed-on: https://chromium-review.googlesource.com/240476 Tested-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 129753af 2015-01-09T16:52:09 Split the flush and finish commands into separate methods. Improves the readability of the implementations and more closely mirrors the GL commands. Change-Id: Ifa7bc55751d50271eb01fd87e4efdc69f00c2c48 Reviewed-on: https://chromium-review.googlesource.com/239845 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 7c973eaa 2014-12-19T15:58:28 Move egl texture binding to the base texture class. It's still only valid to bind a 2D texture but the validation layer verifies that. BUG=angle:681 Change-Id: I744dc32f9bd0f69b1e1235b8feef7e796167d033 Reviewed-on: https://chromium-review.googlesource.com/236931 Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang d03e10e2 2014-12-18T17:46:58 Remove references to the Image class from gl::Texture and rx::TextureImpl. BUG=angle:681 Change-Id: I83659f47cbe9f22ff5ad0cf54471544bd14775aa Reviewed-on: https://chromium-review.googlesource.com/236690 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang a9be0dc6 2014-12-17T12:34:40 Refactor Texture to track image information for size and format queries. BUG=angle:681 Change-Id: Ifb3f52d6348e4479181e66f1c39578f49e9dcf76 Reviewed-on: https://chromium-review.googlesource.com/235613 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 24d5811b 2015-01-13T15:07:11 Add Gregoire to CONTRIBUTORS. Change-Id: I3e2a1f627de891c13964501f78314f84794cbded Reviewed-on: https://chromium-review.googlesource.com/240422 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Olli Etuaho 80a5a6c6 2015-01-12T15:35:27 Clean up BuiltInFunctionEmulator public interface This removes all language-specific bits from BuiltInFunctionEmulator parent class, and makes the public interface of BuiltInFunctionEmulator minimal. Writing comments around emulated function definitions is removed from OutputHLSL, they are not necessary as the emulated function definitions are just another part of the shader header. Change-Id: I9abf57d86f4e37b0674d7dfafe653298f205dd27 Reviewed-on: https://chromium-review.googlesource.com/240230 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Nicolas Capens <capn@chromium.org> Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Olli Etuaho e39706d0 2014-12-30T16:40:36 Implement simple ESSL3 matrix functions Add support for built-in functions outerProduct, determinant, transpose and the variations of matrixCompMult that were previously unsupported. BUG=angle:859 Change-Id: Ie2b9cf83cd80c5a886c6d4eb190c7ce25a32d0a4 Reviewed-on: https://chromium-review.googlesource.com/239873 Reviewed-by: Nicolas Capens <capn@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Olli Etuaho e17e3197 2015-01-02T12:47:59 Use BuiltInFunctionEmulatorHLSL for all emulated functions Implementation of missing built-in functions is a separate concern from outputting the intermediate tree itself as HLSL, so it makes sense to have all of the built-in emulation in a class that is separate from OutputHLSL. Being able to reuse the same logic for different emulated functions also makes the code more compact. Change-Id: Id503dc3a5c5e743ec65722add56d6ba216a03a7f Reviewed-on: https://chromium-review.googlesource.com/239872 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Nicolas Capens <capn@chromium.org> Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Olli Etuaho 2aafa18b 2015-01-08T19:04:48 Fix null check after addUnaryMath is called for a built-in function The intermTypedNode pointer null check should be done before the pointer is used, not after. In practice the pointer should never be null if IntermUnary::promote() is consistent with the built-in function table, but it's useful to have the null check as a fail-safe when developing. Change-Id: I24e0d7399ef9d628f474e99fbca08dbd67fdd8c3 Reviewed-on: https://chromium-review.googlesource.com/240411 Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 433c85d3 2015-01-13T22:52:17 Revert "Fix Linux build, and update BUILD.gn." Still more build failures, different ones this time. This reverts commit 9f8a57c6419f64965fd97fcc0df8e138677febaf. Change-Id: I7bea8e24403d92ca4ecb2ee0f24f9e065db5366d Reviewed-on: https://chromium-review.googlesource.com/240550 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 9f8a57c6 2015-01-13T11:13:56 Fix Linux build, and update BUILD.gn. Re-land with fixes for Android. We were getting multiply defined symbol errors on Linux for some stuff in the common sources. Switch to using a static lib target for the common sources, and also sync BUILD.gn with the latest gyp. BUG=angle:773 Change-Id: Id3edecc633b1c4be205558137c91baf87f256156 Reviewed-on: https://chromium-review.googlesource.com/240145 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 9e0478f6 2015-01-13T11:13:54 Move the block layout code to translator. This code is easily accessible from the translator, with the proper export calls. This facilitates adding a common static library, since this code calls some methods in translator. BUG=angle:773 Change-Id: I0c50098ec3f67c2df7749b3c2518be0a9fd939e2 Reviewed-on: https://chromium-review.googlesource.com/240093 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Gregoire Payen de La Garanderie 2c7ea058 2015-01-07T12:47:35 Implement support for ES 3.0 instanced arrays BUG=angle:863 Change-Id: I3918c478b33b26b2b179a7f8dd6e4210ecb0cf5c Reviewed-on: https://chromium-review.googlesource.com/239170 Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Olli Etuaho 32855688 2014-12-04T15:34:57 Add more options to translator sample Adds precision emulation and WebGL 2 and GLES3 specs as options. The example command line is also fixed. Change-Id: Ia45eca1815724a63b26662ee0cadecf9dfea51f9 Reviewed-on: https://chromium-review.googlesource.com/236793 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Olli Etuaho f6bdb312 2015-01-09T15:21:38 Refactor defining emulated functions in BuiltInFunctionEmulator This removes the fixed enumeration of emulated functions in favor of a dynamic map. This makes the code more compact and flexible. The main benefit is that maintaining the list emulated functions is a lot simpler now. Change-Id: Ic9951a496b9f021c76ad5b4c3daccd89af5ac093 Reviewed-on: https://chromium-review.googlesource.com/239871 Tested-by: Olli Etuaho <oetuaho@nvidia.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Nicolas Capens <capn@chromium.org>
Jamie Madill 0875f85d 2015-01-12T16:27:11 Don't use SSE functions on Android. These methods are unavailable on ARM platforms. Also fix a sequencing bug that caused us to incorrectly define the Android platform as Linux. BUG=angle:773 Change-Id: Id2b47acdd5b574c618ac86641a1a8238fbb4a2c3 Reviewed-on: https://chromium-review.googlesource.com/240095 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill ce4c0001 2015-01-12T14:46:11 Don't use std::is_fundamental on Android. This method is unavailable due to being c++11. BUG=angle:773 Change-Id: I995e03c26b5d3103fab963d8fb1eddc5050cf5b5 Reviewed-on: https://chromium-review.googlesource.com/240096 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 5864ac26 2015-01-12T14:43:07 Avoid using std::map::at. This c++11 method call is unavailable on Android. BUG=angle:773 Change-Id: I08064c3f18e387a2ed2496a3fb2912486546843f Reviewed-on: https://chromium-review.googlesource.com/240094 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Shannon Woods 6fdb4ffd 2015-01-10T22:23:44 Adds microbenchmark for resizing vs. creating new textures Change-Id: I21a20250492b6b19181386890afd5e1a911ee055 Reviewed-on: https://chromium-review.googlesource.com/240091 Reviewed-by: Nicolas Capens <capn@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Shannon Woods 1c394f40 2015-01-05T17:45:49 Adds a sample to demonstrate TRIANGLE_FAN vs TRIANGLES performance. Change-Id: Ic8f3d3e66904638cfdeab71aa6c19188f2a1b286 Reviewed-on: https://chromium-review.googlesource.com/238520 Reviewed-by: Nicolas Capens <capn@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
Jamie Madill b4463148 2014-12-19T14:56:54 Allow zero output variable ES3 shaders. We were assuming at least one variable, when some shaders could legitimately use zero. This was causing assertions in the dEQP shader.function tests. BUG=angle:855 Change-Id: I7e4aa52a1c6ba98d4a396f4c642816ff95115fd5 Reviewed-on: https://chromium-review.googlesource.com/240144 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Olli Etuaho 5c9cd3d1 2014-12-18T13:04:25 Implement hyperbolic function support for ESSL 3.00 Emulating arc hyperbolic functions is required on HLSL, where they do not exist natively. For this, BuiltInFunctionEmulator is split into GLSL and HLSL subclasses. The GLSL subclass handles the pre-existing built-in emulation implemented for working around OSX bugs, and the HLSL subclass handles emulating asinh, acosh and atanh on HLSL. BUG=angle:855 Change-Id: I0dfeffb862ac27ba7f9ecf5492ec31d9d952b273 Reviewed-on: https://chromium-review.googlesource.com/236861 Reviewed-by: Nicolas Capens <capn@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Jamie Madill d4b55a00 2015-01-09T14:21:49 Fix "start" vertex being applied for instanced buffers. In GLES, the start vertex only applies to non-instanced vertex attributes. BUG=angle:864 BUG=447140 Change-Id: Idd2afbfbd4c2e76e06b2704cc002fae26b353109 Reviewed-on: https://chromium-review.googlesource.com/239843 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill ab549dad 2015-01-09T14:50:29 Update WebGL expecations. Change-Id: Ic318a929f43a48f0e957add5fab4bc3362be47b0 Reviewed-on: https://chromium-review.googlesource.com/239954 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 04184fb0 2015-01-09T16:51:16 Revert "Fix Linux build, and update BUILD.gn." This reverts commit ed409f938b4fd8db89d8551d2bf7fc6a6b9ad9b7. Change-Id: I208a2c43c73e99ae95988c6d81ed64691bd8a99f Reviewed-on: https://chromium-review.googlesource.com/239900 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 8fed1f71 2015-01-09T11:09:33 Fix signed/unsigned missmatch on 32-bit builds. BUG=angle:681 Change-Id: I6144359acd1611a13b0a582d3a31019138bb941c Reviewed-on: https://chromium-review.googlesource.com/239844 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill ed409f93 2015-01-07T13:22:02 Fix Linux build, and update BUILD.gn. We were getting multiply defined symbol errors on Linux for some stuff in the common sources. Switch to using a static lib target for the common sources, and also sync BUILD.gn with the latest gyp. BUG=angle:773 Change-Id: I212284cfa90cd117a784a5f17057f47dd08900d1 Reviewed-on: https://chromium-review.googlesource.com/239193 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 0a4f1e27 2014-12-17T12:33:26 Merge the Texture set*Image methods and use objects for sizes and offsets. BUG=angle:681 Change-Id: If2e981c522ca5ba3eab4484594cb41aa23800ec4 Reviewed-on: https://chromium-review.googlesource.com/236261 Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang ea878cb9 2015-01-08T11:32:31 Use typed tests for the gles conformance tests. BUG=angle:497 Change-Id: I396411cc7c07047ef2fab70605de39287aaea879 Reviewed-on: https://chromium-review.googlesource.com/239515 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Cooper Partin cf5d48fa 2015-01-06T15:02:14 Fixed WinRT compilation to use non static C runtime because of Windows Store requirements. Change-Id: I310e4909aaa94c90eecd610e6c7cbbde3c19b777 Reviewed-on: https://chromium-review.googlesource.com/238532 Tested-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Cooper Partin 7318b7cb 2015-01-08T09:15:35 Fixed failed compilation for WinRT to use OutputDebugStringA for non wide strings. Change-Id: If012660d4b895399fe5e3226dea25a8c7f78c8ac Reviewed-on: https://chromium-review.googlesource.com/239504 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 40856813 2014-12-11T11:37:35 Add EGL extensions structs. BUG=angle:658 Change-Id: Iffb26caf16416313abc114ba779e6311f2c00848 Reviewed-on: https://chromium-review.googlesource.com/234760 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Olli Etuaho e8d2c072 2015-01-08T16:33:54 Implement float-integer conversions for ESSL 3.00 The implementation uses asint, asuint and asfloat in the HLSL output. BUG=angle:865 Change-Id: I6b48298e18c7b3b0bdeac522b375ebc4eab7cf4e Reviewed-on: https://chromium-review.googlesource.com/239520 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Austin Kinross d2cf3ad3 2015-01-07T14:00:30 Fix multisample framebuffer validation ASSERT Change-Id: I1b02ed7209f30549c17f46aeb3726ba1254df3ea Reviewed-on: https://chromium-review.googlesource.com/239270 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Austin Kinross cf4432c3 2015-01-07T14:05:47 Disable some extensions on D3D11 Feature Level 9_3 which aren't supported BUG=angle:858 Change-Id: Ib2b2b2b54ba25654ea80b5cb1c59b74ed0379b68 Reviewed-on: https://chromium-review.googlesource.com/239271 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Austin Kinross ab989891 2015-01-07T14:15:18 Disable shared texture support on D3D11 FL9_3 BUG=angle:858 Change-Id: I0fe3baf811d561584f7d24f6da665c6934e32b2a Reviewed-on: https://chromium-review.googlesource.com/239272 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang ce5d66e8 2015-01-07T14:06:12 Remove an unused mRenderer member from Program and initialize TF members. BUG=angle:731 Change-Id: Ie11c80ce1f3a8c3d08145dfb4a075ac0e022ae38 Reviewed-on: https://chromium-review.googlesource.com/239218 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 5879598b 2015-01-07T14:25:10 Add a test for rendering to cube map faces. BUG=angle:849 Change-Id: I9986e45256da6f4cdbd375dad95037464fbcf299 Reviewed-on: https://chromium-review.googlesource.com/239219 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 14aa40f0 2015-01-07T15:12:47 Print ERR() errors to the debug output on Windows. We can switch this on for Debug only. This will help developers catch bugs more easily, and will only show up for internal errors and major performance caveats. Currently it's far too easy to miss these messages - it requires manually modifying debug.h, looking at a text file and potentially also running Chromium with an special flag. BUG=angle:663 Change-Id: I75b3bd05fbc75d21607b9957134db8e8990c77b1 Reviewed-on: https://chromium-review.googlesource.com/239191 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 054369e3 2015-01-07T10:57:08 Allow the special format BGR5_A1 in CopyTexImage. We use this format as a backbuffer texture for the EGL surface in some configs. Thus, the app needs to be able to use it, since they don't know when they are secretly using BGRA instead of RGBA, similar to our existing logic which allows BGRA in CopyTexImage. BUG=angle:811 Change-Id: I3748d38b3b085aa4ccaae67ce88711b13eb2c98e Reviewed-on: https://chromium-review.googlesource.com/239192 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang f4134d20 2014-12-15T10:29:47 Use gl::Data as a parameter to Texture::isSamplerComplete. BUG=angle:861 Change-Id: I3fadf954e6d28dd82e361ceac4ba1967dbd7e8bf Reviewed-on: https://chromium-review.googlesource.com/235612 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang d8a2258c 2014-12-17T15:28:23 Remove all uses of "actual" formats. BUG=angle:861 Change-Id: I7cd2d1a56772fdf18bcf926456399322d13e7a4f Reviewed-on: https://chromium-review.googlesource.com/236305 Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 4f89e3dd 2015-01-07T13:40:14 Add missing test files to angle_end2end_tests_sources. Change-Id: I97217f4b4f42d9b9811185706587e2eb55270888 Reviewed-on: https://chromium-review.googlesource.com/239226 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 8cb85c44 2015-01-07T13:23:26 Fix missing "!" in cube map render target serial check. BUG=angle:849 Change-Id: I9e4cb31bdc82a1c556908571355387a9698c7528 Reviewed-on: https://chromium-review.googlesource.com/239230 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Cooper Partin 2676fac9 2015-01-06T15:03:47 Fixed invalid IsWindow( ) call for WinRT Windows Store applications. Change-Id: Ic5f2aca0100a842be193cec9e89872187742f2c6 Reviewed-on: https://chromium-review.googlesource.com/238821 Tested-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill cd1db9e6 2015-01-05T16:09:05 Avoid using std::unordered_map on OSX. This c++11 standard library class isn't available on Chromium/OSX. For now we can replace it with std::map. BUG=angle:773 Change-Id: I0b8ab0de5192a23408755d03df2b9f738f28d762 Reviewed-on: https://chromium-review.googlesource.com/238445 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Maks Naumov b78b42dd 2015-01-07T15:47:42 Remove "mDeviceLost" member from Renderer9 and Renderer11 These classes has base RendererD3D which already have "mDeviceLost". This can lead to errors because this variable is used in the methods from RendererD3D and his derived classes Change-Id: Ie0814bd1fd604a2f26693a705d127345ba8f77b5 Reviewed-on: https://chromium-review.googlesource.com/239171 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Gregoire Payen de La Garanderie e1728549 2015-01-07T11:31:54 Unwritten shader output variables should not crash. BUG=angle:862 Change-Id: I8e7fa9b0d00bb1b2a32a8d60d8ceda998cea8e8c Reviewed-on: https://chromium-review.googlesource.com/239160 Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross edd84e41 2015-01-05T15:50:47 Fix assertion in D3D11 Feature Level 9_3 instancing implementation BUG=angle:858 Change-Id: I6197d0f86536cb4613aa1aeb2d73a8173b4e4631 Reviewed-on: https://chromium-review.googlesource.com/238530 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 01675d80 2015-01-05T16:09:08 Use correct SSE header on OSX. This fixes the compile errors in loadImageSSE2.cpp. BUG=angle:773 This reverts commit a93192369eb448e932bcdd1e08ae791aacfbe0c4. Change-Id: I31bc419cd3930ae129903b935f49a3c9b27fc887 Reviewed-on: https://chromium-review.googlesource.com/238448 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 3b9bb72b 2015-01-05T16:17:02 Add a cross-platform rotl implementation. The _rotl method is unavailable on any platform but Windows, so we can implement the method ourselves. BUG=angle:773 Change-Id: I1342f4cf8a996daf11a36553c3bf7a01a2b182b3 Reviewed-on: https://chromium-review.googlesource.com/238500 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill dff56337 2015-01-05T16:17:00 Ensure all source files end in a newline. This fixes compile errors on OSX. BUG=angle:773 Change-Id: I11ce9fd470a54b08656a62afc50586e5d2f987d8 Reviewed-on: https://chromium-review.googlesource.com/238446 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 72468834 2015-01-05T15:03:18 Move getData from the D3D to the Impl. We will need this functionality for index validation, so we likely can assume an implemenation will need to support such a call. We might redesign this requirement, but for now we can't call though to BufferD3D on OSX. BUG=angle:773 Change-Id: I16187c78ff62471fdf7221a11b9956560e617a14 Reviewed-on: https://chromium-review.googlesource.com/238450 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill c34d53e4 2015-01-05T14:34:23 Fix standalone OSX build. We were missing one warning diable flag, for bison compatiblity, and were missing the appropriate flag to enable c++11 support. BUG=angle:773 Change-Id: I717ead6e1726920a6c28559503cb98e94dc29c16 Reviewed-on: https://chromium-review.googlesource.com/238449 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 5ffa95da 2015-01-05T13:15:20 Don't call std::is_fundamental on OSX. We can't use this method on OSX due to missing c++11 STL support. Instead use a helper function to replace it. BUG=angle:773 Change-Id: Iddcd2705792217e6356f51e4bb9dce248d7c3be2 Reviewed-on: https://chromium-review.googlesource.com/238447 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 5fd0b2d9 2015-01-05T13:38:44 Fix iterator comparison in Context.cpp. In deleteTransformFeedback, we were using a const iterator, in a non-const method. Fix the comparison by using auto, which delegates more work to the compiler's static type checking. BUG=angle:773 Change-Id: Ibc362fe49629331811a5302df1b68269dfa128a6 Reviewed-on: https://chromium-review.googlesource.com/238444 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 3b141a6c 2015-01-05T13:15:16 Add OSX cases to EGL headers. These changes we'll have to upstream at a later time. BUG=angle:773 Change-Id: I18feb84ae58cb16e3e555c9ab65b6925ba35048e Reviewed-on: https://chromium-review.googlesource.com/238443 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 3897cd17 2015-01-05T13:15:15 Don't use std::tuple in IndexRangeCache. std::tuple currently isn't available on Chromium/OSX. BUG=angle:773 Change-Id: I9f9efc88dcfe904e98a76df8b04086b88f724424 Reviewed-on: https://chromium-review.googlesource.com/238442 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 47e156c0 2015-01-05T13:15:13 Use #include <stdint.h> instead of <cstdint>. This fixes the compile on OSX. BUG=angle:773 Change-Id: I68111e178986bb78b73006a1559ba26120275599 Reviewed-on: https://chromium-review.googlesource.com/238441 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 2bd2a42d 2015-01-05T13:26:05 Don't assume c++11 std::map::erase in invalidateRange. We were using the c++11 iterator return value from std::map::erase. Instead use the post-increment operator to keep a valid iterator after the call to erase, even on older stl. BUG=angle:773 Change-Id: Ieaa21a2b5a3fcd5ca229a31d40bdf9b8f3283a3c Reviewed-on: https://chromium-review.googlesource.com/238440 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 22bcf7cf 2014-12-30T16:02:46 Implement KHR_create_context. We need the functionality of this extension to support dEQP. Likely we only needed the minor version enum to not generate an error, but we can take the time to implement the few cases for the other enums as well. We don't support any debug context functionality currently, but we may want to support it in the future. BUG=angle:501 Change-Id: Ib74cd2e4581e054f8153bb358824d9296b9f8a1c Reviewed-on: https://chromium-review.googlesource.com/238083 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 2445143a 2014-12-30T14:53:16 Advertise EGL_EXT_platform_base. We were not advertising the extension, though we require it for ANGLE_platform_angle. This was blocking dEQP functionality. Change-Id: I8781867e772b4b1af62f1387faa863f8ce21de76 Reviewed-on: https://chromium-review.googlesource.com/238082 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill e65d145b 2014-12-30T15:35:39 Accept no attributes in GetPlatformDisplayEXT. It is quite valid for the app to pass in NULL for the attribs list. In this case we currently crash. We could trigger this error using dEQP. Change-Id: I64aba1077f9095bd099c6b60f789ec076cb3d385 Reviewed-on: https://chromium-review.googlesource.com/238081 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Austin Kinross 049743a9 2014-12-23T13:05:11 Restrict depth buffer formats on D3D11 Feature Level 9_3 *_TYPELESS formats weren't supported in D3D10Level9 until Windows 8. Some Win8 D3D9 drivers don't support them either. To workaround this, we avoid _TYPELESS formats on D3D11 FL9_3. BUG=angle:856 BUG=435726 Change-Id: I280dc7f87e3a2c737c14284ebb744188e7f10616 Reviewed-on: https://chromium-review.googlesource.com/237292 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Austin Kinross <aukinros@microsoft.com> Tested-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross 4fd18b1b 2014-12-22T12:32:05 Emulate large and negative viewports on D3D11 Feature Level 9_3 Like D3D9, D3D11 Feature Level 9_3 doesn't support large or negative viewports. We have to emulate these in the vertex shader. BUG=angle:858 Change-Id: I2bd53e3921dc3590cc7193164d73596deafca9ea Reviewed-on: https://chromium-review.googlesource.com/236040 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Austin Kinross 324bcc46 2014-12-22T13:43:02 Fix instancing on D3D11 9_3, by ensuring slot zero contains non-instanced data D3D11 Feature Level 9_3 supports instancing, but slot 0 in the input layout must not be instanced. D3D9 has a similar restriction, where stream 0 must not be instanced. This restriction can be worked around by remapping any non-instanced slot to slot 0. This works because HLSL uses shader semantics to match the vertex inputs to the elements in the input layout, rather than the slots. BUG=angle:858 Change-Id: I67b2be9095afc206a4b9f107ed61356820551afe Reviewed-on: https://chromium-review.googlesource.com/237270 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Nico Weber ce8bb2fa 2014-12-30T13:32:25 Improve standards conformance of ANGLE's testing code. ANGLE's testing code recently got enabled in Chromium's builds. While it builds fine with cl.exe, it isn't quite standards-conformant and doesn't build with clang. Fix this. There were three issues: 1. ANGLE_TYPED_TEST_CASE() is a variadic macro that tries to use __VA_ARGS__ as argument to a variadic template and then pass that template to another macro. However, [cpp.replace] describes that ANGLE_TYPED_TEST_CASE(Test, int, float) should be expanded to TYPED_TEST_CASE(Test, ::testing::Types<int, float>) which should be interpreted as a "call" of TYPED_TEST_CASE with the 3 macro arguments `Test`, `::testing::Types<int`, and `float>`. As a fix, use a typedef for the variadic template and refer to it through the typedef in the macro call. 2. `#version` was used on its own line in a substitution of the SHADER_SOURCE macro. [cpp]p1 says that every line starting with a `#` is a preprocessing directive, and [cpp.replace]p11 says "If there are sequences of preprocessing tokens within the list of arguments that would otherwise act as preprocessing directives, the behavior is undefined" (with a footnote that this includes non-directives -- # followed by unknown text). As a fix, merge the `#version` line with the previous line. Now the line doesn't start with `#` and things are fine. 3. Unqualified lookup usually doesn't look into dependent bases. If this is desired, one usually has to make the call qualified, a good explanation for this is at http://eli.thegreenplace.net/2012/02/06/dependent-name-lookup-for-c-templates cl.exe doesn't implement this rule, and clang tries to emulate cl.exe's behavior to a certain extend when in Microsoft mode. However, that seems to not work for member templates with explicit types (filed http://llvm.org/PR22066 for this, but since it's not needed to parse Microsoft headers and not standards-conformant, I'm not sure if we'll fix that). As a fix, don't provide an explicit type, the inferred type is the same. This is also consistent with all the other tests in this file. (We might clean up -Wmicrosoft warnings in the future; if so I'll add the explicit this->s that are missing in this file when we do.) BUG=chromium:445406 Change-Id: I77a2f3ab9601a1f0f39b56ed3d05217f123155b8 Reviewed-on: https://chromium-review.googlesource.com/238090 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 5b072780 2014-12-11T13:52:38 Fix DisplayD3D not initializing mRenderer. BUG=angle:658 Change-Id: If865910d52154f574f4d488d4c45fcac9a87b050 Reviewed-on: https://chromium-review.googlesource.com/234761 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 932b465b 2014-12-17T15:25:31 Add format size information for DXGI_FORMATs. Change-Id: I14d0b8ebd631e5c9c3c3b63c047c9ef7c11bf310 Reviewed-on: https://chromium-review.googlesource.com/236304 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang eca8561e 2014-12-17T15:24:38 Add format size information for D3DFORMATs. Change-Id: Id8d884df31726546e871d75a719bc419dd767d6b Reviewed-on: https://chromium-review.googlesource.com/236303 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 21c1e456 2014-12-29T11:33:41 Fix a translator crash with index expressions. This crash happened with certain bad shaders which used temporary values as array (or other) index expresisons. Fixes the crash covered in the WebGL test "conformance/bugs/undefined-index-should-not-crash" BUG=angle:857 Change-Id: I13e2ba6d5f1ab0846ac902021bc0b57cbb37d759 Reviewed-on: https://chromium-review.googlesource.com/237460 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 97399235 2014-12-23T12:31:15 Enable conditional InfoLog for HLSL link failures. We don't always have an InfoLog available for dynamic shaders, but we can still capture data in some cases for default shaders. Change-Id: Iccd022f24d5c2b8922e9254580705675cd4e405f Reviewed-on: https://chromium-review.googlesource.com/237328 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Gregoire Payen de La Garanderie be954a23 2014-12-23T00:05:28 Implement support for the binary operator '%' in the translator. BUG=angle:854 Change-Id: If116de132dc83d93255749b54c1919a75abcb65c Reviewed-on: https://chromium-review.googlesource.com/236330 Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill be12fa22 2014-12-23T13:09:42 Update WebGL expectations. Change-Id: I69795b97ef032838cd43e889119405aaee66fa4f Reviewed-on: https://chromium-review.googlesource.com/237329 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Jamie Madill 48825bea 2014-12-23T12:12:01 Disable FL9_3 tests because of Windows 7 failures. These tests were failing on SwapChain11 with errors relating to the Depth Stencil backbuffer. BUG=angle:856 BUG=435726 Change-Id: Idd371a380e9b302d7d5e40437e9d76589872b750 Reviewed-on: https://chromium-review.googlesource.com/237450 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brandon Jones <bajones@chromium.org>
Jamie Madill 185de884 2014-12-22T15:17:52 Update ANGLE's translator to Bison 3. BUG=angle:462 Change-Id: I2c1c18027dee1c3b4efb87374caaadbf58367841 Reviewed-on: https://chromium-review.googlesource.com/236930 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Austin Kinross d5663b1c 2014-12-22T12:24:06 Support remaining vertex attrib formats on D3D11 9_3 Change-Id: Id0d3ad6ec7764ed84ec504ad92eca81dff29aac8 Reviewed-on: https://chromium-review.googlesource.com/236043 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Austin Kinross <aukinros@microsoft.com>
Austin Kinross 366db7cd 2014-12-16T13:15:14 Prevent usage of GSSetConstantBuffers on D3D11 Feature Level 9_3 Calling GSSetConstantBuffers with real data causes a device removed error on 9_3. We therefore ensure that ANGLE doesn't call it on 9_3. Change-Id: I151a74ee7ea81fc4b795d8bf10d5e5c42bfe7c86 Reviewed-on: https://chromium-review.googlesource.com/236042 Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>