|
ae37a5c8
|
2015-03-20T16:50:15
|
|
Support equality between structs containing arrays in HLSL output
This requires sorting all equality functions together so that struct
equality functions can have dependencies on array equality functions, but
support for array equality functions that have dependencies on struct
equality functions is also maintained.
There's no automated test coverage for this specifically. The change was
tested by manually inspecting shader output and ensuring that there were
no test regressions in tests listed below.
TEST=dEQP-GLES3.functional.shaders.*
BUG=angleproject:954
Change-Id: If7199ab2446804afae50f103bb625101172882b9
Reviewed-on: https://chromium-review.googlesource.com/261550
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
7fb4955d
|
2015-03-18T17:27:44
|
|
Support array equality operator in HLSL output
This requires adding functions to the shader source that can do the
comparison for a specific array size.
There's no automated test coverage specifically for this functionality,
since all deqp tests that cover this also require array constructors to
be supported. The change has been tested by manually inspecting shader
output. No regressions were seen in automated tests listed below.
TEST=dEQP-GLES3.functional.shaders.*, angle_unittests
BUG=angleproject:941
Change-Id: Ie2ca7c016a3f0bcb3392a96d6d20d6f803d28bf0
Reviewed-on: https://chromium-review.googlesource.com/261530
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
8fcd4e0c
|
2015-03-24T16:19:33
|
|
Fix redundant index validation on the D3D9 backend
Make sure that the computed index range is added to the cache of the main
buffer object, instead of just to the static buffer object created for the
buffer object. This applies to the code path used for D3D9. This way the
front-end code in ValidateDrawElements gets the index range from the cache
instead of having to iterate over all the indices used on every draw call.
BUG=chromium:461274
TEST=WebGL conformance tests, angle_end2end_tests
Change-Id: I07cf493d2771dab8e76d69bafda7ac49e5a04808
Reviewed-on: https://chromium-review.googlesource.com/262180
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
19a43dbe
|
2015-03-20T16:14:04
|
|
Add a perf test for draw call overhead.
These perf tests use the D3D NULL renderers to measure pure CPU
time, with no GPU limitations. Also fix our D3D9 SwapChain code
to skip creating a SwapChain for NULLREF D3D9 devices, and the
vertex decl code to reinitialize the formats when finding a
mismatch with the previous value.
BUG=angleproject:955
Change-Id: I449e63177b48afd1559c36244de0bc252814e813
Reviewed-on: https://chromium-review.googlesource.com/262208
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b9c0d3b6
|
2015-03-20T12:46:33
|
|
Move buffer::markTransformFeedbackUsage to BufferD3D only.
BUG=angleproject:681
Change-Id: Ia9f4ac9cee2c3e4fa140eba12bdb9ab0cc423f6c
Reviewed-on: https://chromium-review.googlesource.com/261709
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1c0ad625
|
2015-03-24T10:27:45
|
|
Emulate TextureStorage when it is not available.
BUG=angleproject:884
Change-Id: Ie6e809477253502d88f599172eaed17638e58dd3
Reviewed-on: https://chromium-review.googlesource.com/262112
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
9d3ae5fe
|
2015-03-18T17:20:33
|
|
Use the Surface type for validation and fix incorrect window validation.
The window passed to surface creation should not be used by any surface
owned by any display, not just the current one. Store a global window
surface list for validation.
BUG=angleproject:795
Change-Id: I2314979f2f27848b21fcb00676194d7671d1db68
Reviewed-on: https://chromium-review.googlesource.com/260942
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
4b91262a
|
2015-03-18T17:17:59
|
|
Pass the Surface type, config and attributes to the constructor.
BUG=angleproject:795
Change-Id: I15e7f2f51ecc243edf83d9a9544eba137d8bb599
Reviewed-on: https://chromium-review.googlesource.com/260941
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
3cd438d1
|
2015-03-17T11:25:27
|
|
Add dEQP tests.
We integrate dEQP as a console application and a shared library which
runs all of the test logic. Using a shared library lets us compile
dEQP with all the specific compiler options it needs, without
conflicting with the compile settings in ANGLE proper.
Currently we only support Windows D3D11, ES 2 and 3. We can add
other targets in the future.
We also have a few bugs preventing us from running the test suite in
full. We run into infinite loop problems in some shader tests, and
have crashes or UNIMPLEMENTED in others.
BUG=angleproject:901
Change-Id: Ib6fe66041a6fe547eb2cba497c52de7fd080d667
Reviewed-on: https://chromium-review.googlesource.com/238084
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f9c7a67b
|
2015-03-23T14:41:42
|
|
Fix copyTexImage2D failures on D3D11 9_3
Change-Id: I16453248c2cb0aaf53a748eb8d6e32c63fa73394
Reviewed-on: https://chromium-review.googlesource.com/261983
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
7e8320d8
|
2015-03-23T14:22:15
|
|
Make angle perftests build with clang.
::testing::WithParamInterface ends up calling deleting an object
with the type of the template parameter, and the pointer it deletes
could arguably point to a subclass of the param object -- so clang
warns that there's a delete on a class with a virtual method but
without a virtual dtor. Make the param classes final to let the
compiler know that this can't happen in practice.
BUG=chromium:82385
Change-Id: I49a4120b15670d876613b22ba709d50bf4685006
Reviewed-on: https://chromium-review.googlesource.com/261965
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Nico Weber <thakis@chromium.org>
|
|
7c82bc46
|
2015-03-09T16:18:08
|
|
Handle client data for draw calls with RendererGL.
BUG=angleproject:880
Change-Id: I67839d4934767db77cff7b501002c5aafbcbaef2
Reviewed-on: https://chromium-review.googlesource.com/257672
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
84e91d39
|
2015-03-20T13:38:35
|
|
Add a comment explaining the buffer binding points.
BUG=angleproject:881
Change-Id: If81675ef4931c920edac56249461db7c91cc170c
Reviewed-on: https://chromium-review.googlesource.com/261708
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
9dd217bc
|
2015-03-20T14:24:31
|
|
Disallow operations on structures containing arrays in ESSL1
Comparing structures that contain arrays to each other and assigning
structures that contain arrays is "not defined" in ESSL 1.00 (section
5.7). Sections 5.8 and 5.9 further suggest that these operations are not
allowed. Additionally some platform drivers on Linux seem to reject
shaders produced by ANGLE which compare structures containing arrays.
This might require changing the output GLSL version for ESSL 3.00.
BUG=angleproject:954
TEST=angle_unittests
Change-Id: I5f3a016f360f940f2fc1ec1ff8e60d13a977eb69
Reviewed-on: https://chromium-review.googlesource.com/261531
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
bdd419f9
|
2015-03-20T15:29:42
|
|
Fix ResourceManager create-on-bind reallocations.
*re-land with build fix for Clang*
We had a funny bug where the Handle Allocator would re-allocate
reserved handles after the app layer creates one with Bind rather
than using Gen. This affects Textures, Buffers and Renderbuffers.
Fix this by using a different allocation scheme. It should still
be fast on the "good" case (using Gen) and use tree lookups on the
bind case. Also add some unit tests.
BUG=angleproject:942
Change-Id: I63ce608fcd6a11f92e2b5421f090551934e729ed
Reviewed-on: https://chromium-review.googlesource.com/261591
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
21045f5a
|
2015-03-20T19:28:45
|
|
Revert "Fix ResourceManager create-on-bind reallocations."
Build break on GPU FYI Bots on Linux/Mac:
http://build.chromium.org/p/chromium.gpu.fyi/builders/GPU%20Mac%20Builder/builds/28092
This reverts commit 61ce1a414e74f6a72a520d6adf59bff13aff03a0.
Change-Id: If2e7fb35c769708a783a32932b777dc97eaba8a4
Reviewed-on: https://chromium-review.googlesource.com/261590
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
47fd36a7
|
2015-03-19T14:22:24
|
|
Move some validation from IntermBinary::promote to ParseContext
This makes the role of promote() in the system clearer and helps to make
the code more understandable, since more of the checks are in the same
logical place.
BUG=angleproject:952
TEST=angle_unittests, WebGL conformance tests
Change-Id: Idb2de927d872e46210d71cf6de06a6f8c1fc5da1
Reviewed-on: https://chromium-review.googlesource.com/260803
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
4904a79b
|
2015-03-20T11:54:37
|
|
Use the GL_COPY_READ_BUFFER binding for copy sources.
Using the ELEMENT_ARRAY binding can cause issues such as rebinding the
current VAO's index buffer unexpectedly.
BUG=angleproject:881
Change-Id: Ieeed52ac81c23a46bfe9fc4365239c2b177ff6ac
Reviewed-on: https://chromium-review.googlesource.com/261563
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
61ce1a41
|
2015-03-20T13:13:04
|
|
Fix ResourceManager create-on-bind reallocations.
We had a funny bug where the Handle Allocator would re-allocate
reserved handles after the app layer creates one with Bind rather
than using Gen. This affects Textures, Buffers and Renderbuffers.
Fix this by using a different allocation scheme. It should still
be fast on the "good" case (using Gen) and use tree lookups on the
bind case. Also add some unit tests.
BUG=angleproject:942
Change-Id: I2e3f4c31b28cb86bd3699035f5d55568a2a1d7d5
Reviewed-on: https://chromium-review.googlesource.com/258904
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
4bcf5b56
|
2015-03-19T14:00:19
|
|
Uninitialize the debug annotations when unloading a renderer
Change-Id: I125de997853c9deda365e4827322c29d1f20edf2
Reviewed-on: https://chromium-review.googlesource.com/261253
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
be13ffca
|
2015-03-19T13:42:16
|
|
Use google test to wrap our perf tests.
This provides easy implementation with the Chromium perf bots.
BUG=angleproject:744
Change-Id: I71c04e3d67cae9344ddca9fd95fd3c9849494922
Reviewed-on: https://chromium-review.googlesource.com/260644
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
6ae6efca
|
2015-03-09T14:42:35
|
|
Only sync the VAO state just before the draw call.
BUG=angleproject:880
Change-Id: Ifd59c0f67aeab0e4700b3dca57c1b75e3fae48b8
Reviewed-on: https://chromium-review.googlesource.com/257671
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
fb2a5597
|
2015-03-20T11:25:37
|
|
Fix incorrect assertion.
BUG=angleproject:884
Change-Id: I3406eec99609b85c407797c50b71611b445a6ca5
Reviewed-on: https://chromium-review.googlesource.com/261462
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
30ceb3a1
|
2015-03-19T19:20:06
|
|
Update Canary WebGL CTS expectations.
Change-Id: Ia8375595b34e00a48143a568a4a9ab7157a12cd2
Reviewed-on: https://chromium-review.googlesource.com/261171
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
64af27bd
|
2015-03-19T13:42:14
|
|
Make Optional a proper helper class.
Move this to a common area, out of perf tests.
Change-Id: I53d36accfe0c53789c007edfb20ba7e964947def
Reviewed-on: https://chromium-review.googlesource.com/260643
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
8b695ee3
|
2015-03-12T13:12:20
|
|
Reduce unnecessary built-in varying usage in D3D renderer
Change-Id: I0c404e77aa3f56ddc5b97a206b06c7907edfb1eb
Reviewed-on: https://chromium-review.googlesource.com/259812
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
c8ef69d2
|
2015-03-18T16:43:22
|
|
Fix C4702 issues (unreachable code) in ANGLE, excluding <xtree>
Change-Id: Ia7603139af266fd7b14efc8c3465225738456e67
Reviewed-on: https://chromium-review.googlesource.com/261038
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
ed54e5db
|
2015-03-17T16:51:24
|
|
Fix framebuffer zero used after being destroyed in Context destructor.
BUG=angleproject:950
Change-Id: I06e9e6ccf92ee8ca0b1de98cc48ef68a85107214
Reviewed-on: https://chromium-review.googlesource.com/260573
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Gregoire Payen de La Garanderie <Gregory.Payen@imgtec.com>
|
|
e79904c3
|
2015-03-18T16:56:42
|
|
Accept equality and assignment for arrays in parsing
This is enough to support the operations in GLSL output. HLSL output will
likely require additional work to support this.
BUG=angleproject:941
Change-Id: I728d511ab07af94bc3382dc2796c1e9ac79d1442
Reviewed-on: https://chromium-review.googlesource.com/260801
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
1ade24db
|
2015-03-19T16:29:32
|
|
Add #version 300 es to ESSL output when needed
BUG=angleproject:953
Change-Id: Ib9e45fab1d35f8c78abd0ac2209ac4f63afe4465
Reviewed-on: https://chromium-review.googlesource.com/261170
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
d6b14287
|
2015-03-17T14:31:35
|
|
Move binary op array check to ParseContext
Also piece together an addAssign function in ParseContext that uses the
binary op array check. This will make it easier to change the
array-related checks in the future to use shaderVersion. Moving
validation out from IntermBinary::promote also makes the architecture
clearer, promote()'s role should be mainly to determine the type of the
return value of the binary operation, not to do validation.
BUG=angleproject:941
TEST=angle_unittests, WebGL conformance tests
Change-Id: If1de33ea250893527be7f0d7930d4678a0864684
Reviewed-on: https://chromium-review.googlesource.com/260571
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
b2983c95
|
2015-03-18T14:02:46
|
|
Correctly insert unmangled function names to symbol table
This fixes detecting some cases of function parameter mismatch
(previously a mangled function name corresponding to no function
parameters was added to the symbol table for each user-defined function,
and this was returned when doing function lookups with no parameters).
Also fixes detection of reusing a function name as a variable/struct
name.
New unit tests are added to ensure that these fixes don't regress.
BUG=angleproject:936
TEST=angle_unittests, WebGL conformance tests
Change-Id: I2dadde9dcc01c7a4a653c1982c36377b89e6d437
Reviewed-on: https://chromium-review.googlesource.com/260800
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5659619a
|
2015-03-19T10:23:13
|
|
Fix uninitialized ConfigSorter read.
We were not initializaing the mWant* members to false.
BUG=468638
Change-Id: I90ef131c930c6f9c31e9bc9cec951c1f91816eb0
Reviewed-on: https://chromium-review.googlesource.com/261047
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
d4475816
|
2015-03-18T10:53:05
|
|
Always use static_assert for compile-time assertions and remove META_ASSERT.
BUG=468139
Change-Id: I696ef307f2faa54bb72df66784bc79a055499987
Reviewed-on: https://chromium-review.googlesource.com/260776
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
fc1806e1
|
2015-03-17T13:03:11
|
|
Move most of addBinaryMath from Intermediate to ParseContext
Some type checks for binary math will be different based on the shading
language version, which is easily accessible in ParseContext. Because of
this and also for architectural simplicity it makes more sense to have
the checks in ParseContext.
BUG=angle:941
TEST=angle_unittests, WebGL conformance tests
Change-Id: I92a499f47e1cbc6a7b6391ce0fa04284803e7140
Reviewed-on: https://chromium-review.googlesource.com/260570
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2c7c625a
|
2015-03-12T14:15:38
|
|
Refactor D3D Debug Annotations code.
This encapsultates the different implementations and allows us to
compile debug.cpp in the common libraries without link errors.
BUG=angleproject:513
Change-Id: I16dc4c666fb4266ee5146d64d77eb9925c7584a8
Reviewed-on: https://chromium-review.googlesource.com/256450
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b8af723d
|
2015-03-16T22:33:25
|
|
Fix and enable warning C4245 (signed/unsigned mismatch)
Change-Id: If48043835fcc98341a0626e3ece7d0e3f7958059
Reviewed-on: https://chromium-review.googlesource.com/260630
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cooper Partin <coopp@microsoft.com>
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
968992e3
|
2015-03-17T18:01:49
|
|
Fix unreferenced function warning.
Change-Id: I66b1821e5effcb761a5a0268f7f375289aa3a621
Reviewed-on: https://chromium-review.googlesource.com/260632
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6bd58312
|
2015-03-13T10:45:27
|
|
Make Platform methods global.
This will allow them to be imported dynamically without name
mangling. This is necessary because sometimes SwiftShader
overrides libGLESv2 and libEGL, so we need to determine at
run-time if we are running with "actual" ANGLE.
BUG=466735
Change-Id: I396d717b79066feb8ed0d577ee7386b33eb1d160
Reviewed-on: https://chromium-review.googlesource.com/259954
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
1f40291c
|
2015-03-09T14:28:02
|
|
Remove the non-templated RefCountObjectBindingPointer class.
This allows the regular BindingPointer class to template on const types.
Also added assignment and copy operators that don't leak the resources.
BUG=angleproject:880
Change-Id: If3efa26a7fa89306d783c3e8a5fb92b16861d77a
Reviewed-on: https://chromium-review.googlesource.com/257670
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6341939f
|
2015-03-13T11:51:07
|
|
Fix code duplication in OutputHLSL
While debugging, I came across the piece of code in
OutputHLSL::OutputHLSL which is unnecessarily duplicated,
this change just fixes it.
Change-Id: I0549d58696417ccf651bacfa19f489b290d4ba6e
Reviewed-on: https://chromium-review.googlesource.com/259960
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
0110e172
|
2015-03-11T12:26:30
|
|
Update ANGLE_platform_angle_d3d to be able to disable automatic trim.
BUG=angleproject:946
Change-Id: I5652495842b057998318b1583f8e1a586eba39aa
Reviewed-on: https://chromium-review.googlesource.com/258940
Tested-by: Cooper Partin <coopp@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c05f7065
|
2015-03-10T09:50:57
|
|
TextureGL implementation.
BUG=angleproject:884
Change-Id: I877c0a9f753dacff96bbb82486bee71d1996ecb7
Reviewed-on: https://chromium-review.googlesource.com/252982
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
559a2e8c
|
2015-03-16T17:25:51
|
|
Move the ANGLE tests project to src/
*re-re-land with fix for Chrome's angle tests*
BUG=angleproject:945
Change-Id: I3c64e2edc776c299791440f65f22450855eb6dfa
Reviewed-on: https://chromium-review.googlesource.com/260448
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
96e3f556
|
2015-03-16T21:24:20
|
|
Revert "Move the ANGLE tests project to src/"
Still causing build issues on Chrome.
This reverts commit 64a3b2a92fe3bbd28972638e6759fae0b98d81b9.
Change-Id: I8d40fe3dfd0a877343357153a02b8ef66d571c64
Reviewed-on: https://chromium-review.googlesource.com/260425
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
64a3b2a9
|
2015-03-16T11:00:20
|
|
Move the ANGLE tests project to src/
*re-land with fix for Chromium build*
BUG=angleproject:945
Change-Id: I82bff1760e681987fb26e479734aa62fb845898a
Reviewed-on: https://chromium-review.googlesource.com/260362
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
5491fe66
|
2015-03-16T17:56:18
|
|
Revert "Move the ANGLE tests project to src/"
Causing build break in Chromium.
This reverts commit 71c2d85c4af2f6cb213d4f3e15f0ae16b63790f3.
Change-Id: Iedf001c1f4c60a759f69009610fbce978d193d17
Reviewed-on: https://chromium-review.googlesource.com/260370
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
71c2d85c
|
2015-03-16T10:47:04
|
|
Move the ANGLE tests project to src/
BUG=angleproject:945
Change-Id: I2eb44ac43f65b916ddd838d39e6aae62580d7fa0
Reviewed-on: https://chromium-review.googlesource.com/258903
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
|
|
48115b6f
|
2015-03-16T10:46:57
|
|
Use rx::ImplFactory in Framebuffer init.
BUG=angleproject:942
Change-Id: Idf14a4e42148b379b64b129ab649a9222cf1fb52
Reviewed-on: https://chromium-review.googlesource.com/258902
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ae6495e5
|
2015-03-16T10:46:56
|
|
Use rx::ImplFactory in ResourceManager.
This will make mocking easier for unit testing ResourceManager.
BUG=angleproject:942
Change-Id: I24b9d0be550991845225141d6e7d5630383a8718
Reviewed-on: https://chromium-review.googlesource.com/258901
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
87de3627
|
2015-03-16T10:41:44
|
|
Implement pass-through pack state params.
Same as for unpack, this allows us to pass through the state reset
code of dEQP without UNIMPLEMENTED errors, while still throwing
asserts if they are set to non-default values.
BUG=angleproject:901,angleproject:512
Change-Id: I0ce0258b0e91eb83c066c241693aaa5c164b2989
Reviewed-on: https://chromium-review.googlesource.com/257131
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
67102f01
|
2015-03-16T10:41:42
|
|
Add pass-through for new unpack store params.
Move the UNIMPLEMENTED checks to where they are used with non-default
values. This allows dEQP to pass the prerequisite tests like state
reset without throwing assertion failures in debug.
BUG=angleproject:901,angleproject:512
Change-Id: I3bd35f6dea61e7d80d1379ba4e8e13437e68431a
Reviewed-on: https://chromium-review.googlesource.com/257130
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
2728eda4
|
2015-03-16T10:23:50
|
|
Revert "A special state to track field selection is not necessary."
This reverts commit f8dc4fb66d2ee473b6ba37626f02756422863f6c.
The special state to track field selection is actually necessary to avoid
reduce/reduce conflicts when array constructors are added to the grammar.
BUG=angleproject:941
TEST=WebGL conformance tests, angle_unittests
Change-Id: I55476483c9e83241e8978cd58f05ef303c7c8680
Reviewed-on: https://chromium-review.googlesource.com/260260
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
28291c5a
|
2015-03-16T10:46:54
|
|
Add an ImplFactory base class.
This class helps make mocking easier for unit tests.
Also update the back-end generator script.
BUG=angleproject:942
Change-Id: Ib0cee2b40c3a0faaac32b22c986b824b7b2dddde
Reviewed-on: https://chromium-review.googlesource.com/258900
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
f75ab350
|
2015-03-16T10:46:52
|
|
Make ClearParameters an rx-only type.
This legacy struct duplicates some methods in the gl::State. We
can restrict its use to D3D and on newer back-ends use the State
directly.
BUG=angleproject:930
Change-Id: I2c298e76b072ee73f2b3e17f6696693031ce1f91
Reviewed-on: https://chromium-review.googlesource.com/258070
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
4f52da4a
|
2015-03-11T10:48:41
|
|
Remove no-op functionality from IdentifyBuiltIns and refactor
Adding array built-ins like gl_FragData and gl_LastFragData to the
symbol table with a name that included their size in brackets was
incorrect and unnecessary. Remove this. The array built-ins should only
be added with their proper name and with an array type.
Also refactor the code to reduce unnecessary repetition of conditions.
The previous version attempted to split the built-ins that had
dependencies on resources into their own part of the code, but this split
was not clearly defined and only made the code harder to follow and
prone to issues.
TEST=WebGL conformance tests
Change-Id: I7a77865a594864a22f3b566f9d3da1d0ead46466
Reviewed-on: https://chromium-review.googlesource.com/258751
Reviewed-by: Nicolas Capens <capn@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
61ffec88
|
2015-03-11T10:35:01
|
|
Fix formatting of IdentifyBuiltIns
Fix indentation of case labels, fix too long lines, put braces on their
own lines and remove extraneous spacing and comments that didn't
contribute to the readability of the code.
TEST=WebGL conformance tests
Change-Id: Ie33d0a7c4412c448081f5d879fa9f64baaf8d537
Reviewed-on: https://chromium-review.googlesource.com/258750
Reviewed-by: Nicolas Capens <capn@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
434953e2
|
2015-02-20T10:49:51
|
|
Compile the D3D11 VS and PS on separate threads at GL link time
Change-Id: Ib534483f2ec3922cfeaf71cf1d9e9c433fe04b08
Reviewed-on: https://chromium-review.googlesource.com/251612
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
bc8a1772
|
2015-02-26T14:11:43
|
|
Fix WinRT build break due to D3D9 histogram assumption
Change-Id: Id8e8bed76a813e5cf082659671bb6f4a112ecf24
Reviewed-on: https://chromium-review.googlesource.com/254340
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
44efa0b8
|
2015-03-04T17:11:05
|
|
Conditionally enable IEEE strictness for isnan()
ANGLE's ESSL3 built-in function isnan() implementation just uses HLSL
intrinsic function isnan(). For HLSL intrinsic function isnan() to work
properly, IEEE strictness needs to be enabled for D3D compiler.
This change detects use of isnan() in shaders and passes compiler flag
D3DCOMPILE_IEEE_STRICTNESS whenever isnan is used in shaders. This
change also moves existing workarounds in D3DWorkaroundType to
D3DCompilerWorkarounds.
BUG=angle:927
TEST= dEQP tests
dEQP-GLES3.functional.shaders.builtin_functions.common.isnan.*
Change-Id: I1ce5b1a7a825fdd720a37dc9aeb71320e55162d9
Reviewed-on: https://chromium-review.googlesource.com/255834
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
56d1003e
|
2015-03-05T14:59:56
|
|
Add a D3D11 Debug member var.
This is useful for dumping live objects on exit, to debug resource leaks.
Change-Id: Ie88787defa37853d0a33c951b107ceac289e58df
Reviewed-on: https://chromium-review.googlesource.com/256461
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
fd67b1bf
|
2015-03-10T16:13:24
|
|
Move implementation unit tests to angle_unittests.
Now that libANGLE is cross-platform, this should work on OSX/Linux
and Android. Includes a warning fixes for test comparisons, and fix
to our META_ASSERT wrapper macro for clang.
BUG=angleproject:773
Change-Id: I6b88a85c62a2e07734ae81fb8276c28c5f8f9f47
Reviewed-on: https://chromium-review.googlesource.com/258300
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f90353e8
|
2015-03-05T19:37:58
|
|
Fix typo "setDepthttachment".
BUG=angleproject:930
Change-Id: I7680bbc912c0d961143c38ad82d19746dc9b113d
Reviewed-on: https://chromium-review.googlesource.com/256732
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
85a1804d
|
2015-03-05T15:41:41
|
|
Make getColorAttachmentsForRender D3D-only.
This encapsulates the workaround in the D3D renderer, and also
optimizes the workaround to only compute a new set of attachments
when there is a change to the state.
BUG=angleproject:930
Change-Id: Ibdc15078236e2d19b544fae8e65b7f2554f31844
Reviewed-on: https://chromium-review.googlesource.com/254102
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
7147f01a
|
2015-03-05T15:41:40
|
|
Cleanups to FramebufferD3D.
With the new shared state structure, we can eliminate a lot of the
state tracking within the FramebufferD3D implementation.
BUG=angleproject:930
Change-Id: I0953e321bae3afe7cde7b73c55af62546665c890
Reviewed-on: https://chromium-review.googlesource.com/254101
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
d1405e51
|
2015-03-05T15:41:39
|
|
Share FBO state with object and Impl.
This patch introduces a new Framebuffer::Data class, which stores
attachment related state. This will eliminate the need to store
duplicated state between the classes.
BUG=angleproject:930
Change-Id: I80de4db39ab99d623b0ad8306bf3cbb794cd8bd5
Reviewed-on: https://chromium-review.googlesource.com/254100
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
0af26e10
|
2015-03-05T19:54:33
|
|
Prefer using caps to system attachment limits.
The caps structure can often give a lower and faster bound, as well
as being more general. We should gradually move away from the
implementation limits.
BUG=angleproject:930
Change-Id: I979472cdb6f59c6f0cc0c80f1c29c51295872bea
Reviewed-on: https://chromium-review.googlesource.com/256731
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
092e1a12
|
2015-03-09T07:40:11
|
|
Initialize fragmentPrecisionHigh in constructor.
This was the only field not initialized by the constructor, which
looks like an oversight.
Change-Id: If61424d574c663113a4c6d31e94b6ec13b412884
Reviewed-on: https://chromium-review.googlesource.com/257360
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
fc7fab72
|
2015-03-06T12:03:18
|
|
Fix matrix compound multiplication
Matrix compound multiplication was lacking transposes. Add them so that
results match normal multiplication.
BUG=angleproject:938
TEST=dEQP-GLES3.functional.shaders.matrix.mul_assign.*
Change-Id: I4c5159de0727afb4ee2831586f04fa817619de7a
Reviewed-on: https://chromium-review.googlesource.com/256366
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
51585037
|
2015-03-05T19:40:42
|
|
Remove unnecessary ifdef APPLE from built-in emulation
The emulation is already toggled by a compilation flag, so having it
behind an ifdef only adds unnecessary complexity, particularly when
testing changes to the emulation code.
BUG=angleproject:865
Change-Id: Idf7854c2b5323609880b527ed806440dcc8ac091
Reviewed-on: https://chromium-review.googlesource.com/256365
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
8efc5ad5
|
2015-03-03T17:21:10
|
|
Initialize BuiltInFunctionEmulator outside Compiler
This moves GLSL output specific code from the Compiler class to the
GLSL/ESSL translators.
BUG=angleproject:865
Change-Id: I2d552e9cdb41f7d8ddfee7b0249a99d629a6d7d7
Reviewed-on: https://chromium-review.googlesource.com/255471
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
72ba85bf
|
2015-03-04T14:23:26
|
|
Fix regression in addFunctionCallOrMethod
Fix a crash when parsing a shader with incorrect constructor arguments.
BUG=angleproject:911
TEST=WebGL conformance tests
Change-Id: I3459612f36185db861a361fa916cc6b671795037
Reviewed-on: https://chromium-review.googlesource.com/255870
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Zhenyao Mo <zmo@chromium.org>
|
|
95cd3c68
|
2015-03-03T16:45:32
|
|
Move some output out of BuiltInFunctionEmulator subclasses
This paves the way for getting rid of the BuiltInFunctionEmulator
subclasses in favor of initializing the BuiltInFunctionEmulator
dynamically in Compiler subclasses. The eventual goal is getting rid of
GLSL output specific functionality in Compiler, which should be
language-agnostic.
BUG=angle:865
Change-Id: Ibb114b905785c7343b2726c97699268c982536a0
Reviewed-on: https://chromium-review.googlesource.com/255470
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
c4ba3bef
|
2015-03-02T14:42:24
|
|
Refactor addFunctionCallOrMethod out of glslang.y
TEST=angle_unittests
BUG=angle:911
Change-Id: I6d4c0f0bfbf9e6252e241ae5bb1b6acdb463fce6
Reviewed-on: https://chromium-review.googlesource.com/255451
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5dbece59
|
2015-02-27T20:35:38
|
|
Implement trunc, round, roundEven (Emulated roundEven)
BUG=angle:934
Change-Id: If33256bf3707f3f0202147276c71f08c65518205
Reviewed-on: https://chromium-review.googlesource.com/254842
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
2cd7a0ed
|
2015-02-27T13:57:32
|
|
Remove switch fall-through on HLSL
Remove fall-through from non-empty labels in switch statements.
Tested with dEQP-GLES3.functional.shaders.*switch*. All pass except for tests
that require dFdx/dFdy, which fail for an unrelated reason.
Additional test coverage could still be useful for cases where a label is
terminated by a continue or return statement.
BUG=angle:921
Change-Id: I4741867789a9308d66d0adeabdaf83907106e2d2
Reviewed-on: https://chromium-review.googlesource.com/254550
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
687ef22c
|
2015-03-03T10:58:05
|
|
Fix derivatives being related to an extension on ESSL3
dFdx, dFdy and fwidth are parts of the core language in ESSL3.
This fixes a regression from the patch "Set symbol extension at insertion".
BUG=angle:926
Change-Id: I6c0bbce3afad1f064ff115a16e23ea79bd584e49
Reviewed-on: https://chromium-review.googlesource.com/255450
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
ddc7446d
|
2015-02-25T11:48:09
|
|
Move RendererGL caps generation to renderergl_utils.
Change-Id: Ia385fc9739174472d698367e2c6093ba1963b1fe
Reviewed-on: https://chromium-review.googlesource.com/253634
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
c92fa1ee
|
2015-03-03T15:26:52
|
|
Disable textureRG for DX9
DX9 emulates GL_R8_EXT using BGR8. When we made the switch to using
GL_R8_EXT for YUV decoding, we decreased performance on DX9 machines.
DX9 supports luminance, which we fall back to when R8 isn't available.
BUG=438736
Change-Id: Iaa8d0518d481927d66130ea1bf3a95a750c5a761
Reviewed-on: https://chromium-review.googlesource.com/255662
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
05b6b7fc
|
2015-03-02T17:08:09
|
|
Add an SH_GLSL_CORE_OUTPUT profile.
So we could generate shaders for Apple using core GL profile.
By switching to core profile, we still pass most WebGL conformance tests 1.0.2 on Linux, but not all, so apparently more work is needed.
However, I think it's OK to check this CL in because this output profile will be only used behind a chromium switch.
BUG=angleproject:933
TEST=webgl conformance tests
Change-Id: Iad70e1aebf82349d3fc5f4116c1d6bc4448193fd
Reviewed-on: https://chromium-review.googlesource.com/255282
Tested-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
7749005a
|
2015-03-03T18:36:05
|
|
Fix min built-in function support
One of the recent change that uses generic types to compact
the symbol table initialization has introduced a bug in 'min'
function implementation, just fixing it here.
TEST= dEQP tests:
dEQP-GLES3.functional.shaders.operator.common_functions.min.lowp_uvec*
Change-Id: I0e3d386c89bc07c3b656ec5029b8ce57f663cf46
Reviewed-on: https://chromium-review.googlesource.com/255369
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d6e50872
|
2015-02-24T12:42:26
|
|
Add a StateManagerGL method to sync state required for a draw call.
BUG=angle:883
Change-Id: Iabeb25aef2228a1900bd0209422ddce21771c688
Reviewed-on: https://chromium-review.googlesource.com/252802
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ba4c4a85
|
2015-02-24T12:38:46
|
|
Implement basic functionality in VertexArrayGL.
No support for raw vertex data pointers yet.
BUG=angle:880
Change-Id: Ifa8099b0f49028a1465edecde495ba725ac79598
Reviewed-on: https://chromium-review.googlesource.com/252801
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
c9d9b30a
|
2015-02-20T23:02:15
|
|
Set symbol extension at insertion.
BUG=angle:926
Change-Id: I4c96ae89c79d720d99bde803541c3158ba4629ab
Reviewed-on: https://chromium-review.googlesource.com/251662
Tested-by: Nicolas Capens <capn@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
05ae50dc
|
2015-02-20T10:16:47
|
|
Add basic support for HLSL output of switch and case
This patch outputs switch and case statements in HLSL, but ignores fall-through.
Switch statements that include fall-through cause the platform HLSL compiler to
generate errors.
BUG=angle:921
Change-Id: I10efbfb45076cf4fd79840698abafd8111e597d4
Reviewed-on: https://chromium-review.googlesource.com/251527
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
01cd8afa
|
2015-02-20T10:39:20
|
|
Add GLSL output of switch and case
BUG=angle:921
Change-Id: I0d752440ce6ffdfcc005f1a6123694bdfeb1b067
Reviewed-on: https://chromium-review.googlesource.com/251526
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c8716df9
|
2015-02-26T17:17:22
|
|
Fix an issue with handling an error case inside ValidateSwitch
In case a condition with a wrong type is given to a case statement, it
generates an error but the compiler recovers. This caused ValidateSwitch
to assert. Fix this.
BUG=angle:921
Change-Id: I7949798cab923c2b168817471896470c6c611878
Reviewed-on: https://chromium-review.googlesource.com/254080
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
482907eb
|
2015-02-23T16:56:33
|
|
Set symbol operations at insertion.
BUG=angle:926
Change-Id: Ifc8f62ebe1277214a4d3fbd5c56eb5faeff8e389
Reviewed-on: https://chromium-review.googlesource.com/251650
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Nicolas Capens <capn@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
58646526
|
2015-02-26T16:04:28
|
|
Pipe the ProgramBinary functions to the OES implementations.
BUG:462020
Change-Id: Ic567bf3d56d551716f1915a208003a7699abe6e6
Reviewed-on: https://chromium-review.googlesource.com/254300
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
91a080d8
|
2015-02-26T11:07:31
|
|
Fix GL typedef conflicts.
Moved typedefs to the global namespace to avoid future name conflicts.
Change-Id: I70bd47d2516964cd040df48c0b2ca50bc32ba851
Reviewed-on: https://chromium-review.googlesource.com/254090
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
e9cc469f
|
2015-02-19T16:00:13
|
|
Accept mismatching auxiliary interpolations.
The ES3.1 spec, and discussion on Khronos.org, confirm that dEQP is
correct in accepting mismatching centroid specifiers in shader
linkage. Mismatching flat/smooth is still a link error.
Fixes:
shaders.linkage.varying.rules.differing_interpolation_2
Change-Id: I3016f4147e7c1b16b02371ee95866c8daf826212
Reviewed-on: https://chromium-review.googlesource.com/251205
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
a2643b64
|
2015-02-19T11:07:56
|
|
Add UMA histogram for D3D9 init results.
Similar to D3D11 results, this can add statistics for the result of
initializing the D3D9 Renderer.
BUG=436191
Change-Id: I746c95a8dbb27456613844fde816e17352dc4b8d
Reviewed-on: https://chromium-review.googlesource.com/248660
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b9293977
|
2015-02-19T11:07:54
|
|
Add UMA histogram for D3D11 init failures.
This will give ANGLE in Chrome a sense of device init calls fails in
D3D11, and why.
BUG=436191
Change-Id: Ia7b1bfa334cec595b6f0265357385d0dcc2d6cbf
Reviewed-on: https://chromium-review.googlesource.com/248632
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
5cc9ac85
|
2015-02-20T11:27:56
|
|
Fix shadow samplers with textureProj and vertex shaders.
Fixes:
dEQP-GLES3.functional.shaders.texture_functions.textureproj.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureproj.sampler2dshadow_bias_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler2dshadow_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler2dshadow_bias_fragment
and some of:
dEQP-GLES3.functional.shaders.texture_functions.texture*.sampler2dshadow_vertex
BUG=angle:925
Change-Id: I080e379ded95469f0486ae9c8bb1756842118a2d
Reviewed-on: https://chromium-review.googlesource.com/251530
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
36c79011
|
2015-02-24T11:47:20
|
|
Implement basic functionality in BufferGL.
BUG=angle:881
Change-Id: I8d761741d204d26cea1c87eec725bc8ebaaaa584
Reviewed-on: https://chromium-review.googlesource.com/252800
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
63cbace6
|
2015-02-26T10:03:12
|
|
Rename StateManagerGL::setProgram to useProgram.
BUG=angle:882
Change-Id: I4046e23bf720690869558fa6a5528d40c4b3bfa3
Reviewed-on: https://chromium-review.googlesource.com/254070
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ab249d18
|
2015-02-26T09:56:23
|
|
Temporarily disable WGL debug contexts.
Change-Id: I62f29b8012386cd57181621e0854aa5a8ce534dd
Reviewed-on: https://chromium-review.googlesource.com/254061
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ac5274df
|
2015-02-20T10:19:08
|
|
Add validation for the structure of switch statements
Implement a traverser to check for the following errors:
-More than one default or replicated constant expression
-No statement between a label and the end of a switch statement
-Statements in a switch statement before the first case statement
-Mismatch between the type of init-expression and type of a case label
-Case or default label nested inside other control flow nested within the
corresponding switch
Tested by manually disabling shading language version checks for switch
and by manually enabling case statements in a Chromium build and checking
that the expected errors are generated.
BUG=angle:921
Change-Id: I99c49c17c8b520849adbe4d8521e46cb10e20e41
Reviewed-on: https://chromium-review.googlesource.com/251524
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
3c1dfb5a
|
2015-02-20T11:34:03
|
|
Add stubs for switch and case output
BUG=angle:921
Change-Id: I58bd645a8d53ef5bad9b680e54c8948d50932fca
Reviewed-on: https://chromium-review.googlesource.com/251525
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b1f435e4
|
2015-02-20T10:01:01
|
|
Implement basic functionality of ProgramGL.
BUG=angle:882
Change-Id: I1d859197011081729c4c5733b78ac10491fe926c
Reviewed-on: https://chromium-review.googlesource.com/251542
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|