- 16 Apr, 2018 4 commits
-
-
Luc Ferron authored
Also enables a test in LineLoopTest that validates this case. Bug: angleproject:2473 Change-Id: Icb4c5735c11be40cdeceaa051f5a5cef33fd22c6 Reviewed-on: https://chromium-review.googlesource.com/1011669 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This changes the TextureVk class to have a queue of staging copies, instead of a single copy at a time. This will allow us to upload multiple sub regions of a texture image at once when we need to resolve the Image at sampling time. Enables the remainder of the texture.format tests, and all non-mipped tests in the texture.size tests. Also updates the expectations with the bug number for mipmap support. Bug: angleproject:2318 Change-Id: Ie55f8f2dc24d7b133ad735e37f0f78937f022b5b Reviewed-on: https://chromium-review.googlesource.com/980775Reviewed-by:
Luc Ferron <lucferron@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jiawei Shao authored
This patch is the first one in the series of using ShaderMap as the container of the resources for each type of shader everywhere in ANGLE. This patch defines the new data structure ShaderMap and use it in class Program and Compiler in ANGLE front-end. The following work includes: 1. Use ShaderMap in D3D back-ends. 2. Use ShaderMap in Vulkan back-ends. BUG=angleproject:2169 Change-Id: I1c284d95f5a071c45bb468901eabc15694fffe38 Reviewed-on: https://chromium-review.googlesource.com/1011722 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org>
-
Olli Etuaho authored
This is simpler than storing the information in symbol table levels. Invariant declarations can only be present at the global scope, so storing the information per level is not required. BUG=angleproject:2267 TEST=angle_unittests Change-Id: Idb07d734950c8a0a8bda5b2380e181902f9eb633 Reviewed-on: https://chromium-review.googlesource.com/1007060Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
- 13 Apr, 2018 8 commits
-
-
Courtney Goeltzenleuchter authored
No longer have issues with unneeded internal declarations now that Tokenizer.cpp has been updated so re-enable compiler warning to catch future issues. BUG:angleproject:2451 Test: build Change-Id: I30daadc8c7374bcae753a7e69cb9a72855a1f548 Reviewed-on: https://chromium-review.googlesource.com/1007965 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Nico Weber authored
Bug: chromium:820421 Change-Id: Ib381257dc55eef409d5f34f1e040abe7c8a971a3 Reviewed-on: https://chromium-review.googlesource.com/1012567Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This variable can be used to override the root location of the .git for ANGLE relative to gclient, so our DEPS can work with both ANGLE standalone and the new bot configurations that are being added by thakis@. Bug: chromium:820421 Change-Id: I5cd57bc88fcd4dc69e82aa1e59d343f1eaf6f5ee Reviewed-on: https://chromium-review.googlesource.com/1012506 Commit-Queue: Nico Weber <thakis@chromium.org> Reviewed-by:
Nico Weber <thakis@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
The Vulkan and GL back-ends both had a client attributes mask. This consolidates them into the front-end, where it can also be used in the validation layer. Also includes a fix which was incorrectly setting the enabled mask in setVertexAttribFormatImpl. Bug: angleproject:1391 Change-Id: I5e45c1e2a56b30a36dec1482d170592c30a16d40 Reviewed-on: https://chromium-review.googlesource.com/1008272 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Luc Ferron <lucferron@chromium.org>
-
Corentin Wallez authored
Now that the migration has happened for these builders, switch to the new new configs. Bug=chromium:815092 Change-Id: I68b0817f20fe54583dc465f3cdcdf233439f0a01 Reviewed-on: https://chromium-review.googlesource.com/1012504Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
Yuly Novikov authored
Compiling dEQP with clang started failing after clang roll https://chromium-review.googlesource.com/1012028 BUG=chromium:832753 Change-Id: I532872a68c3c8d916c6bfd2b5370501746076193 Reviewed-on: https://chromium-review.googlesource.com/1012382Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
-
Luc Ferron authored
- Also enables 6 new tests in LineLoopTests.cpp in angle_end2end Bug: angleproject:2458 Change-Id: I4aec12b0ac780e81e6811f1199a5acaf17d9b982 Reviewed-on: https://chromium-review.googlesource.com/1010411Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Luc Ferron <lucferron@chromium.org>
-
Luc Ferron authored
The dynamic buffer we are using in the LineLoopHelper wasn't able to support switching between different allocation sizes. Fix this by simply using a min alignment of the maximum allocation size we can reach. Adds 2 new tests to validate these calls in StateChangeTest.cpp Bug: angleproject:2458 Change-Id: I9d224e7dcfcd7627010832ca30dd9e1b9eceea4e Reviewed-on: https://chromium-review.googlesource.com/1007335 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
- 12 Apr, 2018 9 commits
-
-
Jamie Madill authored
In terms of the Texture or Image resource, a cube face refers to a layer of a 2D texture. This layer has a special meaning for cube textures, but it is represented as a layer with a layer index. Cube array textures are no different, they just use a different indexing scheme for the array layers. This also cleans up the ImageIndex helper to have a class structure with private data, and cleans up a few cases to use generic Make functions and iterators where they were setting properties of the index directly. This will make it easier to have ImageIndexes address entire levels of a Cube map in the future, and makes the layer count logic in Vulkan cleaner. Bug: angleproject:2318 Change-Id: Iea9842e233f974a9896282ca224cb001f7882bd1 Reviewed-on: https://chromium-review.googlesource.com/987525Reviewed-by:
Luc Ferron <lucferron@chromium.org> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Courtney Goeltzenleuchter authored
gen_angle_gn_info_json.py can be used to generate a json description of the build for given targets. This information can then be used to generate build files for other tool chains (e.g. Android blueprint) Bug: angleproject:2418 Change-Id: Ief8f43e30ae1f469e3fcfa795306675e29a90a2f Reviewed-on: https://chromium-review.googlesource.com/967225 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Lingfeng Yang authored
glRotate glTranslate glScale glFrustum glPerspective glOrtho BUG=angleproject:2306 Change-Id: Ia9321d52f5824ef7c15b56d94e23ff3b1fbc3151 Reviewed-on: https://chromium-review.googlesource.com/1002915 Commit-Queue: Lingfeng Yang <lfy@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Corentin Wallez authored
When using glCopyTexImage2D clearing of the mip level needs to happen when running in WebGL or robust resource init mode and any pixel would be sampled outside of the framebuffer. Previously the code was using "setImage" for this purpose, causing issues when a PIXEL_UNPACK_BUFFER was bound. Also add a regression test. BUG=chromium:827667 Change-Id: I03be20d8272730ab30afdab2f8919be853e729b6 Reviewed-on: https://chromium-review.googlesource.com/1000182 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Luc Ferron authored
Bug: angleproject:2460 Change-Id: I4dba274e29a147c3066848a729f37297951a7f77 Reviewed-on: https://chromium-review.googlesource.com/1010405 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Brandon Jones authored
Modify autogeneration script to pull data from gl_ext.xml and generate entry_points_gles_2_0_ext_autogen.cpp/h as a replacement for entry_points_gles_2_0_ext.cpp/h Bug:angleproject:2263 Bug:angleproject:1309 Change-Id: Ie21079f8ec5f85c657b891f6d6d59306a4c3b5fe Reviewed-on: https://chromium-review.googlesource.com/1005409 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Luc Ferron authored
Also add a test in StateChangeTest.cpp to validate the behavior. Bug: angleproject:2458 Change-Id: I58848772c0b4f71aaa3ee187778e49fa08e6800d Reviewed-on: https://chromium-review.googlesource.com/1007320Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Luc Ferron <lucferron@chromium.org> Commit-Queue: Luc Ferron <lucferron@chromium.org>
-
Jamie Madill authored
Has a small but noticeable impact on performance on a microbenchmark. Seems to improve a synthetic score by about 1%. Should have a very small improvement in real-world performance. Note that the odd formatting is an idiosyncrasy of clang-format. Bug: angleproject:2389 Change-Id: I888bf101c6d8b80a0fbafdb9c5a84205c9c8fee6 Reviewed-on: https://chromium-review.googlesource.com/962963Reviewed-by:
Luc Ferron <lucferron@chromium.org> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Luc Ferron authored
- Suppress tests that don't pass yet. Bug: angleproject:2460 Change-Id: I7c95ae9504a8d5e112fd9d1bb8536cc9bbf16e7b Reviewed-on: https://chromium-review.googlesource.com/1003099Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Luc Ferron <lucferron@chromium.org>
-
- 11 Apr, 2018 10 commits
-
-
Luc Ferron authored
Stop tying the viewport and the scissor together. Instead, we simply use a very large (0->maxInt) scissor when scissor isn't enabled and we use the clipped scissor to the renderArea size when its enabled. Bug: angleproject:2443 Change-Id: If7454793a050b1833c7d3166ea6b380192085c8f Reviewed-on: https://chromium-review.googlesource.com/1006996 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Corentin Wallez authored
This is moving all ANGLE Windows tryservers to run on LUCI only. BUG=chromium:815092 Change-Id: I737b0883dca7385bdf1ec664affe53f606ca9401 Reviewed-on: https://chromium-review.googlesource.com/1008066Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
Jamie Madill authored
In the case there are any dirty inactive attributes, we were continually invalidating the Vertex Buffer and Input Layout bindings. This fixes the invalidation to only happen when there are any dirty active attributes. This regressed in "Move Buffer Subject/Observer to front end." Bug: chromium:829906 Bug: angleproject:2389 Change-Id: I8ed616bb696e0be548344192037ad6cc6f9c595c Reviewed-on: https://chromium-review.googlesource.com/1006998Reviewed-by:
Luc Ferron <lucferron@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
The Vulkan back-end will be using this helper struct, so make it available everywhere. This cleans up a lot of the code for D3D. Potentially in the future we could generate these in the entry points if we supported packing multiple arguments into one. Also changes a few parameter types to GLint for compatibility. Also updates the Vulkan Texture implementation check the stored vk::Format on setImage changes. Bug: angleproject:2318 Change-Id: I57cea4a42483ab51859229517d783b58f206b8e7 Reviewed-on: https://chromium-review.googlesource.com/985203 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Reviewed-by:
Luc Ferron <lucferron@chromium.org>
-
Jamie Madill authored
This more closely follows the general pattern laid out by the naming in vk_helpers.h. It also changes the dynamic buffer that the helper wraps to be stored by-value since the header include order problem is fixed. Bug: angleproject:2318 Change-Id: I1de9e1edee2125d3afd490b4f9c99cf70c61215c Reviewed-on: https://chromium-review.googlesource.com/1001654Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Reviewed-by:
Luc Ferron <lucferron@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Luc Ferron authored
Bug: angleproject:2364 Change-Id: I316db1f6796a4a2efe344dd4b0a4a6e7bf2ead90 Reviewed-on: https://chromium-review.googlesource.com/1005556 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
James Darpinian authored
syncPrimitiveTopology checks the transform feedback state, so it needs to be called whenever the transform feedback state changes. This fixes flakes in the WebGL 2 conformance test transform_feedback/simultaneous_binding.html Bug: 696345 Change-Id: I4e17bbf60b4a387cc23dc55bd5a051f5da9fa66e Reviewed-on: https://chromium-review.googlesource.com/1006489 Commit-Queue: James Darpinian <jdarpinian@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Olli Etuaho authored
This makes ANGLE to follow GLSL ES 3.00.6 spec section 12.46. The spec requires that all attributes are taken into account when checking for aliasing, regardless of if they are active or not. WebGL 2.0 spec was also recently changed to reflect GLSL ES 3.00.6 correctly. Aliasing checks for GLSL ES 1.00 shaders are left as-is. BUG=chromium:829541 TEST=angle_end2end_tests, WebGL conformance tests Change-Id: I71c36ac123f18dadf075e81f93af29321c15136b Reviewed-on: https://chromium-review.googlesource.com/1005077Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Lingfeng Yang authored
BUG=angleproject:2306 Change-Id: I178b051c23da51d8eaf24c2a0df97f01ae5f3aaa Reviewed-on: https://chromium-review.googlesource.com/1002914 Commit-Queue: Lingfeng Yang <lfy@google.com> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Lingfeng Yang authored
BUG=angleproject:2306 Change-Id: I46fe961e6eb87b2f41c39afe1e943d9146a0abfa Reviewed-on: https://chromium-review.googlesource.com/1002913 Commit-Queue: Lingfeng Yang <lfy@google.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
- 10 Apr, 2018 9 commits
-
-
Jamie Madill authored
Bug: None Change-Id: Iedf69564f465ad1a48fd5cebfe384ace6787a720 Reviewed-on: https://chromium-review.googlesource.com/1006050Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Yuly Novikov authored
Flaky. BUG=angleproject:2408 Change-Id: I20a6cbf8c4daa722c9d3f91aa3b55227cfff94b5 Reviewed-on: https://chromium-review.googlesource.com/1005811Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
-
Luc Ferron authored
- The scissor when clearing should not be clipped against the viewport. - The render pass was created with a render area == to the current viewport, but the viewport can be changed by the tests multiple times per render pass, so we should always keep the renderArea to the full framebuffer instead. - Enables an additional 163 dEQP tests. - We should clip the scissor to the framebuffer dimensions instead of the viewport. Its valid to do a cmdClearAttachments outside the viewport, but not outside the full framebuffer's dimension. Bug: angleproject:2443 Change-Id: I79168e9f0c782d6dec77470fef938b85ad7a8794 Reviewed-on: https://chromium-review.googlesource.com/998448 Commit-Queue: Luc Ferron <lucferron@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Luc Ferron authored
Bug: angleproject:2447 Change-Id: Ib5a8176e2836374fbeb70ccd05586495c388680b Reviewed-on: https://chromium-review.googlesource.com/1005438Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Luc Ferron <lucferron@chromium.org>
-
Luc Ferron authored
Bug: angleproject:2447 Change-Id: I92a6ed730dd2048b055d32d1f149a29172c7f38a Reviewed-on: https://chromium-review.googlesource.com/999822Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Luc Ferron <lucferron@chromium.org>
-
Luc Ferron authored
- Also enables 174 additional dEQP tests. Bug: angleproject:2446 Change-Id: I07cce46815d2f7a80fd48e7fd9407f7d528b397f Reviewed-on: https://chromium-review.googlesource.com/998406Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Luc Ferron <lucferron@chromium.org>
-
Jamie Madill authored
This defers the actual Image initialization until the Image is used as either a Framebuffer Attachment or OpenGL Texture object. This will allow us to construct an Image from multiple sub resources, like when we're initializing a mip chain, or a cube map texture. Also adds a helper "hasDepthOrStencilBits" function to angle::Format. Bug: angleproject:2318 Change-Id: Ife861560216581a90fc6da32a583f69886c7daea Reviewed-on: https://chromium-review.googlesource.com/985202Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
Using FixedVector, we can remove the need for dynamic allocation in most of the use cases. Only when we exceed a certain amount of fixed storage do we need to spill into the heap. Bug: angleproject:2389 Bug: chromium:829906 Change-Id: Ib5f7073b58876bfd2400bd87b743bddcee5e5dc8 Reviewed-on: https://chromium-review.googlesource.com/1002884Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Reviewed-by:
Luc Ferron <lucferron@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jiawei Shao authored
BUG=angleproject:2169 Change-Id: I192c2e3c453540c8a6d7b0d066218ea3c9fbaab2 Reviewed-on: https://chromium-review.googlesource.com/989411 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-