|
876429b7
|
2017-04-20T15:46:24
|
|
Update gl2.h and update entry points.
Some method signatures were updated. Types like GLclampf and GLvoid
were replaced with other equivalents.
BUG=angleproject:1309
Change-Id: I05e8e2072c5a063d87ad96a855b907424661e680
Reviewed-on: https://chromium-review.googlesource.com/475011
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e1fd475b
|
2017-04-26T16:46:48
|
|
Apply release asserts config to all dependents.
Our test sets (e.g. angle_perftests) were not having the config
applied.
BUG=angleproject:747
Change-Id: Idd3a2cba214d38a923c1936787f9dec4bd016326
Reviewed-on: https://chromium-review.googlesource.com/487730
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2aadbfc3
|
2017-04-27T10:11:27
|
|
Expand the MipmapTestES3.BaseLevelTextureBug supression to all AMD OpenGL.
BUG=705865
BUG=715875
Change-Id: Ib4d83a8c9cb3f65ac8517bfd3ff7c38794dd0654
Reviewed-on: https://chromium-review.googlesource.com/488661
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
9c9b40ac
|
2017-04-26T16:31:57
|
|
Use parameter cache to skip passing IndexRange.
For DrawElements et al., we can use a simple design to store
entry point parameters and compute index ranges lazily. This allows
us to compute the index range outside of the validation layer.
Fixing this will let us implement a few things, such as the no error
extension. It will also allow auto-generation of the entry points,
since we won't have to have special cases for certain entry
points. It will also help fix the syncState layering problem. Now the
cached parameter helper (which is owned by the Context) can make the
impl layer calls, instead of the validation layer calling the impl
directly.
We use a small array in Context to gather parameters in a generic
way without reallocation on call. We also check type safety by storing
a type info struct which can handle inheritance between type classes.
Optional variables for the cache determine when to re-compute values.
The intent with gatherParams is to call this in every entry point, and
have in most cases be a no-op. In some cases like for IndexRange, we
store some parameters for later use. The inheritance scheme enables
auto-generation of the entry points by keeping signatures similar.
BUG=angleproject:747
Change-Id: I871e99e1334cf6e61ef8da62fde3ced094903f8a
Reviewed-on: https://chromium-review.googlesource.com/474119
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
25e297e9
|
2017-04-20T17:01:20
|
|
D3D11: Alias dirty buffer channel bindings.
The types for this were a bit disorganized. Clean this up.
BUG=angleproject:1635
Change-Id: I669d347697e0c7c5b06ed7165fa0997c375e876e
Reviewed-on: https://chromium-review.googlesource.com/483315
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
29f148b0
|
2016-11-23T21:05:36
|
|
Support Vulkan on Linux as well as Windows.
Refactor display and surface classes into Win32 and Linux parts and
add Linux parts to gn and gyp builds.
BUG=angleproject:1668
Change-Id: I2a7d29c35f4f42fa0035bd97938d3770f3627672
Reviewed-on: https://chromium-review.googlesource.com/412426
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
6d1ccf01
|
2017-04-24T14:09:58
|
|
Re-order the error generation for ES3 TexImage calls.
Explictly check if the internal format enum is ever valid before checking
if it is valid in combination with other parameters. Some WebGL tests
expect a certain order for generated errors.
BUG=angleproject:2009
TEST=conformance2/textures/misc/tex-input-validation
Change-Id: I31166a78d00629f8281ef53eced72575497ae448
Reviewed-on: https://chromium-review.googlesource.com/486099
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
66c5e619
|
2017-04-25T11:40:03
|
|
TextureD3D: Mark images dirty after deleting the texture storage.
When a texture storage is deleted, it copies its mip levels back into
images and marks them clean. Marking the images dirty before deleting the
texture storage would have no effect.
BUG=705865
Change-Id: Ib4c0fc9bea1236fc31963d1b7db814785bc54abc
Reviewed-on: https://chromium-review.googlesource.com/486107
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f81ce4a3
|
2017-04-24T10:49:17
|
|
Refactoring: replace NULL by nullptr for pointers (3rd CL).
This CL mainly handles passing/returning NULL to/from a function.
BUG=angleproject:2001
Change-Id: I34802f792e710e3d7ff697cbe4701dc1bf5ab009
Reviewed-on: https://chromium-review.googlesource.com/485060
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f5841774
|
2017-04-19T16:31:11
|
|
Move Vulkan layer json files.
Put the Vulkan layer JSON files in the same place as the gn build puts
them, for consistency.
Change-Id: I6294372ce34ed20da357a8b8ea83018c4e748c37
Reviewed-on: https://chromium-review.googlesource.com/475074
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
|
|
d75dd26c
|
2017-04-20T17:01:19
|
|
Make ImageSibling inherit from FramebufferAttachment.
Only currently Renderbuffers and Textures can be bound with images.
This makes the relationship explicit, and also ensures that an image
sibling can determine if it's been initialized or not, which is
important for the robust resource init extension with Textures and
EGLImages.
BUG=angleproject:1635
Change-Id: Ie05319cfbfda50f1497cab3f0b9ca64e1bff8955
Reviewed-on: https://chromium-review.googlesource.com/469154
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
151d5de6
|
2017-04-13T09:52:23
|
|
Enable MSAA for texture client buffers
Enhancement to the EGL_ANGLE_d3d_texture_client_buffer extension to
allow use of a shared D3D texture that can be multi-sampled.
BUG=angleproject:1917
Change-Id: Iaf59bbd575a5dfb29345f55b549bc4017bf2d7d0
Reviewed-on: https://chromium-review.googlesource.com/446907
Reviewed-by: Bryan Bernhart <bryan.bernhart@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
331f6dbd
|
2017-04-13T13:57:59
|
|
Tighten workaround on unary minus for Intel D3D drivers
This driver bug has been fixed in 20.19.15.4624.
BUG=chromium:644033
Change-Id: I6f621d7c4d4b823da29255f869af84097f4f7c2c
Reviewed-on: https://chromium-review.googlesource.com/476118
Reviewed-by: Yunchao He <yunchao.he@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
966c940b
|
2017-04-18T12:38:27
|
|
Fix validation for compressed texture functions.
* No validation that the format matched the texture level's format for
SubImage calls.
* WebGL does not allow the base level to be smaller than the block size.
* ANGLE used to allow mips of size 3 when this is disallowed.
* Don't early-exit validation when dimensions are 0, imageSize validation
happens later.
TEST=conformance/extensions/webgl-compressed-texture-s3tc
BUG=angleproject:1998
Change-Id: I05f5a0b5180344d67b036fdecc17edd2256e85ab
Reviewed-on: https://chromium-review.googlesource.com/480442
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
e491578f
|
2017-04-12T15:19:07
|
|
WebGL: Validate the read and write buffers for BlitFramebuffer are unique.
TEST=conformance2/rendering/blitframebuffer-test
BUG=angleproject:1990
Change-Id: I0caeaac824f1689867134f34f74e5ef2c2f1b016
Reviewed-on: https://chromium-review.googlesource.com/475990
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
94ba36a7
|
2017-03-31T13:58:55
|
|
Only bind that native GL texture if it should be complete.
If extensions such as OES_texture_float_linear are not exposed but the
native drive still supports them, we don't want to bind the native texture
and instead bind a texture that is known to sample like the incomplete
texture.
BUG=angleproject:1959
Change-Id: I610dbd93bb566c8eb2166488a7494b74da4aa327
Reviewed-on: https://chromium-review.googlesource.com/465090
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
780612a5
|
2017-04-21T12:58:53
|
|
Fix the zlib build on 64-bit Windows.
BUG=angleproject:2004
Change-Id: Ifb4f19abbbb1b6724d2af5b0a5dfb005b49ae3d1
Reviewed-on: https://chromium-review.googlesource.com/483906
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
76b8f469
|
2017-04-21T12:23:40
|
|
Use a shared state for egl::Image.
This allows us to stop duplicating some information in the impl.
BUG=angleproject:1635
Change-Id: If8f7d2418571c3254729f48c463814ec18ed2644
Reviewed-on: https://chromium-review.googlesource.com/469153
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
f6b986c8
|
2017-04-18T14:52:31
|
|
Refactor TextureStorage11
The CL includes below changes:
1. Change bool isAssociatedImageValid to void verifyAssociatedImageValid
since we always required that the validation check should never be false.
So ASSERT() is enough. Same to
Image11::isAssociatedStorageValid->Image11::verifyAssociatedStorageValid.
2. Remove the unnecessary if checking after ASSERT
3. Use override instead of virtual if the function is virtual and
is overriding a virtual function from the base class.
BUG=angleproject:2006
Change-Id: I036666ae1ed4bfcaa8cef9e0e9626d375cd81a27
Reviewed-on: https://chromium-review.googlesource.com/480015
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
d22b8f72
|
2017-04-20T21:06:09
|
|
Fix zlib compile.
The zlib roll 50a8d0e0 broke the Window/gyp/ninja build.
Suppress C4245.
BUG=angleproject:2004
Change-Id: Ifdac7a1ec3162c8a296f6d4919a2b6f83bdf1e50
Reviewed-on: https://chromium-review.googlesource.com/483802
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
4f285443
|
2017-04-21T12:15:49
|
|
Refactoring: replace NULL by nullptr for pointers (2nd CL).
This CL mainly handles the pointer comparisons (== or !=).
BUG=angleproject:2001
Change-Id: I25ac3b61032e7ad91459a1c6541cadc87cf9b160
Reviewed-on: https://chromium-review.googlesource.com/483935
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
407d4e77
|
2017-04-12T14:54:11
|
|
Perform ANGLE_instanced_arrays validation for WebGL contexts.
TEST=conformance2/rendering/instanced-arrays
BUG=angleproject:1988
Change-Id: Ie513dcc7b1af540764fd5fe3790d3e6e3457f048
Reviewed-on: https://chromium-review.googlesource.com/475136
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
ff5c63ee
|
2017-04-12T15:26:54
|
|
Allow dynamically enabling shading language extensions.
GL_OES_standard_derivatives, GL_EXT_shader_texture_lod and GL_EXT_frag_depth.
TEST=conformance2/extensions/promoted-extensions-in-shaders
TEST=conformance/glsl/misc/shader-with-dfdx.frag
BUG=angleproject:1719
Change-Id: Ic0bd50c6a222940cc8de903f88f19a4f5ee08088
Reviewed-on: https://chromium-review.googlesource.com/476030
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
de32c2e1
|
2017-04-20T15:16:33
|
|
dEQP: Remove shader compile/link timing output.
This should reduce our log sizes significantly. Will upstream the fix
to dEQP and then remove the custom workaround once we roll.
BUG=chromium:713196
Change-Id: I0ddb678bf5256bd5f05782ca40d49501e84e4cae
Reviewed-on: https://chromium-review.googlesource.com/483047
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4fd95d54
|
2017-04-05T11:22:18
|
|
Stop using FramebufferAttachment::Target.
Target includes the binding (DEPTH/STENCIL/COLOR), which is not useful
for many operations. Simplify this to just passing the mip/layer.
This allows us to stop using this internal struct in other classes.
BUG=angleproject:1635
Change-Id: Ic5a11781bf45fe7835437fa1e363c190b876d453
Reviewed-on: https://chromium-review.googlesource.com/469152
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ba992ab5
|
2017-04-19T11:18:14
|
|
Fix HLSL 3 generation of shaders with texture LOD.
BUG=angleproject:2002
Change-Id: If8e6bbaeb5769341f92f05025eafb6a202fec437
Reviewed-on: https://chromium-review.googlesource.com/481680
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
50a8d0e0
|
2017-04-20T10:55:28
|
|
Roll zlib to fix a warning on Mac
BUG=
Change-Id: Iaef87582aba57632d5a696fdf9ff09c4fab5c75a
Reviewed-on: https://chromium-review.googlesource.com/483619
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
d7297bfb
|
2017-04-19T15:27:10
|
|
Code refactoring: replace NULL by nullptr for pointers.
This is the frist change to replace NULL by nullptr.
It handles the initialization and assignment for pointers.
BUG=angleproject:2001
Change-Id: I6d4bb198a72e38b867cd2f65a6e6f2f61339a0b5
Reviewed-on: https://chromium-review.googlesource.com/481600
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
4181bc97
|
2017-03-17T14:55:25
|
|
Fix bug in updating vertex attribs with client memory pointers
In DEBUG version, when using OpenGL back-ends, ANGLE may meet an
INVALID_OPERATION error from driver when attemping to update an
attribute which is disabled and using a client memory pointer.
This patch fixes this bug by skipping such vertex attributes when
updating them to driver. With this patch the process to update
vertex attributes should be:
(1) For enabled attributes using client memory pointer:
update by streaming mode in streamAttributes()
(2) For disabled attributes using client memory pointer:
just label them dirty and skip them
(3) For attributes using buffer objects:
update with vertexAttrib*Pointer
BUG=angleproject:1942
Change-Id: I57043e5904eb4a342fa22d449d98a957010170d6
Reviewed-on: https://chromium-review.googlesource.com/456747
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
ca27139e
|
2017-04-05T12:30:00
|
|
Key the format tables on internal format and type.
Keying the format tables on internal format alone is not enough to fully
validate the unsized formats which require additional type information.
This CL has no functional changes, it just splits the tables and updates
the calls to GetInternalFormat info to provide type information when the
format is not sized.
BUG=angleproject:1523
BUG=angleproject:1958
BUG=angleproject:1228
Change-Id: I37e5201e7f54fa8eca01b8a6e64b11a6b94484e7
Reviewed-on: https://chromium-review.googlesource.com/468449
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8162926b
|
2017-04-19T11:56:01
|
|
Never add declarations without children to the AST
When block nodes were being created for loop bodies that didn't have
braces in the parsed source, the code didn't check if the loop body
was a declaration node without children. Always use appendStatement()
for adding statements to a block, so that declaration nodes without
children don't end up in the AST.
Similarly make sure that loop init nodes aren't declarations without
children.
BUG=chromium:712550
TEST=angle_end2end_tests
Change-Id: I5e79b700fe6158fa2422fcf4cd13818b2bd24863
Reviewed-on: https://chromium-review.googlesource.com/481660
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
0c0dc345
|
2017-03-24T14:18:51
|
|
Vulkan: Defer command buffer submission.
This packs more rendering commands into fewer command buffers.
Instead of using a single command buffer per-command, create a
buffer and record commands into it until we need to present the
frame. More sophisticated management will be necessary in the future
when we can do other types of copied and read-back from image data.
This also reduces the number of Fences we use for checking if the
device is finished with resources. Instead of creating a Fence
per-command-buffer, it creates one per-swap.
BUG=angleproject:1898
Change-Id: I9c6033bc04289fd8f936c0df914afc51fc434b29
Reviewed-on: https://chromium-review.googlesource.com/445800
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
43915883
|
2017-04-13T10:07:14
|
|
Lazily initialize the D3D device in DisplayWGL.
Change-Id: I3afe4c0619128d7063f49ed8c295d4b814193f84
Reviewed-on: https://chromium-review.googlesource.com/476930
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
6de51858
|
2017-04-12T09:53:01
|
|
Optimize angle::BitSetIterator.
Adds a new custom bitset template to handle packing as many bits as
possible into a single variable. Intelligently select the right class
depending on platform features and bit sizes.
For now, always use a packed 64-bit set on 64-bit, instead of using
a 32-bit set for smaller bitsets.
BUG=angleproject:1814
Change-Id: I3ffef815c15515555833f6fc9302d8a4eee5423b
Reviewed-on: https://chromium-review.googlesource.com/471827
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a0e0aebb
|
2017-04-12T15:06:29
|
|
Validate that framebuffer attachments all have the same size for WebGL.
TEST=conformance2/rendering/draw-buffers
BUG=angleproject:1989
Change-Id: Ifcbc766dea99a8361261713fde7a6b6ad724fd55
Reviewed-on: https://chromium-review.googlesource.com/475083
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e4b753ca
|
2017-04-05T11:22:18
|
|
Texture: Add helper to query desc from index.
BUG=angleproject:1635
Change-Id: I0e4b57119bf23d656446a5ded76ba2f62ea74d7f
Reviewed-on: https://chromium-review.googlesource.com/469151
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
b8126691
|
2017-04-05T11:22:17
|
|
Framebuffer: Add an update attachment helper function.
This will allow us to set that certain attachments need to be
initialized in a single place.
BUG=angleproject:1635
Change-Id: I98c10206ef27670847969c726a8620c4d26400d6
Reviewed-on: https://chromium-review.googlesource.com/469150
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
b2931601
|
2017-04-11T15:58:57
|
|
Add robust entry point for CompressedTex(Sub)Image
BUG=angleproject:1354
Change-Id: I925db827c4ccf4e6f037a058f8f6b960a56047e1
Reviewed-on: https://chromium-review.googlesource.com/474964
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b36e5393
|
2017-04-12T15:45:13
|
|
D3D: Return an empty string when the translated shader source is empty.
TEST=conformance/extensions/webgl-debug-shaders
BUG=angleproject:1991
Change-Id: Id210ec43501c4e4f3db2c8a0aec25e1d20b18d33
Reviewed-on: https://chromium-review.googlesource.com/475992
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
33151a53
|
2017-04-13T09:58:17
|
|
Code refactoring: remove unneeded variables
BUG=angleproject:1996
Change-Id: If635bf836251f90ec40d791b5f80d43f751aad9b
Reviewed-on: https://chromium-review.googlesource.com/476079
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d1bed175
|
2017-04-12T17:35:54
|
|
Reverse the order of array variable initialization
This works around a bug on Adreno 3xx in which array varying variables
are assigned in the reverse order.
BUG=chromium:709317
Change-Id: I86a345747f293ca8a2cb9a281bd1b752e66dcd3a
Reviewed-on: https://chromium-review.googlesource.com/475979
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c1d770e8
|
2017-04-13T17:31:24
|
|
Refactor remaining GLES 2.0 entry points.
This will pave the way for several features, like auto-generation.
BUG=angleproject:747
Change-Id: Ic390ac412f4e6b61346629093f185a4c07ea0284
Reviewed-on: https://chromium-review.googlesource.com/474118
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
3c68079c
|
2017-04-05T15:04:36
|
|
Update deqp expectations file for default fbo tests.
Deqp test case dEQP-GLES31.functional.fbo.no_attachments.maximums.all
fails on nvidia driver.
BUG=angleproject:1594
TEST=dEQP-GLES31.functional.fbo.no_attachments.*
TEST=dEQP-GLES31.functional.fbo.completeness.no_attachments
Change-Id: I31db12b10b4fb915135b12912738d9c14de1e585
Reviewed-on: https://chromium-review.googlesource.com/468649
Commit-Queue: Yizhou Jiang <yizhou.jiang@intel.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a9042d3c
|
2017-03-17T08:50:45
|
|
ES31: Add array element transformfeedback
This enhances the PackedVarying to be either one element of array, or
whole array. Correspondingly the VaryingPacking is expanded to pack it
properly.
BUG=angleproject:1950
Change-Id: I0529d7ac4367d42b2b433410fbf08351412aada8
Reviewed-on: https://chromium-review.googlesource.com/459115
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
e839078e
|
2017-04-06T14:34:43
|
|
compiler: Prune literal statements when outputting ESSL
The ESSL output doesn't have a default precision for floats, this causes
float literal statements to not have any precision defined, which is an
error. We fix this by removing literal statements as they are dead code
anyway.
BUG=angleproject:1967
Change-Id: I498f4f8495f854240ee8a2182415bf982c5166a4
Reviewed-on: https://chromium-review.googlesource.com/470268
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
6e60d6bf
|
2017-04-12T12:59:04
|
|
Don't allow deleting the 0 transform feedback.
BUG=709786
Change-Id: I956cae994241a650869cee45c471074d08e79a5d
Reviewed-on: https://chromium-review.googlesource.com/475131
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
67f5ce42
|
2017-04-12T10:32:36
|
|
Fix the texture completeness cache.
Two silly mistakes were landed in 9aded1:
* The cache was not updating the sampler state it was using to compare
against new ones.
* The SamplerCompletenessCache entry was being copied and not updated.
BUG=709980
Change-Id: I1914ed30e24b9e48c4504da164f013a637a0b6c2
Reviewed-on: https://chromium-review.googlesource.com/475752
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
1e5499db
|
2017-04-05T11:22:16
|
|
Refactor Signal utils into template classes.
This will allow us to pass on extra information to the receiving end,
such as the specific texture levels that are dirty.
BUG=angleproject:1635
Change-Id: Idb7ca1d625499e50e7712c458b694f6e9bfc0595
Reviewed-on: https://chromium-review.googlesource.com/453382
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
2b39659d
|
2017-03-29T15:36:04
|
|
ES31: Implement glDispatchCompute for OpenGL backend
This patch refers to https://chromium-review.googlesource.com/c/380639/
BUG=angleproject:1955
TESTCASE=angle_end2end_tests
Change-Id: Iafd7a6ba2d71c0b332d9267a1260d9dbd9800c02
Reviewed-on: https://chromium-review.googlesource.com/462089
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Yunchao He <yunchao.he@intel.com>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e918de22
|
2017-04-12T10:21:11
|
|
Vulkan: Don't finish on swap.
This will enable the next frame to render while the previous frame's
command buffers are executing and rendering is happening. This should
speed up the Vulkan perf test.
BUG=angleproject:1898
Change-Id: I0820300d7934ef280cf75628239fe40dc96b8242
Reviewed-on: https://chromium-review.googlesource.com/445799
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
82483b93
|
2017-04-11T15:33:00
|
|
Obey the bufSize and write to the length parameter in glGetSynciv.
BUG=angleproject:1985
TEST=conformance2/state/gl-object-get-calls
Change-Id: Ic83c408b60d394ff5719beaedc5d4721b7811a47
Reviewed-on: https://chromium-review.googlesource.com/474551
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
df79af59
|
2017-04-11T16:56:58
|
|
Need Vulkan stuff for unix too.
Copy the Vulkan-related dependencies into the 'unix' section of the file
so we linux bots can build ANGLE's Vulkan backend.
BUG=angleproject:1668
Change-Id: I79e2895b525808072495c7cf18138facef6cc868
Reviewed-on: https://chromium-review.googlesource.com/475085
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
38f2cfb8
|
2017-04-11T15:23:08
|
|
Refactor validation of glGetSynciv.
BUG=angleproject:1985
Change-Id: Idf1057e6d8d8c850643e3b2a22be5a881c8a2301
Reviewed-on: https://chromium-review.googlesource.com/474550
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
58337799
|
2017-03-21T13:49:57
|
|
Correctly initialize the condition of FenceSync objects.
The spec says that the initial condition of a FenceSync object should be
GL_SYNC_GPU_COMMANDS_COMPLETE. Make sure this is set in case the
condition is queried before the fence is set.
TEST=conformance2/state/gl-object-get-calls.html
BUG=602688
Change-Id: I8c0451fc996c175109541f337191cc1be4b813e3
Reviewed-on: https://chromium-review.googlesource.com/457452
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
46258e1f
|
2017-04-10T12:28:34
|
|
Blit9: Pass the dest rect to setViewportAndShaderConstants.
Using the sourceRect for calculating the viewport and texture coordinates
was not enough when the source and destination rectangles were different
sizes (generating mipmaps).
BUG=709232
Change-Id: I2704ddf6e3da0939ad77d278ab495e53a2d9bc7d
Reviewed-on: https://chromium-review.googlesource.com/473266
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
eb8abb0a
|
2017-04-11T08:30:38
|
|
Remove unused declaration
isValidResourceIndex in Program.h is unused.
BUG=angleproject:1920
Change-Id: Ide097348fac7ed97a0e07f3d97d7944ac997f71d
Reviewed-on: https://chromium-review.googlesource.com/474229
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5ed601b4
|
2017-04-10T18:50:10
|
|
Fix IsOzone() predicate.
ANGLE_USE_OZONE is not defined in tests, but USE_OZONE is so use the latter.
BUG=angleproject:1423
Change-Id: Ib758fec6a1bb8d5cc66d0994cba2142e6a7f82b0
Reviewed-on: https://chromium-review.googlesource.com/474113
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
20e005b2
|
2017-04-07T14:19:22
|
|
Rename BitSetIterator.h to bitset_utils.h
BUG=angleproject:1814
Change-Id: I152ae13b6b7cf0ba72259967f0f124e199b20e07
Reviewed-on: https://chromium-review.googlesource.com/471826
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
03b333b4
|
2017-04-07T14:54:10
|
|
Vulkan: Fix Clang warning and fix build.
The data_deps section for angle_vulkan was referencing a variable
that didn't exist (no warning for this). Fix the deps which also
then exposes the build problem with the layers with Clang in 32-bit.
Also fix not propagating the Win32 defines to the layer utils.
BUG=chromium:708835
Change-Id: I4a457bfabf1ca735d3f3f3d8b0f0823cfa834b84
Reviewed-on: https://chromium-review.googlesource.com/470087
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
bf67aa80
|
2017-04-07T10:32:16
|
|
Temporarily disable Vulkan for the GN build.
BUG=709342
Change-Id: I980634700d364824af9f9b749fca0ec72abf68f8
Reviewed-on: https://chromium-review.googlesource.com/471507
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
067cdb4a
|
2017-04-05T13:42:49
|
|
Create depth stencils for D3D texture EGL surfaces.
BUG=angleproject:1144
Change-Id: I42d80293c06e40197fe100bcac31a5c6bd414edf
Reviewed-on: https://chromium-review.googlesource.com/469106
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
fa416b18
|
2017-04-06T11:34:17
|
|
Disable ValidationESTest.DrawElementsWithMaxIndexGivesError.
Temporarily until we have a proper fix.
BUG=chromium:708835
Change-Id: I9c1d63d8d1f831f2a4a168149b7ff805bc851def
Reviewed-on: https://chromium-review.googlesource.com/469967
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6f1c3de9
|
2017-04-05T16:40:15
|
|
gpu_info_util: fix a DeviceInfo leak on Windows
BUG=angleproject:1874
Change-Id: I382e306ce0c27a81e0d746fb9922fa12988927d4
Reviewed-on: https://chromium-review.googlesource.com/469230
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
df55f252
|
2017-04-05T15:32:06
|
|
Skip a couple end2end tests on Ozone.
Skip the following two end2end tests on Ozone pending investigation:
IndexedPointsTestUShort.VertexWithColorUnsignedShortOffsetChangingIndices/ES2_OPENGLES
SRGBTextureTest.SRGBDecodeTextureParameter/ES2_OPENGLES
BUG=angleproject:1423
Change-Id: Ied5b42903421ae9f388e8563814e3fe28eeb7b3e
Reviewed-on: https://chromium-review.googlesource.com/469087
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
72106562
|
2017-03-24T14:18:50
|
|
Vulkan: Only re-create pipeline on state change.
This speeds up the simple perf test, but it is a very simple
optimization that does not have a cache of pipelines or anything
sophisticated.
BUG=angleproject:1898
Change-Id: Iec126bc73bf28f8bb33662a2f70670588f010d72
Reviewed-on: https://chromium-review.googlesource.com/444850
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
5e96d74f
|
2017-04-05T16:26:14
|
|
Allow the OpenGL ES backend to be used with dEQP on Windows.
Change-Id: I79e013ca2be57916affb167f5b348cc414d581ba
Reviewed-on: https://chromium-review.googlesource.com/469189
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
6e0d8410
|
2017-04-05T15:15:10
|
|
Add IsOzone().
Add a function to check for the Ozone back end for use in skipping tests.
BUG=angleproject:1423
Change-Id: Ida3313e8cce5179422bdca85ba68f9765dfac840
Reviewed-on: https://chromium-review.googlesource.com/469068
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
|
|
9aded17c
|
2017-04-05T11:07:56
|
|
Invalidate completeness caches when enabling extensions.
Enabling extensions can cause framebuffers and textures to go from
incomplete to complete.
No functional changes from the API surface.
BUG=angleproject:1523
BUG=angleproject:1958
Change-Id: Iff686e1c292f6cf4921d6fffd7eb98bedaba828b
Reviewed-on: https://chromium-review.googlesource.com/468410
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
60e17eab
|
2017-04-05T11:01:49
|
|
Vulkan: Fix 32-bit Clang build.
We were getting a warning:
stdcall calling convention ignored on variadic function
BUG=None
Change-Id: I9165b285dfaf6bc238f946fda2d733292789390d
Reviewed-on: https://chromium-review.googlesource.com/468373
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
562c9686
|
2017-04-04T17:28:43
|
|
Clean up legacy code in VertexAttributeTest.cpp
This patch intends to clean up some coding style issues in
VertexAttributeTest.cpp, which is helpful to implement Vertex
Attrib Binding.
1. Use std::string directly instead of macro SHADER_SOURCE
2. Use constexpr on constants
3. Use std::array instead of traditional C-style arrays
BUG=angleproject:1593
Change-Id: I5b6f6d4fe0e34e82a9fc38cb54932fbc39e19a80
Reviewed-on: https://chromium-review.googlesource.com/467406
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f2209f74
|
2017-04-01T12:45:55
|
|
Clean up function name mangling code
Fix a few incorrect comments about mangled names, and refactor
generating mangled names from function call nodes.
BUG=angleproject:1490
TEST=angle_unittests
Change-Id: I3ee68c4c0982f1a9c28d8e87aafa19f19559bbf8
Reviewed-on: https://chromium-review.googlesource.com/465826
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
dd43e6cd
|
2017-03-24T14:18:49
|
|
Pass Context to VertexArray and Framebuffer syncstate.
This will enable more Vulkan-friendly idioms like clearing the
vulkan pipeline caches correctly on GL state changes immediately
because we have access to the ContextVk.
BUG=angleproject:1898
Change-Id: I16c848d8abdde8e26a38d384e565cec8548a66d0
Reviewed-on: https://chromium-review.googlesource.com/459079
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
2360ed0c
|
2017-04-04T15:06:09
|
|
Disable the EGLSyncControlTest
This test is very flaky on Windows bots.
TBR=stanisc@chromium.org
BUG=angleproject:1402
Change-Id: Iddfc630113c33cb79a96b7882fe8fa0e7fbf17d7
Reviewed-on: https://chromium-review.googlesource.com/468026
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
e93dabaa
|
2017-03-30T13:54:40
|
|
Output the number of columns and rows written for robust ReadPixels.
BUG=angleproject:1354
Change-Id: Ib78f74d7b1a449468e2c477955f6795dc5dbc811
Reviewed-on: https://chromium-review.googlesource.com/463786
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
6b2ea3fe
|
2017-03-28T11:49:17
|
|
Support D3D texture share handles in the OpenGL backend on Windows.
BUG=angleproject:1144
Change-Id: Ideb0ed306ae8417f53b813745ced43002d028126
Reviewed-on: https://chromium-review.googlesource.com/461271
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
9ec79391
|
2017-03-31T23:04:23
|
|
Use TLValueTrackingTraverser in ValidateLimitations
Use TLValueTrackingTraverser to determine whether a loop index is used
as an l-value. This replaces custom logic in ValidateLimitations,
greatly simplifying the code. Also pass the symbol table to
ValidateLimitations as a parameter, which removes the need to store a
global pointer to the current ParseContext.
BUG=angleproject:1960
TEST=angle_unittests, WebGL conformance tests
Change-Id: I122c85c78bbea05833d7c787cd184de568c5c45f
Reviewed-on: https://chromium-review.googlesource.com/465606
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
b5e884a4
|
2017-03-09T19:33:33
|
|
Clear11 VerticesTransform, RasterizerStates, ScissorRect
- Skip clears if an empty scissor rect is set
- Use rastStates to apply scissoring instead of recomputing the scissored
positions and updating the VB and updating the VB for every clear
- Use ComPtrs for VB and RasterizerStates
BUG=angleproject:1934
Change-Id: Ib4448d8568b465df5de57607be4985095f6bd014
Reviewed-on: https://chromium-review.googlesource.com/453881
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
420ba154
|
2016-09-20T00:00:53
|
|
Update dEQP gles3 tests expectations for Android
Mark tests that fail or hang on Nexus 5X as such.
BUG=angleproject:1532
TEST=gles3 tests pass on Nexus 5X
Change-Id: Id4c31884890bd48595a83be14e8d56342f7fbe59
Reviewed-on: https://chromium-review.googlesource.com/387148
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
9cb2c262
|
2017-04-03T10:12:04
|
|
Re-land: Roll vulkan-validation-layers. (2/2)
https://android.googlesource.com/platform/external/vulkan-validation-layers.git/+log/bcb80d06bbdc09..f47c534fee2f26f
This CL re-enables Vulkan with the new build files.
In particular, this roll contains a fix for a vs2017 signed/unsigned
mismatch warning as error.
Re-land fixes build dependencies.
BUG=chromium:683729
Change-Id: If2b1bc7250037c33402965eae354ca550ecd36c0
Reviewed-on: https://chromium-review.googlesource.com/466106
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f546e7df
|
2017-03-27T14:12:59
|
|
ES31: Add GL_SHADER_STORAGE_BUFFER_BINDING binding point
The affected APIs are below:
getIntegeri_v getInteger64i_v BindBuffer BindBufferBase BindBufferRange
BUG=angleproject:1951
TEST=dEQP-GLES31.functional.state_query.integer.shader_storage_buffer_binding_*
dEQP-GLES31.functional.state_query.indexed.shader_storage_buffer_*
Change-Id: Ief7186b2ebe305f14e620c31841bc244f84429a5
Reviewed-on: https://chromium-review.googlesource.com/459093
Reviewed-by: Yunchao He <yunchao.he@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
fd7c3b52
|
2017-03-21T15:36:03
|
|
ES31: Add glGetProgramResourceName API
Add API entry and validation checks(GLES 3.1 section 7.3).
Add the first 2 interfaces(PROGRAM_INPUT and PROGRAM_OUTPUT) implementation.
BUG=angleproject:1920
Change-Id: Ide7d5ad40a611a091c3dffab47fd31da57b69f1d
Reviewed-on: https://chromium-review.googlesource.com/457523
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ec9232bd
|
2017-03-27T17:01:37
|
|
Store unmangled function names in the AST
This makes the code simpler across the board. There are a few cases
where mangled names still need to be generated in AST traversers, but
they are outweighed by much leaner output code for all function nodes.
BUG=angleproject:1490
TEST=angle_unittests, angle_end2end_tests
Change-Id: Id3638e0fca6019bbbe6fc5e1b7763870591da2d8
Reviewed-on: https://chromium-review.googlesource.com/461077
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
495bd776
|
2017-03-29T12:40:28
|
|
Update deqp31 test expectations
Remove the following deqp cases from deqp_gles31_test_expectations.txt
since they can pass now due to
https://chromium-review.googlesource.com/c/430199/4/src/libANGLE/renderer/d3d/d3d11/renderer11_utils.cpp
BUG=angleproject:1442
TEST=dEQP-GLES31.functional.state_query.integer.max_compute_work_group_invocations_*
dEQP-GLES31.functional.state_query.integer.max_compute_uniform_blocks_*
dEQP-GLES31.functional.state_query.integer.max_compute_texture_image_units_*
dEQP-GLES31.functional.state_query.integer.max_compute_uniform_components_*
dEQP-GLES31.functional.state_query.integer.max_uniform_locations_*
dEQP-GLES31.functional.state_query.indexed.max_compute_work_group_count_*
dEQP-GLES31.functional.state_query.indexed.max_compute_work_group_size_*
Change-Id: I121588cdb5d5b67c5b1d76e8710b2f53f35ede15
Reviewed-on: https://chromium-review.googlesource.com/461732
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Yunchao He <yunchao.he@intel.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
fe48632f
|
2017-03-21T09:30:54
|
|
Prefer identifying functions by using symbol ids
The shader translator code is now structured in a way that ensures
that all function definition, function prototype and function call
nodes store the integer symbol id for the function. This is guaranteed
regardless of whether the function node is added while parsing or as a
result of an AST transformation. TIntermAggregate nodes, which include
function calls and constructors can now only be created by calling one
of the TIntermAggregate::Create*() functions to ensure they have all
the necessary properties.
This makes it possible to keep track of functions using integer ids
instead of their mangled name strings when generating the call graph
and when using TLValueTrackingTraverser.
This commit includes a few other small cleanups to the CallDAG class
as well.
BUG=angleproject:1490
TEST=angle_unittests, angle_end2end_tests
Change-Id: Idd1013506cbe4c3380e20d90524a9cd09b890259
Reviewed-on: https://chromium-review.googlesource.com/459603
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
76e6565e
|
2017-03-27T14:58:02
|
|
Validate clear attachment formats match color clear types.
TEST=conformance2/rendering/clear-func-buffer-type-match.html
BUG=angleproject:1954
Change-Id: Iefeb38041608f11781f87aadb8611737ba2ee96f
Reviewed-on: https://chromium-review.googlesource.com/461270
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
005a7016
|
2017-03-27T13:17:34
|
|
Adjust the FBO invalidate attachment enums for emulated default FBOs.
BUG=angleproject:1953
Change-Id: I7f325e3b7400e12077cdf9106a83a747a318a299
Reviewed-on: https://chromium-review.googlesource.com/461297
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
9e1bf10b
|
2017-03-28T15:10:48
|
|
Strip null characters from the shader source when building translated source.
Some shaders had trailing null characters that caused the resulting
translated source string to not output correctly.
BUG=angleproject:1144
Change-Id: I7cd725ee54c9e934fd3cc511de9c2a3c34ac3eec
Reviewed-on: https://chromium-review.googlesource.com/461272
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
8f77e5d3
|
2017-03-24T11:58:59
|
|
gpu_info_util: Implement GetSystemInfo on Windows
BUG=angleproject:1874
Change-Id: I97a02d2c8b1f7ecb530684464fc02f528d34de7c
Reviewed-on: https://chromium-review.googlesource.com/458965
Reviewed-by: Austin Kinross <aukinros@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
|
|
2d62ab72
|
2017-03-23T16:54:40
|
|
Apply WebGL validation to glVertexAttribIPointer.
TEST=deqp/functional/gles3/shaderstatequery.html
BUG=angleproject:1523
BUG=chromium:668223
Change-Id: I24230144f8529d84cdbde3d5a8ad9178481550a9
Reviewed-on: https://chromium-review.googlesource.com/458680
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
80957d99
|
2017-02-20T21:25:59
|
|
ES31: Implement Vertex Attrib Binding entry points
This patch intends to implement all entry points related to Vertex
Attrib Binding.
(1) Add entry points and validation code on following APIs:
- VertexAttribFormat
- VertexAttribIFormat
- VertexAttribBinding
- BindVertexBuffer
- VertexBindingDivisor
(2) Add queries on following parameters:
- VERTEX_ATTRIB_BINDING
- VERTEX_ATTRIB_RELATIVE_OFFSET
- VERTEX_BINDING_DIVISOR
- VERTEX_BINDING_OFFSET
- VERTEX_BINDING_STRIDE
- VERTEX_BINDING_BUFFER
BUG=angleproject:1593
TEST=angle_end2end_tests
TEST=angle_unittests
TEST=dEQP-GLES31.functional.state_query.integer.max_vertex_attrib_relative_offset_*
TEST=dEQP-GLES31.functional.state_query.integer.max_vertex_attrib_bindings_*
TEST=dEQP-GLES31.functional.state_query.integer.max_vertex_attrib_stride_*
TEST=dEQP-GLES31.functional.state_query.vertex_attribute_binding.*
TEST=dEQP-GLES31.functional.debug.negative_coverage.log.vertex_array.vertex_attrib_pointer
TEST=dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.vertex_attrib_format
TEST=dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.vertex_attrib_i_format
Change-Id: I4b477a82df6aad89b89b088580a06d66963e6666
Reviewed-on: https://chromium-review.googlesource.com/446124
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
484dd7b1
|
2017-03-07T16:39:22
|
|
ES31: Implement DrawElementsIndirect D3D part
The implementation of DrawElementsIndirect is similar with
DrawArraysIndirect except that it needs to apply IndexBuffer.
BUG=angleproject:1595
TEST=dEQP-GLES31.functional.draw_indirect.draw_elements_indirect*
dEQP-GLES31.functional.draw_indirect.instancing.*
dEQP-GLES31.functional.draw_indirect.random.*
Change-Id: I5d2c8a7485b18b724fdda6fd964013c941e45b4f
Reviewed-on: https://chromium-review.googlesource.com/455520
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
795e7573
|
2017-03-28T15:47:21
|
|
Revert "Roll vulkan-validation-layers. (2/2)"
This reverts commit 2feaa5e0ac6b779e13254c84b41de436f5d14765.
Reason for revert: Broke the Chrome Windows builders.
Build: https://build.chromium.org/p/chromium/builders/Win/builds/53432
Error: src\third_party\vulkan-validation-layers\src\include\vulkan\vk_layer.h(39): fatal error C1083: Cannot open include file: 'vk_layer_dispatch_table.h': No such file or directory
Original change's description:
> Roll vulkan-validation-layers. (2/2)
>
> https://android.googlesource.com/platform/external/vulkan-validation-layers.git/+log/bcb80d06bbdc09..f47c534fee2f26f
>
> This CL re-enables Vulkan with the new build files.
>
> In particular, this roll contains a fix for a vs2017 signed/unsigned
> mismatch warning as error.
>
> BUG=chromium:683729
>
> Change-Id: Id38e10f97702cac5a51ee194c81972861f15db21
> Reviewed-on: https://chromium-review.googlesource.com/457278
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
>
TBR=geofflang@chromium.org,jmadill@chromium.org,bungeman@chromium.org,cwallez@chromium.org
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=chromium:683729
Change-Id: Ic60f22496fc57904132d574a2fb2c1ca4d875b3e
Reviewed-on: https://chromium-review.googlesource.com/461999
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
61afff14
|
2017-03-14T15:34:03
|
|
ES31: Add PROGRAM_SEPARABLE to ProgramParameter and GetProgram
BUG=angleproject:1939
TEST=angle_end2end_tests
Change-Id: I97ad11360f7c015947a2c0cc7d4a47f994726834
Reviewed-on: https://chromium-review.googlesource.com/454264
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
48fed633
|
2017-03-16T12:05:30
|
|
Set sampler uniform values from binding qualifiers
The usual set uniform call is used to set initial sampler uniform
values based on binding layout qualifiers. This is the simplest way to
ensure that the uniform values are set correctly in both internal data
structures of the Program class and on the different backends. This is
done as one of the last steps of program linking.
TEST=dEQP-GLES31.functional.uniform_binding.sampler*
BUG=angleproject:1442
Change-Id: I2f58c98e175f6a10a90042050f4fcbea77ad97ac
Reviewed-on: https://chromium-review.googlesource.com/456597
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
fc72a073
|
2017-03-24T14:52:39
|
|
Update CHROMIUM_copy_texture entry points to the ES3 versions.
BUG=angleproject:1932
Change-Id: Ia45f8522320af1d747fbfb57468e8b881b033543
Reviewed-on: https://chromium-review.googlesource.com/459101
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ee218f27
|
2017-03-22T15:39:13
|
|
Re-land eglGetSyncValuesCHROMIUM extension.
This reverts commit 20c97cac2a15144b61ceec7404a9e6249c40f50a
and adds a few trivial changes to make it build with the current version
of ANGLE code.
Please see https://bugs.chromium.org/p/chromium/issues/detail?id=614147
for more details on how this extension will be used.
Original description:
This change adds implementation of eglGetSyncValuesCHROMIUM extension
on D3D11 with Direct Composition. This should work on Windows 8.1 and
above.
The implementation is based on IDXGISwapChain::GetFrameStatistics.
Extension documentation:
https://chromium.googlesource.com/chromium/src/gpu/+/master/GLES2/extensions/CHROMIUM/EGL_CHROMIUM_get_sync_values.txt
BUG=angleproject:1402
Change-Id: I4b77899f31a4c4cf1fa7f20ab12de5a02ccf74d8
Reviewed-on: https://chromium-review.googlesource.com/459217
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2feaa5e0
|
2017-03-24T13:04:21
|
|
Roll vulkan-validation-layers. (2/2)
https://android.googlesource.com/platform/external/vulkan-validation-layers.git/+log/bcb80d06bbdc09..f47c534fee2f26f
This CL re-enables Vulkan with the new build files.
In particular, this roll contains a fix for a vs2017 signed/unsigned
mismatch warning as error.
BUG=chromium:683729
Change-Id: Id38e10f97702cac5a51ee194c81972861f15db21
Reviewed-on: https://chromium-review.googlesource.com/457278
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
aa086d68
|
2017-03-23T16:47:21
|
|
Refactor glVertexAttribIPointer validation.
BUG=angleproject:1523
BUG=chromium:668223
Change-Id: I51eca98ad14d8be6f5009149ed6c0daecf569178
Reviewed-on: https://chromium-review.googlesource.com/458106
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
4063e209
|
2017-03-23T11:38:22
|
|
Roll vulkan-validation-layers. (1/2)
https://android.googlesource.com/platform/external/vulkan-validation-layers.git/+log/bcb80d06bbdc09..f47c534fee2f26f
Disables Vulkan in ANGLE temporarily - a second CL will follow with
the updated build files once ANGLE is rolled into Chrome.
In particular, this roll contains a fix for a vs2017 signed/unsigned
mismatch warning as error.
BUG=chromium:683729
Change-Id: Ib23370d79f1359ab290f08e14a847eed75251660
Reviewed-on: https://chromium-review.googlesource.com/458531
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
15015f7f
|
2017-03-16T13:54:21
|
|
ES31: Add glGetProgramResourceIndex API
Add API entry and validation checks(GLES 3.1 section 7.3).
Add the first 2 interfaces(PROGRAM_INPUT and PROGRAM_OUTPUT) implementation.
BUG=angleproject:1920
Change-Id: Ib2dedded9fd79b315e9f38de7c27a5e4ec4c6066
Reviewed-on: https://chromium-review.googlesource.com/453085
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|