Граф коммитов

4196 Коммитов

Автор SHA1 Сообщение Дата
Corentin Wallez fc69293423 Fix signed to unsigned integer conversion warning in EGLWindow.h
Change-Id: I7b4249e04c8fb76b60b4c837266b144fbd64cbf6
Reviewed-on: https://chromium-review.googlesource.com/269128
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
2015-05-04 17:25:16 +00:00
Corentin Wallez 92d7706da9 Fix tautological compare and && in || warnings in FunctionsGL.cpp
Change-Id: Icfbd79e3cbb116da9981daeb42d3657146bf673e
Reviewed-on: https://chromium-review.googlesource.com/268968
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
2015-05-04 17:25:15 +00:00
Corentin Wallez 9946a61e3c Fix text trailing after preprocessor macro warning in util/Event.h
Change-Id: Ie977e6fce0e5e0efeb16f0387bf653bbd2d1cd93
Reviewed-on: https://chromium-review.googlesource.com/269127
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
2015-05-04 17:23:58 +00:00
Corentin Wallez 8eb2d14cda Fix 'not all switch case are handled' warning in OSWindow.cpp
Change-Id: Ib4d1e4b04c73e5eb5e0e4f6c56212e99723d2ce0
Reviewed-on: https://chromium-review.googlesource.com/269126
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
2015-05-04 17:23:34 +00:00
Corentin Wallez 6ba699a2b0 Add missing include in OSWindow.h
Change-Id: Ie1fd40c308ed9d0d90756e31dfe153f44510defa
Reviewed-on: https://chromium-review.googlesource.com/269125
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
2015-05-04 17:23:00 +00:00
Jamie Madill 55def58323 translator: Fix variable collection for gl_DepthRange.
*re-land with Linux fixes, and fix for locations*

This built-in uniform wasn't being collected in VariableInfo.cpp.
Also remove the existing workaround for D3D gl_DepthRange
collection.

BUG=angleproject:991
BUG=478570

Change-Id: Iba84651bfc58f82fd4ce039421874f561f83c348
Reviewed-on: https://chromium-review.googlesource.com/268840
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2015-05-04 17:21:28 +00:00
Corentin Wallez 931c78cb7f Fix typo intialize -> initialize
Change-Id: Ia39fffc6f2782b918b37ab7ae25ee16ecc98e93a
Reviewed-on: https://chromium-review.googlesource.com/269120
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
2015-05-04 17:20:40 +00:00
Corentin Wallez 96de96b7cd Initialize Win32Timer::mRunning as a bool
Change-Id: I1770684217239bcbdf2bb07f4867e1427577a01f
Reviewed-on: https://chromium-review.googlesource.com/269121
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
2015-05-04 17:19:21 +00:00
Jamie Madill e737b06c9e Revert "Query attachment render targets from Impl class."
D3D9 bug is causing failures in the WebGL depth texture test.

BUG=angleproject:963

This reverts commit 804e8436f9.

Change-Id: I660f05033360e97258794138cb50b604f5ac16b6
Reviewed-on: https://chromium-review.googlesource.com/269005
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-05-04 16:54:22 +00:00
Jamie Madill c1c1cdc405 Don't reallocate default FBO on makeCurrent.
We can use the flat FBO attachment types to update our data
instead of reallocating it. This also lets us delete the
DefaultFramebuffer class.

BUG=angleproject:963,angleproject:840

Change-Id: Ib8f20d8212d073fb5e248756321cb2e6b4e086dc
Reviewed-on: https://chromium-review.googlesource.com/263492
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2015-05-04 14:33:44 +00:00
Jamie Madill 804e8436f9 Query attachment render targets from Impl class.
This allows us to eradicate the GetAttachmentRenderTarget methods.
This improves potential performance, at the cost of exposing a
Renderer-specific function at the API object level.

BUG=angleproject:963

Change-Id: Ifc227b5f42e87bd4deb451d685618cf61fea39f1
Reviewed-on: https://chromium-review.googlesource.com/263491
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-05-04 14:33:37 +00:00
Jamie Madill 26e1a466df Revert "translator: Fix variable collection for gl_DepthRange."
Build errors on Linux:

error: comparison of integers of different signs: 'const int' and 'const unsigned int'

BUG=angleproject:991
BUG=478570

This reverts commit f1ae954b66.

