|
493daf5a
|
2014-07-03T13:38:44
|
|
Update the format table to check support for filtering and rendering.
Since filerability and renderability may depend on separate extensions,
use functions to determine their support. Context now uses these
functions to fill it's own TextureFormatCaps.
BUG=angle:658
Change-Id: Ib4dc877ba7c24f84a3823fd5aa2e01a3b3621705
Reviewed-on: https://chromium-review.googlesource.com/206831
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
e04a5b7b
|
2014-07-18T10:33:12
|
|
Remove sh::InterfaceBlock member info.
We can compute the interface block member info entirely on the
API side. This will allow us to get rid of some un-necessary
code in the compiler.
BUG=angle:466
Change-Id: I664ffc82de5f2723156e51f4e9ffc07e4de162aa
Reviewed-on: https://chromium-review.googlesource.com/207781
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
bf9cce2e
|
2014-07-18T10:33:09
|
|
Use the block encoder class to store uniform offsets.
This will allow us to use the same code path for assigning register
information in all places. Because of this it fixes some long-broken
dEQP struct uniform tests.
BUG=angle:466
BUG=angle:505
Change-Id: I4161a388503aa09bbe2d21ff47bfb3352ec93881
Reviewed-on: https://chromium-review.googlesource.com/207255
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
18fe4294
|
2014-07-22T13:03:06
|
|
Added virtual destructors to VertexArrayImpl and BufferImpl
Change-Id: Ib9d8b2fc85b63f0cd52a2b19129a88ba7acbc017
Reviewed-on: https://chromium-review.googlesource.com/209380
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Tested-by: Nico Weber <thakis@chromium.org>
|
|
6cf8e1b9
|
2014-07-03T13:03:57
|
|
Reduce the number of TextureFormatCaps members.
Since GL has no notion of texture formats that can be used for different
types of textures, merge the TextureFormatCaps texture support members.
Also merge the various renderability members since the texture type is
enough to determine what type of renderable a format is.
BUG=angle:658
Change-Id: I7cba50b147fcca8f3880d65c06c57df9c65ed19c
Reviewed-on: https://chromium-review.googlesource.com/206830
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
591e6afe
|
2014-06-18T18:08:57
|
|
Add support for ANGLE_platform_angle.
BUG=angle:490
Change-Id: If3c897a9ae3d27b96e4b9bf9475a9ac23a1090ba
Reviewed-on: https://chromium-review.googlesource.com/185396
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
78b1acdb
|
2014-07-15T15:33:07
|
|
Refactored Texture3D, separated out D3D logic
BUG=angle:688
Change-Id: I6cda73c2e4c8a026b8c5222bc40cea93ad4e0ba3
Reviewed-on: https://chromium-review.googlesource.com/208102
Tested-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0511e808
|
2014-07-14T16:27:26
|
|
Refactored TextureCubeMap, separated out D3D logic
BUG=angle:688
Change-Id: I2300aaad4fab25df484e0bc3613ac3b176addc93
Reviewed-on: https://chromium-review.googlesource.com/208191
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
75ec7c5b
|
2014-07-17T15:00:38
|
|
Fix "error: extra qualification 'rx::ImageD3D::' on member 'makeImageD3D'"
As reported by GCC 4.8.1/MinGW.
Change-Id: If62d234074a0a9180f1f3c3619dbb2dd8047d0f3
Reviewed-on: https://chromium-review.googlesource.com/208670
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Andrew Knight <andrew.knight@digia.com>
|
|
5b130dcc
|
2014-07-11T17:02:05
|
|
Do not create dummy variables when linking uniforms.
This cleanup prepares us for removing the uniform register info
from the shader translator types.
BUG=angle:466
Change-Id: I86f47970b793135f410a5ef698fc96d44219ee96
Reviewed-on: https://chromium-review.googlesource.com/207253
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
66d43d24
|
2014-07-11T17:02:03
|
|
Refactor ProgramBinary uniform linking code.
This prepares us for moving most of the register assignment to the
ProgramBinary class itself, and cleans up the various methods.
BUG=angle:466
Change-Id: Ie2965ed41ac50617584fd7a6d7b0ec2784e7dfaf
Reviewed-on: https://chromium-review.googlesource.com/207252
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
fc43d273
|
2014-07-11T17:02:02
|
|
Remove the sh::InterfaceBlock::dataSize member.
We can replace this by doing the same calculation in the HLSL-side
code.
BUG=angle:466
Change-Id: Iecae4a92e9037e851419ce73e6267094ee8071a2
Reviewed-on: https://chromium-review.googlesource.com/207251
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
d4116ff3
|
2014-07-11T17:02:01
|
|
Remove sh::InterfaceBlock::registerIndex.
This value is HLSL-only and we can use the new query API to hide it
from GLSL programs.
BUG=angle:466
Change-Id: I75dc2fbbf1b29b1f6d561568174a15dea1f5b130
Reviewed-on: https://chromium-review.googlesource.com/207250
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
f47bebc4
|
2014-07-09T14:28:42
|
|
Refactored Texture2D, separated out D3D logic
BUG=angle:688
Change-Id: I93c2ff0b125278234d61324844b79cc58135d4d8
Reviewed-on: https://chromium-review.googlesource.com/207675
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
53a94a82
|
2014-06-24T15:20:36
|
|
Refactors State to be a fully-qualified class
BUG=angle:685
Change-Id: I36cff2da985a12c7180fe2850ccd471f4cebbaad
Reviewed-on: https://chromium-review.googlesource.com/206634
Tested-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1da3cf63
|
2014-06-27T15:32:23
|
|
Removes sub-entry-point Framebuffer validations
BUG=angle:685
Change-Id: I2d630396a5971972f858cca9c39ceb6509492aa4
Reviewed-on: https://chromium-review.googlesource.com/205836
Tested-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
aa2ab7d8
|
2014-06-24T17:51:51
|
|
Cache bound FBO and VAO objects themselves in State
BUG=angle:685
Change-Id: I19ae6752d1a7490122dd9ca076efb08564e1901d
Reviewed-on: https://chromium-review.googlesource.com/205835
Tested-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6518fe24
|
2014-07-08T15:16:52
|
|
Moved TextureStorage and Image into d3d
BUG=angle:688
Change-Id: I98ffa1082340a829a77fe5082958898b9c6ab1a2
Reviewed-on: https://chromium-review.googlesource.com/207054
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
d4cfa57d
|
2014-07-08T10:00:32
|
|
Move more draw call validation to the API.
The GL expects us to reject invalid draw calls before we start
doing any work, so we can prevent internal unnecessary state
changes.
Also update the program binary's cached sampler data when we
validate. The previous patch was breaking draw calls in Google
Earth WebGL.
BUG=angle:571
BUG=390412
Change-Id: I1c4e204ae2467afc36b76af975a3a49e26349639
Reviewed-on: https://chromium-review.googlesource.com/206482
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d5512cd4
|
2014-07-10T17:50:08
|
|
Collect shader outputs and interface block information.
This paves the way for returning ES3-specific info from the shader
translator with the new query methods.
BUG=angle:466
Change-Id: Ib13cdb604854cdf11e9dc00dd94f18eadc946561
Reviewed-on: https://chromium-review.googlesource.com/206770
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
0b7e5d8c
|
2014-07-11T16:33:09
|
|
Fix 64-bit warnings.
BUG=angle:631
Change-Id: I76439ca2549916d594a54a4a9a35387d80b023ba
Reviewed-on: https://chromium-review.googlesource.com/207441
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
c0b9ef4b
|
2014-07-02T10:02:37
|
|
Split Caps into Caps, Extensions and TextureFormatCaps.
Context now holds it's own Caps, Extensions and TextureFormat caps so that it
can modify them based on client version or work-arounds.
BUG=angle:658
Change-Id: Id71b6c89b7aa36e1f3dc42b0e4720eaed1851fb9
Reviewed-on: https://chromium-review.googlesource.com/206480
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
57f9b6d5
|
2014-06-04T16:46:37
|
|
Clean up generatemip.h.
* Move "private" functions into generatemip.inl.
* Use size_t for all dimensions.
* Use uint8_t pointers instead of unsigned char pointers.
BUG=angle:666
Change-Id: I8a1324802e4d670c042e0961c2b6f6fd53f4ebc7
Reviewed-on: https://chromium-review.googlesource.com/202503
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
86846e24
|
2014-06-03T15:48:54
|
|
Clean up the functions in loadimage.h/cpp.
* Capitalize the function names to fit the style guide.
* Use explicit sizes in the function names to avoid any confusion about
input or output sizes.
* Use explicit sized types in the functions to avoid potential issues on
new platforms since a lot of bit-twiddling is used.
* Use size_t for all sizes.
* Use uint8_t for all binary data for input and output data so that pointer
arithmetic is much easier.
* Move templated function definitions into an .inl file so that
loadimage.h looks as clean as possible.
BUG=angle:665
Change-Id: Id7173ed66d9e1b7ee3261eea11e77d838cbd2951
Reviewed-on: https://chromium-review.googlesource.com/202590
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
2a6564eb
|
2014-07-11T09:53:19
|
|
Fix build errors in validationES.cpp.
This was caused by a bad auto-merge with the Caps patch.
BUG=angle:694
Change-Id: I589d4dafb7ed890d7c340c9ae98080dff945c69a
Reviewed-on: https://chromium-review.googlesource.com/207540
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
e92a3546
|
2014-07-03T10:38:58
|
|
Remove redundant FBO query methods.
Several query methods simply wrapped a NULL check with a default
return value. Most of these safety checks were unnecessary.
BUG=angle:660
Change-Id: I0ac6897f06be082c8efab8721920d1b51ba999ee
Reviewed-on: https://chromium-review.googlesource.com/205606
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
55ec3b11
|
2014-07-03T10:38:57
|
|
Refactor common attachment validation to base method.
Split the validation of FBO attachment binding to common methods
and separate logic for layers and for 2D attachments.
BUG=angle:571
Change-Id: I9a59055cca60dd853311751be355440ad1e5ead0
Reviewed-on: https://chromium-review.googlesource.com/205605
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
aae65a4e
|
2014-05-26T12:43:44
|
|
Add caps for texture size limits and other caps in the 6.28 table.
BUG=angle:658
Change-Id: Ia265fe1d3713db7701b41e8430d6d186f352ab4a
Reviewed-on: https://chromium-review.googlesource.com/201363
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
53cb14dc
|
2014-07-08T15:02:35
|
|
Share ArrayString and Str helper methods.
Placing these string helper methods allows us to re-use them in
the relevant place of the shader translator.
BUG=angle:466
Change-Id: Idd638542027d3b1035bc79fc941e80bf436c82af
Reviewed-on: https://chromium-review.googlesource.com/206567
Reviewed-by: Nicolas Capens <capn@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b23375fe
|
2014-07-08T10:49:39
|
|
Fixed an issue with Streaming Vertex data overflowing it's buffer.
Bug=angle:689
Change-Id: Ia0ee6f951822901560888ea300a3889601fa1d89
Reviewed-on: https://chromium-review.googlesource.com/207010
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
aa7e1660
|
2014-07-05T21:13:11
|
|
Improve the const correctness.
This improvement to the const correctness makes ProgramBinary::save
compile with clang-cl as well, which is more strict than MSVC.
Change-Id: Iae091643fa1df7f094b89dbe7529c4e173f04a6d
Reviewed-on: https://chromium-review.googlesource.com/206714
Tested-by: <ehsan@mozilla.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b4472275
|
2014-07-03T10:38:55
|
|
Add a ValidateAttachmentTarget helper method.
This helper returns the appropriate error with the user specifies
an attachment that is invalid or out-of-range (for indexed color
attachments).
BUG=angle:571
Change-Id: I80ed347e3540579110e40e742fbacb0467cb85fd
Reviewed-on: https://chromium-review.googlesource.com/205604
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
570f7c84
|
2014-07-03T10:38:54
|
|
Add helper methods for FBO attachment validation.
Subsequent refactoring will eliminate duplicate code.
BUG=angle:571
Change-Id: I086320beb5c432c326d29d047931575e6f2a1d64
Reviewed-on: https://chromium-review.googlesource.com/205603
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
a328d569
|
2014-07-01T13:52:40
|
|
Removed sampler state getters and setters from gl::Texture
BUG=angle:688
Change-Id: I3f203e4d10059c12a0c00e967ad6c7d3b3a18074
Reviewed-on: https://chromium-review.googlesource.com/206335
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
10530c34
|
2014-07-02T20:37:53
|
|
Add ANGLE_NO_EXCEPTIONS macro
This macro allows us to hide angle's usage of try/catch so that we can
properly hide them from compilers that do not support exceptions
properly (such as clang-cl and gcc/clang with -fno-exceptions).
Change-Id: I75f466a5322e5840e007711ea851f444bd6ca299
Reviewed-on: https://chromium-review.googlesource.com/206562
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: <ehsan@mozilla.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
865d1451
|
2014-07-02T15:31:20
|
|
Consolidate varying packing sort order methods.
We were using the same list in the shader varying sorting
as well as in the varying packing validation in the
translator.
BUG=angle:466
Change-Id: Ic11758288e7a522d7c18a293de9e137e487e3978
Reviewed-on: https://chromium-review.googlesource.com/205595
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
183bde55
|
2014-07-02T15:31:19
|
|
Return shader variable information using GLenum values.
Instead of duplicating GL header define values, explictly return
GLenum for variable queries in the shader inspection API. This
reduces the duplicate defines in the shader compiler header.
BUG=angle:466
Change-Id: Iddaaff597b188251fa2e546f352bf77ab3ac43bc
Reviewed-on: https://chromium-review.googlesource.com/205860
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
e8cda371
|
2014-07-01T16:13:18
|
|
Revert "Move more draw call validation to the API."
BUG=390412
This reverts commit 9efa581d0e8f251b88f5a2f432ddb20655036c77.
Conflicts:
src/libGLESv2/validationES.cpp
Change-Id: I78457e1dfec8b75fecef8dc40c549adbde680a2a
Reviewed-on: https://chromium-review.googlesource.com/206340
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
ce505553
|
2014-06-26T14:56:33
|
|
Revert "Return variable type queries using GLenum values."
Breaks the FYI bots until we get Chromium patched.
BUG=angle:466
This reverts commit 53221f5a0382887155d90f7f286e41190d4f5bfb.
Change-Id: Ib28548df5c10a6f76f46e4cf8f2013dca5cf0ee2
Reviewed-on: https://chromium-review.googlesource.com/205850
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
53221f5a
|
2014-06-25T16:04:59
|
|
Return variable type queries using GLenum values.
Instead of duplicating GL header define values, explictly return
GLenum for variable queries in the shader inspection API. This
reduces the duplicate defines in the shader compiler header.
BUG=angle:466
Change-Id: If631b20ce68747297a946e1371def7709027a613
Reviewed-on: https://chromium-review.googlesource.com/204937
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
6dc7f360
|
2014-06-25T21:12:02
|
|
Fix null pointer dereference in glGetBufferPointerv
BUG=angle:687
Change-Id: If8f215d4a86332b9e6e791263bdeeb44b23a42a2
Reviewed-on: https://chromium-review.googlesource.com/205711
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
28bedaf8
|
2014-06-26T13:17:22
|
|
Fix double delete in Framebuffer.cpp.
Depth-stencil buffers were using the same pointer for both
attachments, which was causing a double-delete in the
Framebuffer destructor.
BUG=angle:686
Change-Id: I8b263e5a084c33b495ce18ef2a2a810918ef6540
Reviewed-on: https://chromium-review.googlesource.com/205639
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
d38f926a
|
2014-06-18T16:26:45
|
|
Refactoring Buffers
BUG=angle:681
Change-Id: I6c3809e0b9468dfe38465c55759c2572c21485da
Reviewed-on: https://chromium-review.googlesource.com/204896
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
e4a492be
|
2014-06-19T14:14:41
|
|
Remove the clientVersion parameter from the format utils.
clientVersion was only useful for intitial validation of formats and not
required for queries. Only use the client version and caps structure to
validate if a format is available and then trust that it is supported past
the validation layer.
Fixed some inconsistancies between tables such as missing formats or
incorrect load functions in the ES3 tables.
BUG=angle:659
Change-Id: I8d33c902156ee6fb41efe937d93b0586191726e5
Reviewed-on: https://chromium-review.googlesource.com/201167
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f51639a4
|
2014-06-25T16:04:57
|
|
Use a common include for GL headers.
A common place to define required GL includes gives us a nice
point to centralize GL customizations. In the header currently
are the basic GLES headers with extensions, and a define
carried over from desktop GL.
BUG=angle:466
Change-Id: I6fc61947b4514654ec21355a786904eac04656c0
Reviewed-on: https://chromium-review.googlesource.com/204936
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
|
|
f2575989
|
2014-06-25T16:04:54
|
|
Use the sh namespace for shader variables.
Since these types originate from the translator, use an appropriate
namespace. Also rename some of the gl helper functions to be more
specific to their functionality.
BUG=angle:466
Change-Id: Idc29987b2053b3c40748dd46b581f3dbd8a6fd61
Reviewed-on: https://chromium-review.googlesource.com/204680
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
|
|
bb94f341
|
2014-06-23T15:23:02
|
|
Remove gl::IsInternalTextureTarget.
This function was a duplicate of ValidTexture2DDestinationTarget.
Also clean up a bit of the code in Framebuffer::completeness.
BUG=angle:660
Change-Id: Iee8d011274bfb2e426346e3ccdde7342fbb7ef44
Reviewed-on: https://chromium-review.googlesource.com/202595
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e261b44a
|
2014-06-25T12:42:21
|
|
Remove obsolete Renderbuffer types.
RenderbufferProxySet and FramebufferTextureBindingPointer aren't
necessary any more with our refactored renderbuffer classes and
ownership of attachments by the Framebuffer.
We can also consolidate the FramebufferAttachment and implementation
to a single class, and no longer need to store ref counted objects
in the Framebuffer class directly.
BUG=angle:660
Change-Id: Idcc06dfb42b47242b33494e797a0ba06d6669511
Reviewed-on: https://chromium-review.googlesource.com/201838
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c7a41049
|
2014-06-23T12:03:25
|
|
Moved D3D specific files and folders under the D3D folder.
Change-Id: I8afd67e08ee558fe94532c377d079673357a7192
Reviewed-on: https://chromium-review.googlesource.com/205229
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
4fd75c1c
|
2014-06-23T10:53:54
|
|
Fix npot Texture level 0 validation.
We were rejecting npot textures for level 0, even though it is
valid in GLES 2 for non-mipped textures to have npot size.
BUG=381495
Change-Id: Iacc3ab50d6487ecba804fd8963aa0a2ada2f1cae
Reviewed-on: https://chromium-review.googlesource.com/205220
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
|
|
2b31af29
|
2014-05-23T14:45:40
|
|
Remove the ES version check for buffer to texture copies in D3D11.
With PBOs being exposed through an extension in ES2 now, this check is
uneccessary.
Change-Id: I609a4bcd944194d104e0774e5f6ea34e072c8d9c
Reviewed-on: https://chromium-review.googlesource.com/201320
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
13f7d7dc
|
2014-06-20T13:21:27
|
|
Move FBO check from applyRenderTarget to the API.
We would traverse the applyRenderTarget path from several entry
points, which could then trigger a GL error. In-line with our
validation refactoring, move all error checks prior to executing
any state logic.
BUG=angle:571
Change-Id: I51f5bcfa41be7cdba7771eb87d5a831fa622f984
Reviewed-on: https://chromium-review.googlesource.com/203772
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
1aeb1314
|
2014-06-20T13:21:25
|
|
Move draw call primitive type check to the API.
A part of a larger refactoring to clean up the draw call
validation.
BUG=angle:571
Change-Id: I0b220d68c04524a81ca11dc58e10c90e458cabde
Reviewed-on: https://chromium-review.googlesource.com/203771
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
9efa581d
|
2014-06-20T13:21:24
|
|
Move more draw call validation to the API.
The GL expects us to reject invalid draw calls before we start
doing any work, so we can prevent internal unnecessary state
changes.
BUG=angle:571
Change-Id: Ic71218b3c2d5dc310280d3738bb1387753a10e03
Reviewed-on: https://chromium-review.googlesource.com/203770
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
ac528015
|
2014-06-20T13:21:23
|
|
Move stencil mask validation to before the draw.
ANGLE (and WebGL) restrict the back and front stencil masks
on draw, due to D3D restrictions. We would previously only
validate this if the stencil was enabled in D3D9. In D3D11
we would validate the stencil masks even if the stencil is
disabled, which is the behaviour the spec suggests.
Moving the error check to before the draw also prevents any
issue with interrupting a draw call mid-way through.
BUG=angle:571
BUG=378754
Change-Id: If7651c2be559eef64a872082e144dafa3b2c524b
Reviewed-on: https://chromium-review.googlesource.com/203299
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
febb7adc
|
2014-06-18T13:50:51
|
|
Refactor and unify HLSL varying signatures.
We would use different code for all of our input and ouput stages
in HLSL (vertex output, GS input, GS output, PS input). This was
causing an HLSL error and some bugs in certain transform feedback
instances.
Fix this by using a helper method to use compatible code for each
of the stages.
BUG=angle:667
Change-Id: Idada969a775eccb5788723e0c7fa3ade9cb2d9ec
Reviewed-on: https://chromium-review.googlesource.com/203778
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
|
|
4ace423c
|
2014-06-18T19:12:48
|
|
Disable dynamic pixel shader generation.
Always generate the same pixel shader no matter what framebuffer is bound.
BUG=angle:670
Change-Id: I3fa91ff43363d49b38a19d3815ea523946c675d5
Reviewed-on: https://chromium-review.googlesource.com/204573
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
033dae67
|
2014-06-18T12:56:28
|
|
Move OutputHLSL utility methods to other files.
OutputHLSL was become a large, unweildy file. Some were also useful
to other classes, even on the GL back-end, but were inacessible.
Refactoring patch only.
BUG=angle:466
Change-Id: Id216147122ca105c6ccdf0ba0c5f6c5038726965
Reviewed-on: https://chromium-review.googlesource.com/203459
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
05b05028
|
2014-06-11T15:31:45
|
|
Add support for EXT_sRGB.
BUG=angle:672
Change-Id: I001ff3dde7a39e545a535a399c02f3a6d91634c8
Reviewed-on: https://chromium-review.googlesource.com/203460
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
66aaf723
|
2014-06-05T12:42:07
|
|
Always store GL_DEPTH_COMPONENT32_OES as a 24-bit depth format.
Greatly simplifies the format utils by not having any internal format <->
DXGI format conversions depend on the client version. 32 bit floats and
24bit integers have very close precision in the [0,1] range so there
should be no precision issues.
BUG=angle:659
Change-Id: Ife64445ef35f77283fc4c70c98754f5e87b6fb19
Reviewed-on: https://chromium-review.googlesource.com/202507
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
cbb8412a
|
2014-06-11T15:30:32
|
|
Fix validation of LUMA formats in glGenerateMipmap.
BUG=angle:673
Change-Id: I6c106962d8a50ed8f69d208c537166a30e4f92c6
Reviewed-on: https://chromium-review.googlesource.com/203292
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
6195ef87
|
2014-06-18T10:09:43
|
|
Fix transform feedback type.
We were using the wrong enum for the varying type, as well as using
the row count of the type. We should be using the column count, but
for matrices we treat them as transposed.
BUG=angle:679
Change-Id: I0eb7f68f629a4372c6822f65b2de51ecc88a03ed
Reviewed-on: https://chromium-review.googlesource.com/204520
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
afa40f7d
|
2014-06-18T10:09:42
|
|
Fix buffer bugs affecting transform feedback.
Running dEQP-GLES3.functional.transform_feedback would trigger a few
assertion failures because of some regressions that crept into our
code.
Among the regressions is assuming we can't map a buffer that has no
underlying storage object. This is valid since we sometimes allow
setData without creating a native storage.
Additionally we should free our existing data store on a new call
to SetData, to prevent old but "new" data revisions from complicating
our storage.
BUG=angle:679
Change-Id: Icd96a8a55a2b957d29382d8b8bbd7e8a7ab0cf65
Reviewed-on: https://chromium-review.googlesource.com/204342
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
9c074a39
|
2014-06-16T10:34:02
|
|
Add queries for level and layer to FBO attachments.
BUG=angle:660
Change-Id: I03e76dd7743267dc0b57cf53a4d27cd75a5d5adf
Reviewed-on: https://chromium-review.googlesource.com/201837
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
218b6ede
|
2014-06-16T10:34:01
|
|
Add queries for object id and type to FBO attachments.
BUG=angle:660
Change-Id: Id91f6f2ae84eaefd59f9d568736bd99e3a27ef5d
Reviewed-on: https://chromium-review.googlesource.com/201836
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
2bf8b372
|
2014-06-16T17:18:51
|
|
Fix link error when using varyings with "dx_".
Varyings beginning with "dx_" would not get decorated properly, or
at all, which could cause potential internal variables and certainly
caused link errors. Fix this by no longer treating the "dx_" prefix
differently.
Also fix our naming of "dx_Position" to be consistent with our other
internal types.
BUG=angle:678
Change-Id: I03da0494a3d934d82ae7b3f8f12a576ff9bc3869
Reviewed-on: https://chromium-review.googlesource.com/203777
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
bae30a00
|
2014-06-17T10:45:02
|
|
Add a macro for unused trace variables.
This fixes the standalone 64-bit Debug build.
Change-Id: I348b71a96ada435867367e565bc84b570d2bfb67
Reviewed-on: https://chromium-review.googlesource.com/204292
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
1d4e38d3
|
2014-06-17T10:23:54
|
|
Fix compile warnings with attributes.
BUG=angle:676
Change-Id: I291c0b618854179f726cb4c969fb65182d3b591e
Reviewed-on: https://chromium-review.googlesource.com/204340
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
5bf98290
|
2014-06-06T17:19:38
|
|
Refactoring VertexArrays
BUG=angle:676
Change-Id: If17b05ab667d79adcaacfbd1811ed92c0ce47fff
Reviewed-on: https://chromium-review.googlesource.com/203294
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1e3fa74d
|
2014-06-16T10:34:00
|
|
Remove Renderer pointer from FBO attachments.
Removing the Renderer pointer is one step towards making FBO
attachments a minimal state object. Eventually we will be able
to store them as arrays instead of arrays of pointers.
BUG=angle:660
Change-Id: Idce34e06c339ecb18c60fef12d2ed911d0c4e0f6
Reviewed-on: https://chromium-review.googlesource.com/201835
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
6c7b4ada
|
2014-06-16T10:33:59
|
|
Add new ref-counted Renderbuffer class.
Renderbuffers are a clear object type in GL, and this patch adds
a more consistent state representation for them. They're managed
by the ResourceManager, and have a storage implementation similar
to Textures, but much simpler.
BUG=angle:660
Change-Id: Ia17199bb8cb570d48db42e1f28ccbcc12a902fcf
Reviewed-on: https://chromium-review.googlesource.com/201834
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
4d632d8e
|
2014-06-16T13:20:17
|
|
Fix buffer overflow error on buffer resize.
We were using the new, larger size for our buffer data copy step,
instead of the old, smaller size. This bug was causing a crash on
older nVidia drivers during normal browser usage.
Reproducible with the index-validation-large-buffer WebGL test.
BUG=angle:667
BUG=384420
Change-Id: I98ee893e0d8ba0bfc9adfe5a338da9b940248879
Reviewed-on: https://chromium-review.googlesource.com/203776
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
fb839475
|
2014-06-16T13:21:41
|
|
Fix ifdef complaints in clang
BUG=angle:677
Change-Id: Iee457dfc0990e5ffd61932b1f286f3c0208568bc
Reviewed-on: https://chromium-review.googlesource.com/203427
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
a0dc219e
|
2014-06-09T15:37:55
|
|
Re-enable MRT on D3D 10 and 10.1 cards.
BUG=angle:670
Change-Id: I88b4823f25ec28fa52831d856ff9fb836fdfc533
Reviewed-on: https://chromium-review.googlesource.com/203120
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
04fb89ad
|
2014-06-09T15:05:36
|
|
Generate pixel shader output to match the bound framebuffer.
Only generate pixel shader output variables for render targets that are
currently bound. Fixes some performance issues with D3D10 cards that were
slow to discard unused outputs.
Fixed memory leaks in ProgramBinary by refactoring the freeing of the
current state into a reset function.
BUG=angle:670
Change-Id: I40f83e15724fb9a1a9ae61363a056999f1fa26d2
Reviewed-on: https://chromium-review.googlesource.com/202977
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
fd716586
|
2014-06-06T17:09:04
|
|
Refactor draw validation functions.
We use a significant amount of code duplication in our draw
validation, that we can consolidate.
BUG=angle:571
Change-Id: I96787cbddf00d9289e368456fb85079d8acec513
Reviewed-on: https://chromium-review.googlesource.com/202975
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
250d33fb
|
2014-06-06T17:09:03
|
|
Move draw call validation to new functions.
Separate draw call validation functions will give us a flexible
base for refactoring and cleaning up all draw call validation.
BUG=angle:571
Change-Id: Ia8e3c83cfe48fedb8f2c7aef1fb282f646c66e82
Reviewed-on: https://chromium-review.googlesource.com/202974
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
cec3590a
|
2014-04-16T10:52:36
|
|
Use a Caps structure to store extension and texture format support.
Removes support for fallbacks in D3D9 texture formats. The fallback
formats did not work properly anyways.
BUG=angle:658
Change-Id: Idfa5183bf71fd8ebf4608f940f9d93177b9eff08
Reviewed-on: https://chromium-review.googlesource.com/200813
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
9c4b24a5
|
2014-06-12T13:41:17
|
|
Use commit_id.py on Windows, and handle missing git.
This allows us to delete the Windows batch file.
Changes the commit_id script to take the working directory so that it
can be called from a different working directory than the angle
repository is in.
Renames the generated commit header to angle_commit.h. This is being
written to the shared generated code directory for the entire build,
and "commit.h" is insufficiently unique.
BUG=angle:669
Change-Id: I35e80411a7e8ba1e02ce3f6a4fc54ed4dbc918f3
Reviewed-on: https://chromium-review.googlesource.com/202048
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
e09f1c82
|
2014-06-12T11:10:12
|
|
Fix crash on zero size but non-NULL bufferData.
Could cause a crash when running the WebGL CTS with Firefox.
BUG=angle:675
Change-Id: I58bf9eed622660d4702b775f368ff9cbd693197a
Reviewed-on: https://chromium-review.googlesource.com/203456
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
|
|
44fa7594
|
2014-05-30T11:50:07
|
|
Refactor platform related functionality into platform.h and tls.h.
Since libGLESv2 and libEGL will eventually be cross platform, it will be
useful to have platform defines and TLS functions that work everywhere.
BUG=angle:664
Change-Id: Ia357925a0992d82e8b446d88d32a1984d319e6e8
Reviewed-on: https://chromium-review.googlesource.com/202133
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
b6a673a0
|
2014-06-05T14:19:16
|
|
Report zero bit sizes for channels that shouldn't exist.
If the actual format has more channels than the internal format of a
framebuffer, bits counts greater than zero will be returned for channels
that should not exist. While it is not against the spec to return more
bits than exist in the format, it can be confusing for users or break
tests. get*Bits will now only return greater than zero bit counts when
the format should have the given channel.
Since this is the only location that we return information about the
"real" internal format we're using, it's safe to only make the
modifications here.
BUG=angle:653
Change-Id: I43ef4c6290c8c70737d579d7e9a2dd30d653330b
Reviewed-on: https://chromium-review.googlesource.com/202594
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
afeeda93
|
2014-06-06T13:39:12
|
|
Prevents multisample depthstencil from being bound as an SRV
BUG=381413
Multisample textures can only be bound as both depth stencil
views and shader resource views at feature level 10_1 and above.
We don't need to bind textures as SRVs if they're multisample
depth targets, so we should avoid the SRV flag in that case.
Change-Id: I28ca98bdc4a86eb5442b39ea3cf2b42aa9216aab
Reviewed-on: https://chromium-review.googlesource.com/202921
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
afc21c06
|
2014-06-04T15:29:47
|
|
Move FBO attachment code to new source file.
Since FBO attachments and Renderbuffers are semantically distinct,
make a new location for attachments to live.
BUG=angle:660
Change-Id: I51753f8a814e89641637c5d8293f7e9a573a7ba5
Reviewed-on: https://chromium-review.googlesource.com/201833
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
3c7fa226
|
2014-06-05T13:08:51
|
|
Rename Renderbuffer to FramebufferAttachment.
Part of the refactoring effort to clean up our classes for FBO
attachments and Renderbuffers.
BUG=angle:660
Change-Id: Id23df904f56499568159611b66c8922b9dce6a3d
Reviewed-on: https://chromium-review.googlesource.com/201832
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
6f38f823
|
2014-06-06T17:12:20
|
|
Fix up some validation bugs in Texture functions.
In several places we weren't handling certain errors, or were
returning the wrong error code. Several dEQP negative API
tests are affected in functional.negative_api.texture.
BUG=angle:571
Change-Id: I19d7250aab2c15d709fd591b8df90ce883f9ac60
Reviewed-on: https://chromium-review.googlesource.com/201250
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
04c68600
|
2014-06-05T09:59:52
|
|
Fix unused variable in validationES.cpp.
Broken in 560a8d889b6866d7d29d.
BUG=angle:571
Change-Id: Idb2414e11ad397cc45c2bdf5f357fd1b8e7fe6c2
Reviewed-on: https://chromium-review.googlesource.com/202602
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
560a8d88
|
2014-05-21T13:06:20
|
|
Refactor CopyTexImage validation.
Move the common validation code to a shared base function.
BUG=angle:571
Change-Id: Id70b413b408a21f0a8933cfd4a09e261e637bae1
Reviewed-on: https://chromium-review.googlesource.com/200559
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
d7e7d735
|
2014-05-27T16:10:46
|
|
Move the GL_APICALL and similar defines to the project level.
BUG=angle:658
Change-Id: Ib4fa10bb89a6658efbc20d5a763d8ec9c3a5506f
Reviewed-on: https://chromium-review.googlesource.com/201465
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a5c9a144
|
2014-05-26T16:39:33
|
|
Fix uniform bug from duplicate D3D9 shader pointers.
In D3D9, sometimes the compiler would return the same shader
pointer on different calls to compile, if the programs were
similar. Work around this quirk by storing an applied serial
for the program, so we know when to refresh uniform data.
BUG=angle:661
Change-Id: I9750ee2298701dbe3f121dac6626198d24a2d1b2
Reviewed-on: https://chromium-review.googlesource.com/201562
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
673e680c
|
2014-05-28T10:28:33
|
|
Don't allocate unused swap chain buffers
According to
msdn.microsoft.com/en-us/library/windows/desktop/bb173075(v=vs.85).aspx
the front buffer is the desktop and is not a dedicated part of the swap chain.
Thus we should only need 1 swap chain buffer instead of the currently allocated
2. Samples in the DirectX SDK also only allocate just one.
BUG=angle:662
Change-Id: If88eeab1954cbc92b39ac7cf42f924515c4b77f9
Reviewed-on: https://chromium-review.googlesource.com/201860
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
9cd1915c
|
2014-05-28T15:54:34
|
|
Fix warnings about unreferenced local variables.
BUG=skia:2272
Change-Id: Ibf03efedc662fea2a389ad2dc5af5b7b014181a8
Reviewed-on: https://chromium-review.googlesource.com/201900
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
24d8d675
|
2014-05-27T12:07:51
|
|
Fix register packing for structs in d3d9.
Fixes WebGL test misc/shader-with-array-of-structs-uniform
BUG=angle:656
Change-Id: If79a19db4d40bab9110422f7876de32e7f85e506
Reviewed-on: https://chromium-review.googlesource.com/200620
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
|
|
68fe74aa
|
2014-05-27T12:56:01
|
|
Add a compiler query for the translator output type.
This is useful for determining if we are compiling to a D3D9 or D3D11
shader outside of the internal translator classes.
BUG=angle:656
Change-Id: Ib1c1d3de569edaa2b65c24c09d05aa4dd229d3e4
Reviewed-on: https://chromium-review.googlesource.com/201564
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
893ab087
|
2014-05-16T16:56:10
|
|
Move state query validation out of Context.
Generate all GL errors in the validation helper functions, instead of
within the state manipulation logic and internals of Context.
BUG=angle:571
Change-Id: I7a3f540e2ae0f5f8c7126e2593717cc3200dd7e5
Reviewed-on: https://chromium-review.googlesource.com/200551
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
c600c8c3
|
2014-05-16T11:22:21
|
|
Fix arrays-of-struct and nested struct uniforms.
Our computation of register offsets had a few errors that
messed up nested structs and arrays of structs.
This fixes a WebGL test, as well as several dEQP tests.
BUG=angle:505
TEST=WebGL CTS 1.0.3, dEQP-GELS3.functional.uniform-api
Change-Id: Id5a0f39481e079fe5ef5ef856943dc1f91ee3639
Reviewed-on: https://chromium-review.googlesource.com/200045
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
3639892d
|
2014-05-20T14:51:53
|
|
Move all uniform validation from ProgramBinary to API layer.
This will have the contract of having a successful API call once we
call into the ANGLE internals, having successfully passed valiation.
BUG=angle:571
Change-Id: Ia8d6eccc1e42bdf9e9cc5c10094a08729b42778a
Reviewed-on: https://chromium-review.googlesource.com/200075
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
aa981bd7
|
2014-05-20T10:55:55
|
|
Refactor Uniform validation to validationES.cpp.
This patch also incidentally fixes some bugged validation in the
new ES3 unsigned int uniform API entry points.
BUG=angle:571
Change-Id: I89bd909467bd9418fe5ce3f246561765cf27a5e9
Reviewed-on: https://chromium-review.googlesource.com/200074
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
d7c7bb27
|
2014-05-20T10:55:54
|
|
Refactor UniformMatrix validation.
Move the shared validation logic to validationES.cpp.
BUG=angle:571
Change-Id: I2fb06a012703c647de2176914238b48665145c6f
Reviewed-on: https://chromium-review.googlesource.com/200073
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
82b42271
|
2014-05-20T15:38:22
|
|
Fix build warnings in x64.
A std::min/max with size_t and unsigned int.
Popped up in f98e63a54b8a2.
BUG=
Change-Id: I25f26ddbe7fb333f895be8a8dce3d3d73044c3f9
Reviewed-on: https://chromium-review.googlesource.com/200484
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|