|
2d96b9eb
|
2014-08-29T15:46:47
|
|
Use GL-like methods for InvalidateFramebuffer calls.
This will faciliate the MANGLE implementation.
BUG=angle:732
Change-Id: I0e4d569667e03305c9cca8d7c23154c70fb71eeb
Reviewed-on: https://chromium-review.googlesource.com/213854
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
43a53e24
|
2014-08-28T16:23:22
|
|
Converted ProgramBinary to use Context caps instead of Renderer
BUG=angle:731
Change-Id: I9bbce69cabf767fb5fb2c94f437a9950bc79d1aa
Reviewed-on: https://chromium-review.googlesource.com/215370
Tested-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a502c749
|
2014-08-28T17:19:13
|
|
Use the specified Program instead of current in GetUniform.
This bug slipped in with the GetUniform validation refactor.
BUG=angle:571
Change-Id: I2b87e6fe98224ba99c5b21a71d66b197fd618741
Reviewed-on: https://chromium-review.googlesource.com/214872
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
b1196687
|
2014-07-23T13:47:29
|
|
Update validation functions to use new error mechanisms.
BUG=angle:520
Change-Id: I1c64af2e57cf2d89138bd23da2b07d5873742e4e
Reviewed-on: https://chromium-review.googlesource.com/209880
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
05881a0f
|
2014-07-10T14:05:30
|
|
Add caps for transform feedback limits from table 6.34.
BUG=angle:658
Change-Id: Ifd8c620080c8de486ffb7c8f9e985be1aba516c1
Reviewed-on: https://chromium-review.googlesource.com/207376
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
3a61c321
|
2014-07-10T13:01:54
|
|
Add caps for the aggregate shader limits from table 6.33.
BUG=angle:658
Change-Id: I59d0cd131114fcb925f01d83d218a657f4498a2a
Reviewed-on: https://chromium-review.googlesource.com/207375
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0b7eef7c
|
2014-06-12T14:10:47
|
|
Removed common_includes.h reordered includes.
Since we are not using precompiled headers anymore, remove common_includes.h
so that fewer files are included in cpp files.
Reordered includes to be in the following order:
1) Local ANGLE project headers, ordered by directory in descending depth
2) GL headers
3) STL headers
This helps enforce the include-what-you-use principal by reducing the
number of STL headers unexpectedly shared between files.
This include order conflicts with some of the Google c++ style guide
which states that STL includes should be first but this helps us catch
more issues.
Change-Id: I8f7785f4ad574e253dd3c7b4fb1e54d3ce3b99fc
Reviewed-on: https://chromium-review.googlesource.com/214850
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
ea24759f
|
2014-08-28T10:37:08
|
|
Remove remnants of old PCH code.
Remove the precompiled.cpp file which was producing a build warning,
and rename the header to make it clear we no longer support PCH.
BUG=angle:
Change-Id: I944081ae477b1478ca9c18924fb02bb920d420a7
Reviewed-on: https://chromium-review.googlesource.com/214187
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f05cdee4
|
2014-08-27T15:24:07
|
|
Refactoring Shader objects (Take 2)
This change refactors shaders to no longer be dependent on D3D-only concepts.
BUG=angle:731
Change-Id: I1006112f1d31b7e41bd14bd3225ea157b7d6c6c9
Reviewed-on: https://chromium-review.googlesource.com/214467
Tested-by: Brandon Jones <bajones@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e54be46a
|
2014-08-27T22:21:45
|
|
Revert "Refactoring Shader objects"
This reverts commit 537dfde52a33d621ab1198c949a81b09a1269b2e.
Change-Id: I5eb8923ac8f78877e6e77a8cd897021e56ee004a
Reviewed-on: https://chromium-review.googlesource.com/214466
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
537dfde5
|
2014-08-20T14:04:59
|
|
Refactoring Shader objects
This change refactors shaders to no longer be dependent on D3D-only concepts.
BUG=angle:731
Change-Id: I4fc1efeba9df4f873b3d7c8ba6f67f00b6532b9c
Reviewed-on: https://chromium-review.googlesource.com/213803
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
|
|
99a1e985
|
2014-08-25T15:47:54
|
|
Move GetUniform size validation to top layer.
BUG=angle:571
Change-Id: Ie7064cf85f6a125ccd6cdf1bff89443520e2a06d
Reviewed-on: https://chromium-review.googlesource.com/212932
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
0063c517
|
2014-08-25T15:47:53
|
|
Move GetUniform validation to the validation layer.
BUG=angle:571
Change-Id: Id1b7afb22d8bd52dbf7f95f4e8cac3fc8f798596
Reviewed-on: https://chromium-review.googlesource.com/212931
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
2b97681b
|
2014-08-25T15:47:49
|
|
Extract validation from VertexDataManager.cpp to the API.
We can check for buffer overflow at draw validation time, before
processing any vertex data.
BUG=angle:571
Change-Id: I4f49629b98c17ca28e25baed74cad4ae5341b20f
Reviewed-on: https://chromium-review.googlesource.com/210647
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
900013cd
|
2014-07-07T11:32:19
|
|
Add caps from the 6.29 table.
BUG=angle:658
Change-Id: I392f581b1aea445d60f507c1fa897c4348c1a137
Reviewed-on: https://chromium-review.googlesource.com/207371
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
5d601382
|
2014-07-22T15:14:06
|
|
Simplify formatutils.h by exposing the info structures.
Removed all the separate query functions and simply expose the internal
info structures. This reduces the number of std::map/std::set operations
that were hidden behind the API.
Moved the validation tables for ES3 format combinations and effective
internal formats into validationES3.cpp so that formatutils.h only has
generic GL format queries.
BUG=angle:658
Change-Id: Ieb60d42b8eafcdb4f21dcbec130b39478ce5f7c5
Reviewed-on: https://chromium-review.googlesource.com/206835
Reviewed-by: Nicolas Capens <capn@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
cfaaf72f
|
2014-07-31T10:47:54
|
|
Fix CopyBufferSubData.
We were passing the arguments from the gl::Buffer stub to the
implementation class, which was breaking the call.
Also clean up a few comments.
BUG=angle:709
Change-Id: Ib92a36d1c52d60d8929f567d0daf54e9d6a2d127
Reviewed-on: https://chromium-review.googlesource.com/210641
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nicolas Capens <capn@chromium.org>
|
|
5f4c4636
|
2014-07-03T13:46:52
|
|
Use the FormatCaps for multisample validation and queries.
BUG=angle:658
Change-Id: Ic9fa53fb62d7eff62f07b68d7ddada461ecad859
Reviewed-on: https://chromium-review.googlesource.com/206832
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
bfdea66b
|
2014-07-23T14:16:32
|
|
Remove try-catch blocks from entry points.
BUG=angle:700
Change-Id: I036901c397053a75677923304d7e1ed697c82aa2
Reviewed-on: https://chromium-review.googlesource.com/209570
Reviewed-by: <ehsan@mozilla.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
45c785d3
|
2014-05-13T14:09:34
|
|
Move validation of EndQuery out of gl::Context.
BUG=angle:571
Change-Id: I8913eb1b565a4282d9d84d06933e8b854453f17d
Reviewed-on: https://chromium-review.googlesource.com/199349
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
db2f14c0
|
2014-05-13T13:56:30
|
|
Refactor BeginQuery validation out of gl::Context.
Part of our effort to relocate all validation logic to a preliminary
pass outside of our state tracking or rendering layers.
BUG=angle:571
Change-Id: I5241daef6249910a781e78fd066debe0ab1d3f2b
Reviewed-on: https://chromium-review.googlesource.com/199348
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
de0ec75e
|
2014-05-05T15:10:38
|
|
Replace catch blocks from std::bad_alloc to ellipses.
It seems we weren't catching bad_alloc despite using the correct syntax.
Using ellipses solves the problem, and since we only expect bad_alloc
it does the equivalent result of catching and returning out of memory.
I'm currently not aware of the proper syntax to catch bad_alloc.
BUg=angle:634
Change-Id: Ib3154546d1b72d180cb565c71f35716696863cdd
Reviewed-on: https://chromium-review.googlesource.com/198245
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
876dc724
|
2014-05-01T17:10:24
|
|
Fix 64-bit build failures.
Update the BufferStorage classes to use size_t for all sizes and offsets.
BufferStorage9 now uses a std::vector to manage its memory.
BUG=angle:631
Change-Id: Iea4e7b33ede59a5b9c6a1245690c4b7865096fc3
Reviewed-on: https://chromium-review.googlesource.com/197819
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
c41e42d4
|
2014-04-28T10:58:16
|
|
Early-out of *TexSubImage* calls when the width, height or depth is zero.
BUG=angle:622
Change-Id: I74ef5b684151895b24a15fa8f799a633174622c2
Reviewed-on: https://chromium-review.googlesource.com/197270
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
f67115ce
|
2014-04-22T13:14:05
|
|
Fix validation in TexSubImage.
We weren't properly checking the x and y offsets against the texture
boundary, and were in some cases producing D3D errors with out-of-bounds
writes. This was popping up in IncompleteTextureTest. The test itself
was also bugged.
BUG=angle:610
Change-Id: Id58cac088fed03cae2aabbf00bce234f17208753
Reviewed-on: https://chromium-review.googlesource.com/195410
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
8de68287
|
2014-04-04T11:10:27
|
|
Implement state tracking for BASE/MAX_LEVEL, and MIN/MAX_LOD.
BUG=angle:596
Change-Id: I773720a19b766c7a6930967983db0a34e84f2790
Reviewed-on: https://chromium-review.googlesource.com/193235
Tested-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
3b3ad1fe
|
2014-03-05T14:35:01
|
|
Remove excess dereferences and casts.
The behaviour of dereferencing an array on the stack is the same as simply
using the array but it is counter-intuitive, error prone and requires a
cast to fit the required type.
Change-Id: Ib14e902293cf6dc71aaf944d57f53ea895a680ab
Reviewed-on: https://chromium-review.googlesource.com/188875
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
916e769a
|
2014-03-27T16:58:22
|
|
Adds support for EXT_map_buffer_range
BUG=angle:581
Change-Id: I0ab637db35afd51ff4c516bb97e954f4f2cdad3d
Reviewed-on: https://chromium-review.googlesource.com/191710
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
b3801744
|
2014-03-27T14:59:19
|
|
Adds support for OES_mapbuffer
BUG=angle:581
Change-Id: I05824051789a77c8169ec5830731e6155c507fc4
Reviewed-on: https://chromium-review.googlesource.com/191650
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
48dcae7b
|
2014-02-05T16:28:24
|
|
Added transform feedback shader generation.
BUG=angle:495
Change-Id: I41a0177fd3eb43c9f4ab9e54faeadac3eb483c2c
Reviewed-on: https://chromium-review.googlesource.com/185035
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1b6edcb6
|
2014-02-03T14:27:56
|
|
Add remaining transform feedback queries.
BUG=angle:493
Change-Id: I8841af50dcb90e7fb8a811b95d015bfdd2c5d226
Reviewed-on: https://chromium-review.googlesource.com/191035
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
1e40d1c9
|
2014-03-18T22:41:22
|
|
Revert "Add remaining transform feedback queries."
This reverts commit 4251b75830f91df68df80a096a0713830c73b1cc.
Change-Id: I95afebcaf91ee38a121df20f403eb06f19b2510a
Reviewed-on: https://chromium-review.googlesource.com/190560
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
4251b758
|
2014-02-03T14:27:56
|
|
Add remaining transform feedback queries.
BUG=angle:493
Change-Id: Ibeae41da2b83ab63d237912602ba5d2aad0bbec2
Reviewed-on: https://chromium-review.googlesource.com/185036
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
26e9195f
|
2014-03-05T15:01:27
|
|
Refactor ReadPixels validation.
Move ReadPixels error generation out of the implementation and into
the API level.
BUG=angle:571
Change-Id: I0b32294f359fedd13d1af2c95baf37a3e5ac1d5b
Reviewed-on: https://chromium-review.googlesource.com/188014
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
70656a64
|
2014-03-05T15:01:26
|
|
Implement queries and enums for buffer mapping.
GetBufferPointerv, GetBufferParameteri64v, and new values
for GetBufferParameteriv.
BUG=angle:565
Change-Id: I179a3193987b2bff1b0628e47f6a0d627541b0cf
Reviewed-on: https://chromium-review.googlesource.com/188203
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
7a5f738b
|
2014-03-05T15:01:24
|
|
Implement buffer map related entry points and errors.
BUG=angle:565
Change-Id: I14cee4eec032d4b6b8d9479da4234b81e4ec6bec
Reviewed-on: https://chromium-review.googlesource.com/188202
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
8c96d58a
|
2014-03-05T15:01:23
|
|
Add helper methods for buffer enum tagets.
A query helper method in Context and a validation helper
method reduce code redundancy quite a bit.
BUG=angle:565
Change-Id: I96b9ecc4614e7e31240e31594223e8b9636d22c2
Reviewed-on: https://chromium-review.googlesource.com/188201
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
eeba6e1e
|
2014-02-03T13:12:30
|
|
Added methods for applying the current transform feedback buffers.
BUG=angle:495
Change-Id: I2d9fbf9c245bc519b8c5a724ca3912aaa7a23d97
Reviewed-on: https://chromium-review.googlesource.com/185034
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
c8058451
|
2014-02-03T12:04:11
|
|
Add functionality to create and destroy TransformFeedback objects.
BUG=angle:491
Change-Id: I3ee3c2aec1878ad656a8f522943a29fea6f7e215
Reviewed-on: https://chromium-review.googlesource.com/185033
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
496123fd
|
2014-02-12T11:33:51
|
|
Implement EXT_blend_minmax.
BUG=angle:555
Change-Id: I1ae6a9783e718d16ee08bda5463f11cd52ad0967
Reviewed-on: https://chromium-review.googlesource.com/186123
Tested-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
|
|
61b54433
|
2014-02-18T15:27:19
|
|
Fix unsized formats in GenerateMipmap.
We had accidentally blocked mipmap generation for all unsized
formats in ES3, because they were marked as non-renderable.
The spec specifically allows for mipmaps with unsized formats
in GenerateMipmap.
BUG=angle:550
Change-Id: Iee7eddd011f4fe86b690422723620593f8049ba6
Reviewed-on: https://chromium-review.googlesource.com/186971
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
0aa84f63
|
2014-02-13T13:17:23
|
|
Merge 'Tie program binary version to commit hash.'
Port changes from master branch with commit hash embedding
to the development branch.
BUG=angle:529
Change-Id: I307bf44103913aaaeb875a2e3ade1fab77838c48
Reviewed-on: https://chromium-review.googlesource.com/186390
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
32d508e2
|
2014-02-11T09:39:48
|
|
Fix checking for a NULL pointer after using the pointer.
Change-Id: I0ead14916ec677c97afb53f4c31a903e71fbc70f
Reviewed-on: https://chromium-review.googlesource.com/185862
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
37dde692
|
2014-01-31T16:34:54
|
|
Add support for transform feedback queries.
Change-Id: I0aab43b146f87259898db57acb9f74fdbfdb1b96
Reviewed-on: https://chromium-review.googlesource.com/184580
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
0550d038
|
2014-01-30T11:29:07
|
|
Implement GL_RASTERIZER_DISCARD.
BUG=angle:498
Change-Id: Ib60c39e206003ae67c93769e35f7f9ef790ce9f4
Reviewed-on: https://chromium-review.googlesource.com/184396
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
8d6a0024
|
2014-01-31T16:38:31
|
|
Fixed missing break statement.
Change-Id: I83e3091243be442eafa4d16e4a4ce247a326c493
Reviewed-on: https://chromium-review.googlesource.com/184570
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
|
|
3810bee3
|
2014-01-21T16:47:12
|
|
Add the missing GL_DEPTH enum to the fbo attachment query.
This enum is only availabe in GLES 3. We were failing a dEQP state
query test (fbo.draw_framebuffer_default_framebuffer)
Change-Id: I4cfb07b8597899561b8cc7956a9eb4cd4b0a99a8
Reviewed-on: https://chromium-review.googlesource.com/181782
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
1fc7e2c5
|
2014-01-21T16:47:10
|
|
Refactor validation of FramebufferRenderbuffer.
Consolidate a lot of duplicated code into helper methods. Also
move GetTargetTexture to the context class.
Change-Id: I8e3990a5e3c1976cb533941d0a0946466accec30
Reviewed-on: https://chromium-review.googlesource.com/181556
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
55856b16
|
2014-01-02T13:59:50
|
|
Clean up state query methods.
Consolidate a lot of the code duplication in GetIntegerv, GetFloatv,
GetBooleanv and GetInteger64v.
BUG=angle:540
Change-Id: I7b4a5803ea76e5eeb0ebf25c5caadec4c647b485
Reviewed-on: https://chromium-review.googlesource.com/180971
Commit-Queue: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
79f2f45c
|
2013-12-19T11:13:02
|
|
Fix allowing ES3 enum queries to call through to ES2 contexts.
In some cases we would not validate the enums against the context version,
allowing the app to call through to unimplemented features.
BUG=angle:540
Change-Id: Ic89422a3a48882314c054f133961af0b4d8d739a
Reviewed-on: https://chromium-review.googlesource.com/180970
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Commit-Queue: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
bc90a480
|
2013-09-17T16:51:27
|
|
Added TEXTURE_SWIZZLE_* parameters to the texture sampler state and API queries.
Change-Id: I20aff392ec4cd9e49424afae94a862fdd8eef9b8
Reviewed-on: https://chromium-review.googlesource.com/177030
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Commit-Queue: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Shannon Woods <shannonwoods@chromium.org>
|
|
51a94370
|
2013-10-24T17:49:43
|
|
Replace API queries of immutable texture level count with a specialized function.
TRAC #23978
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
|
|
eef52cc6
|
2013-10-16T15:07:39
|
|
Fix mis-printed type in event message.
TRAC #23785
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
|
|
005df41f
|
2013-10-16T14:12:50
|
|
Use GLenum instead of GLint to store internal format variables.
TRAC #23785
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
|
|
ba4f10a3
|
2013-10-10T15:12:20
|
|
Support pixel unpack buffers in TexSubImage3D.
TRAC #23847
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
|
|
01c21d28
|
2013-09-24T11:52:16
|
|
Fix incorrect targets for TexStorage2D with cube maps.
TRAC #23913
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
|
|
c1f8b16b
|
2013-10-07T10:46:38
|
|
Move validation of API errors out of Texture*::generateMipmaps() to the API.
TRAC #23959
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
|
|
35d1501b
|
2013-10-07T10:46:37
|
|
Clean up the validation logic in glGenerateMipmap by using the generic base format property methods.
TRAC #23959
Signed-off-by: Shannon Woods
Signed-off-by: Geoff Lang
|
|
33f9c2ef
|
2013-10-07T10:46:36
|
|
In GenerateMipmap, determine if texture is a compressed or depth texture via generic methods instead of from the typed class.
Part of GenerateMipmap cleanups.
TRAC #23959
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
|
|
efb2a6ff
|
2013-09-24T10:22:42
|
|
Add the proper API errors for pixel unpack buffers.
1. For overflowing the currently bound pixel unpack buffer in TexImage and TexSubImage calls.
2. Enforce unpack buffer offset alignment for TexImage and TexSubImage calls.
We'll have to check for currently mapped buffers when we implement map.
TRAC #23842
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
|
|
88f18f45
|
2013-09-18T14:36:19
|
|
Use the context's PixelUnpackState as an argument to Texture's implementation of setImage and subImage.
We need to access the current unpack buffer for our implementation of PBOs.
TRAC #23840
Signed-off-by: Geoff Lang
Signed-off-by: Shannon Woods
|
|
42359ca9
|
2013-08-21T13:25:17
|
|
Implemented glClearBuffer*
TRAC #23475
Author: Geoff Lang
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
|
|
0b83323d
|
2013-08-21T10:13:29
|
|
Perform validation of glClear parameters at the API level.
TRAC #23475
Author: Geoff Lang
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
|
|
646559fe
|
2013-08-15T11:08:15
|
|
Add support for the remaining ES3 framebuffer attachment parameter queries.
TRAC #23474
Author: Geoff Lang
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
|
|
15934d52
|
2013-08-19T14:28:49
|
|
Adds API-level functionality for indexed query functions
TRAC #23468
Author: Shannon Woods
Signed-off-by: Jamie Madill
Signed-off-by: Nicolas Capens
|
|
34dbb6f5
|
2013-08-05T15:05:47
|
|
Capitalized the first letter of all validation function names.
TRAC #23629
Signed-off-by: Nicolas Capens
Signed-off-by: Shannon Woods
Author: Geoff Lang
|
|
e8ebe7f6
|
2013-08-05T15:03:13
|
|
Refactored entry point validation functions into their own files.
TRAC #23629
Signed-off-by: Nicolas Capens
Signed-off-by: Shannon Woods
Author: Geoff Lang
|
|
7e9ee232
|
2013-08-05T10:18:42
|
|
Add GL_DEPTH_STENCIL_ATTACHMENT attachment handling to glFramebufferRenderbuffer.
TRAC #23668
Signed-off-by: Nicolas Capens
Signed-off-by: Shannon Woods
Author: Geoff Lang
|
|
4150b35b
|
2013-08-05T14:14:43
|
|
Fixed ES3 incorreclty not allowing 2D array textures to accept depth stencil formats.
TRAC #23669
Signed-off-by: Nicolas Capens
Signed-off-by: Shannon Woods
Author: Geoff Lang
|
|
0fe1949d
|
2013-07-25T17:04:31
|
|
Updated gl::IsInternalTextureTarget to have a client version parameter.
TRAC #23470
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
Author: Geoff Lang
|
|
3ed0c484
|
2013-07-25T17:03:18
|
|
Refactored validation for glFramebufferTexture* and implemented glFramebufferTextureLayer.
TRAC #23470
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
Author: Geoff Lang
|