Change-Id: I217aba1b32dc0e70d6153337a1f0ccef0483a0e1
Reviewed-on: https://chromium-review.googlesource.com/268792
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-05-01 19:19:34 +00:00
Jamie Madill f1ae954b66 translator: Fix variable collection for gl_DepthRange.
This built-in uniform wasn't being collected in VariableInfo.cpp.
Also remove the existing workaround for D3D gl_DepthRange
collection.

BUG=angleproject:991
BUG=478570

Change-Id: Ie254132e37c307323ba9e6e1705d138eea67b520
Reviewed-on: https://chromium-review.googlesource.com/268524
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
2015-05-01 18:43:52 +00:00
Geoff Lang 4c8cae6073 Revert "Don't mark all macros with double underscores as reserved."
Fails a WebGL CTS test.

BUG=angleproject:989

This reverts commit 942e36254a.

Change-Id: I9f833366d5b69535ef74e358ac21efaccb1f1a3d
Reviewed-on: https://chromium-review.googlesource.com/268751
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-05-01 16:46:27 +00:00
Geoff Lang 942e36254a Don't mark all macros with double underscores as reserved.
Only __FILE__, __LINE__, __VERSION__ and GL_ES are reserved but it is
still not recommended to use a name with double underscores because it may
be used by the "underlying software layers".

Updated the tests to reflect that it is OK to define macros with double
underscores but it is not valid to make assumptions about their values.

Fixes:
dEQP-GLES2.functional.shaders.preprocessor.basic.identifier_with_double_underscore_vertex
dEQP-GLES2.functional.shaders.preprocessor.basic.identifier_with_double_underscore_fragment

BUG=angleproject:898

Change-Id: I77054d04c9935eedcdbb7304dc0c3b60b53994f9
Reviewed-on: https://chromium-review.googlesource.com/268434
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-05-01 14:31:38 +00:00
Jamie Madill 2dc8bf8b2b translator: Fix C++11-deprecated register usage.
Define 'register' as an empty string if we're in a modern version
of C++.

BUG=255186
BUG=angleproject:463

Change-Id: Ied044fb87a9b05c91cb419c54295c39f0f0ab776
Reviewed-on: https://chromium-review.googlesource.com/268512
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
2015-05-01 14:25:21 +00:00
Jamie Madill b96687df34 translator: Regenerate with Bison 3.0.4.
BUG=angleproject:463

Change-Id: If89a29de8fb006e8e3b0483ac5df21c8833ce974
Reviewed-on: https://chromium-review.googlesource.com/268511
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2015-05-01 14:25:13 +00:00
Geoff Lang 9624e05860 Revert "Track if a non-preprocessor token has been seen and validate #extension with it."
Breaks some WebGL applications, holding off until a decision is made.

BUG=483252
BUG=angleproject:989

This reverts commit fa55bf1ed6.

Change-Id: Iebef439095a95741c8502716a4ce90c4785561eb
Reviewed-on: https://chromium-review.googlesource.com/268742
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-05-01 14:05:05 +00:00
Jamie Madill 6afcd6ddcb Refactor CreateDevice error checking.
Also return a different code for a NULL pointer, vs a failed call.

BUG=477701

Change-Id: Ib0584371d51b99760e80ce5481a1e72e1ec673e0
Reviewed-on: https://chromium-review.googlesource.com/267753
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
2015-05-01 12:11:20 +00:00
Jamie Madill 4d16f6d809 Replace NULL with nullptr in Framebuffer9/11.
BUG=angleproject:963

Change-Id: I1ba418e7540b9c3ac6611aa3e4f0c1ca27557a1a
Reviewed-on: https://chromium-review.googlesource.com/267734
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-04-30 15:05:22 +00:00
Jamie Madill 7d75e2b7fe Simplify message to FBO Impls of attachment changes.
We don't need to pass attachment pointers, since they are now
value types, and no longer change their address.

BUG=angleproject:963

Change-Id: I02cdce0886512cc847930f61c5bfb62fc1d7cd1a
Reviewed-on: https://chromium-review.googlesource.com/265938
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2015-04-30 15:05:15 +00:00
Jamie Madill 2e295e23e8 hlsl: Fix struct specifiers in uniforms.
We would miss the definition for structs specfied in uniforms. Fix
this by always checking to add the constructor. Fixes the WebGL
test 'glsl/misc/struct-specifiers-in-uniforms'.

BUG=angleproject:818
BUG=433412

Change-Id: I411e4a4477f7ef34fceb9faa77489f77d8efdce8
Reviewed-on: https://chromium-review.googlesource.com/267797
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-04-29 20:14:17 +00:00
Corentin Wallez a1884f2b65 Fixes for the tagging of discontinuous loops
The first fix was for all loops being considered discontinuous in
OutputHLSL because of a typo that produced a tautology.

The error was not detected by the unit tests because as an optimization we
do not generate Lod0 calls when they are not needed for the callee
function (which was correctly detected by the analysis in this case).
Fixed the unit tests by adding a call to a builtin gradient operation.

The second fix was for discard not being taken into account in the
analyses of the AST, which caused a WebGL test regression after the first
fix for conformance/glsl/bugs/conditional-discard-in-loop

BUG=angleproject:982

Change-Id: I1315eac1ad36f726be52d7fda5facf3104341b1f
Reviewed-on: https://chromium-review.googlesource.com/267814
Tested-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2015-04-29 20:06:37 +00:00
Geoff Lang ec6bae71fb Default buffer usage to GL_STATIC_DRAW.
Calling glGetBufferParameteriv with GL_BUFFER_USAGE on a buffer that has never
had glBufferData called on it should return GL_STATIC_DRAW.
[ES 2.0.25 spec, table 6.3]

Fixes:
dEQP-GLES2.functional.state_query.buffer_object.buffer_usage_getbufferparameteri

Change-Id: I1bf1614b606d20338bb507861164c6ab0b64122f
Reviewed-on: https://chromium-review.googlesource.com/267816
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-29 20:05:21 +00:00
Régis Fénéon 3799c3014a surfaceD3D::swapRect(): always call checkForOutOfDateSwapChain() even if
width or height is 0.

BUG=angleproject:990

Change-Id: I9fbdd3d341d3f6fa42dfb39950e6b2d3204c4c9b
Reviewed-on: https://chromium-review.googlesource.com/267415
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Régis Fénéon <regis.feneon@gmail.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2015-04-29 20:02:36 +00:00
Geoff Lang fa55bf1ed6 Track if a non-preprocessor token has been seen and validate #extension with it.
Fixes:
dEQP-GLES2.functional.shaders.preprocessor.extensions.after_non_preprocessing_tokens_vertex
dEQP-GLES2.functional.shaders.preprocessor.extensions.after_non_preprocessing_tokens_fragment

BUG=angleproject:989

Change-Id: Ie0aba80b2fde0160e83fc95f545b62954af2e5fc
Reviewed-on: https://chromium-review.googlesource.com/267398
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-29 20:00:28 +00:00
Jamie Madill c185cb8d70 Cache gl::Data in Context to speed up validation.
This avoids creating a new Data object and copying it around.
Gives a noticable performance increase in the benchmark which
tests validation-only draw calls. Gives about a 8% increase
in the benchmark.

BUG=angleproject:959

Change-Id: Id3a7459753b1b466a06da89f3f8b03b2c2c7a5c1
Reviewed-on: https://chromium-review.googlesource.com/267752
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
2015-04-29 19:59:59 +00:00
Jamie Madill aebf9dde6a Cache maximum enabled vertex attribute.
This can give us much faster draw call validation, by saving us from
checking buffer sizes for non-enabled attribs. Also for checking if
vertex buffers are mapped. Gives >100% increase in the benchmark.

BUG=angleproject:959

Change-Id: I211c310385bdee46ed06f68ecd9c98385e1f8db9
Reviewed-on: https://chromium-review.googlesource.com/267751
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
2015-04-29 19:59:40 +00:00
Jamie Madill 1377689c30 Cache validate samplers result.
This gives ~23% increase in the validation-only draw call perf test.

BUG=angleproject:959

Change-Id: I384a5c4fbb1c2cd47483bd7cf4bc1d39447a99bc
Reviewed-on: https://chromium-review.googlesource.com/267750
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
2015-04-29 19:59:31 +00:00
Geoff Lang 667ef09959 Update copyright dates in generated DLLs.
BUG=angleproject:546

Change-Id: If44d808e30e4c5b15971fe44e8c59a3c9f19095f
Reviewed-on: https://chromium-review.googlesource.com/267837
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-29 18:51:34 +00:00
Geoff Lang 26be18da8c Validate that all preprocessor function arguments are unique.
Fixes:
dEQP-GLES2.functional.shaders.preprocessor.invalid_function_definitions.unique_param_name_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_function_definitions.unique_param_name_fragment

BUG=angleproject:989

Change-Id: I32198f1c9036c371b46e7ad2986a44e42fd38e20
Reviewed-on: https://chromium-review.googlesource.com/267396
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-29 17:06:31 +00:00
Geoff Lang f74fef50cf Disable some failing tests on Intel and AMD bots.
Change-Id: I745fab7c6c169c1ffc930f865b6b109c4c623e2b
Reviewed-on: https://chromium-review.googlesource.com/267835
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-29 16:59:17 +00:00
Geoff Lang a809165f94 Enable more tests for the OpenGL backend.
Change-Id: I3fc9948498bd7c2b7c8e75f010196982de240c1b
Reviewed-on: https://chromium-review.googlesource.com/267461
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
2015-04-29 14:11:49 +00:00
Geoff Lang 95a423d06a Unexpected tokens after conditionals should be an error instead of a warning.
Fixes:
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_if_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_if_fragment
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_else_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_else_fragment
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_endif_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_endif_fragment
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_ifdef_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_ifdef_fragment
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_ifndef_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_conditionals.tokens_after_ifndef_fragment

BUG=angleproject:989

Change-Id: I6511f7082c98206fb623775d81329b6bc7673c1a
Reviewed-on: https://chromium-review.googlesource.com/267638
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-29 13:59:29 +00:00
Geoff Lang d3c29f57aa Add pragma errors for malformed pragmas.
Instead of always warning on invalid pragmas, only warn when the pragma
type is not recognized and error when the syntax is invalid.

Fixes:
dEQP-GLES2.functional.shaders.preprocessor.pragmas.invalid_pragma_invalid_debug_vertex
dEQP-GLES2.functional.shaders.preprocessor.pragmas.invalid_pragma_invalid_debug_fragment
dEQP-GLES2.functional.shaders.preprocessor.pragmas.invalid_pragma_invalid_token_vertex
dEQP-GLES2.functional.shaders.preprocessor.pragmas.invalid_pragma_invalid_token_fragment

BUG=angleproject:989

Change-Id: Ibd584dc08a2436e163dfc52eeffdf2dac8a22cb8
Reviewed-on: https://chromium-review.googlesource.com/267639
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-29 13:57:45 +00:00
Geoff Lang b819d25dc6 Validate that there are no tokens following #undef on the same line.
Fixes:
dEQP-GLES2.functional.shaders.preprocessor.definitions.undefine_object_invalid_syntax_vertex
dEQP-GLES2.functional.shaders.preprocessor.definitions.undefine_object_invalid_syntax_fragment
dEQP-GLES2.functional.shaders.preprocessor.invalid_definitions.undef_non_identifier_2_vertex
dEQP-GLES2.functional.shaders.preprocessor.invalid_definitions.undef_non_identifier_2_fragment

BUG=angleproject:989

Change-Id: I279a38aaae8010017ef6e3f1aa139ae03f374680
Reviewed-on: https://chromium-review.googlesource.com/267397
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-28 20:47:19 +00:00
Jamie Madill 3da79b7bca Reject shaders using attribute aliasing.
The current code rejects any shaders that use more than the caps
allow, but a bug would crash us before the check. We don't support
aliasing in shaders that use a lot of uniforms because this
causes problems with the D3D back-end, currently. This changes the
crash in the dEQP aliasing tests to a link error.

See dEQP-GLES2.functional.attribute_location.bind_aliasing.*

BUG=angleproject:901

Change-Id: I6906d3345abe9f89cfa0aa6cec4be26b5b2851d0
Reviewed-on: https://chromium-review.googlesource.com/266928
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
2015-04-28 19:23:36 +00:00
Geoff Lang 30cb86d87c Create a child window in SurfaceD3D when needed.
BUG=angleproject:961
BUG=angleproject:860

Change-Id: I137d27bafc4d690b159ffef8cc69d6f1c5a05131
Reviewed-on: https://chromium-review.googlesource.com/267681
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
2015-04-28 19:03:10 +00:00
Geoff Lang 463cdeac4f Temporarily disable the ClearTest.ClearIssue test on Intel OpenGL.
Change-Id: Ia54b2258422c23fc53f2af5ebe7594375412452c
Reviewed-on: https://chromium-review.googlesource.com/267675
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-28 17:51:02 +00:00
Qingqing Deng ad0d0799db Expand ShShaderOutput for different GLSL versions
BUG=angleproject:968

Change-Id: I2d4c0a8e9a91a940922da4501c22124da0c0399c
Reviewed-on: https://chromium-review.googlesource.com/264840
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-04-28 17:31:45 +00:00
Jamie Madill e3ef715d01 Revert "Revert "Remove non-const FBO attachment queries.""
Fixed build errors in prior patch.

This reverts commit 34771622d7.

Change-Id: I909b455f2c632a3df7d97149972e167c2adb058f
Reviewed-on: https://chromium-review.googlesource.com/267599
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-04-28 16:55:40 +00:00
Jamie Madill 3fe36ebd28 Revert "Create a child window in SurfaceD3D when needed."
Causing errors with D3D9, see build:

http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20%28NVIDIA%29/builds/15149

This reverts commit b7f1a8b0ab.

Change-Id: I6f1c3fd119f76a298e5b3fb676ddcb208cd1234b
Reviewed-on: https://chromium-review.googlesource.com/267673
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-04-28 16:45:55 +00:00
Jamie Madill 3a12f776e4 Revert "Fix compile failure on build systems with UNICODE defined."
Earlier patch causing errors on D3D9:

http://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20%28NVIDIA%29/builds/15149

This reverts commit acb0a1a6d7.

Change-Id: I1956c57224ecf1c0caee2c3f624d1a871d171686
Reviewed-on: https://chromium-review.googlesource.com/267674
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-04-28 16:45:17 +00:00
Geoff Lang acb0a1a6d7 Fix compile failure on build systems with UNICODE defined.
BUG=angleproject:961

Change-Id: I32053309a8384a27d1c2a991ddfaa195195f88c8
Reviewed-on: https://chromium-review.googlesource.com/267637
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-28 14:40:15 +00:00
Geoff Lang d3b84ab51d Don't subclass windows in SurfaceD3D.
The subclassing was not used by chromium and caused problems for users
that wanted to use a window owned by another thread as an EGL surface.

BUG=angleproject:961

Change-Id: I1d91323c758374de317179874320961385b10ae0
Reviewed-on: https://chromium-review.googlesource.com/266658
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: John Bauman <jbauman@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-28 14:28:15 +00:00
Geoff Lang b7f1a8b0ab Create a child window in SurfaceD3D when needed.
BUG=angleproject:961

Change-Id: I61931961f8cb86b47012edd2bc08d0e1e7a5d0f7
Reviewed-on: https://chromium-review.googlesource.com/266515
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: John Bauman <jbauman@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-28 14:27:45 +00:00
Geoff Lang 5b028d180a Add a special case for binding to GL_FRAMEBUFFER for state tracking.
Binding to GL_FRAMEBUFFER is supposed to set the read and draw framebuffer
bindings instead of being a separate binding point.

BUG=angleproject:885

Change-Id: Ic6d9056a2f8bfa472587c5ed030c15fcc93574c7
Reviewed-on: https://chromium-review.googlesource.com/267460
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-28 14:22:23 +00:00
Geoff Lang 0d31828f17 Fixed shadowed error variable.
BUG=angleproject:886

Change-Id: I4224ba26fef6783d61a56c294da2bdb6596da7bc
Reviewed-on: https://chromium-review.googlesource.com/267552
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
2015-04-27 19:42:17 +00:00
Jamie Madill 2d06b738a1 Store value types for FBO attachments.
*re-land with fix for Mac*

This prevents us from re-allocating FBO attachments every set.
This change requires quite a bit of refactoring.

BUG=angleproject:963

Change-Id: Ia1f83e3c427d446ddbe16c6703db136942149e91
Reviewed-on: https://chromium-review.googlesource.com/266691
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-04-27 19:38:06 +00:00
Jamie Madill b36e9b8979 Revert "D3D11: Filter HRESULT error code properly."
Fix is incorrect: See http://crbug.com/477701

This reverts commit 02bce6e559.

Change-Id: I718d1a7e5d9fef662cee9ba90407a835466c74fc
Reviewed-on: https://chromium-review.googlesource.com/267560
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
2015-04-27 19:11:15 +00:00