- 14 Jul, 2016 2 commits
-
-
Jamie Madill authored
Because this builtin uses a structure, certain shaders could trigger the mangled name to be allocated during normal shader compilation. Then when the scope is popped, the mangled name for DepthRange is freed, and we're left with a dangling pointer. Fix this temporarily by enforcing mangled name construction when we initialize the builtins, but we should look for a more robust and future-proof fix. BUG=620937 Change-Id: If130c8b48a18054502abaec08f10264f282b4925 Reviewed-on: https://chromium-review.googlesource.com/354494Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Antoine Labour <piman@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/360480Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
We were calling the global pool allocator in the builtin function emulator, which would lead to us freeing TTypes that were still referenced. Fix this by using the TCache which was designed for such a purpose, and locking the allocator around the builtin function emulator to try and prevent similar bugs from creeping in. Eventually we would like to get rid of the global allocator and replace it with different pools in different contexts, which are managed more safely. BUG=620937 Change-Id: If501ff6ea4d9bf8a2b8f89f2c94a01386f79ee3a Reviewed-on: https://chromium-review.googlesource.com/353671Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/360249Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
- 27 May, 2016 1 commit
-
-
Jamie Madill authored
The pattern of gen context, share context, free context, then allocate a shared GL object in the second context would cause a use-after-free of the ContextImpl as a GLFactory. Fix this by passing the factory as a parameter to the resource manager allocation methods instead of storing the factory pointer. This allows the same ResourceManager to work with separate Context implementations, which will work with non-virtual contexts. BUG=612931 Change-Id: Ifceeb893bebd072f318963d935ff9d17181f5305 Reviewed-on: https://chromium-review.googlesource.com/347463Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/347468Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
- 18 May, 2016 2 commits
-
-
Geoff Lang authored
BUG=angleproject:1378 Change-Id: I92b902154432e82a1357e8623426256c4ca53ca3 Reviewed-on: https://chromium-review.googlesource.com/345585Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Sami Väisänen authored
BUG=angleproject:1378 Change-Id: I634c41f3507dbdeaa56234c4de1b498f81c848ed Reviewed-on: https://chromium-review.googlesource.com/344520Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Sami Väisänen <svaisanen@nvidia.com>
-
- 17 May, 2016 5 commits
-
-
Jamie Madill authored
This can be useful in the Vulkan back-end to make validation layer errors cause test cases to fail. BUG=angleproject:1319 Change-Id: I523f3c874e892a2646600e4c5c554319ed8d770c Reviewed-on: https://chromium-review.googlesource.com/342050Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Olli Etuaho authored
This works around GL drivers that neglect to clamp the base level or max level of immutable textures. BUG=angleproject:596 BUG=610800 TEST=angle_end2end_tests Change-Id: Ie4e04aaa9253f2befd73bccefa7759486b3ef487 Reviewed-on: https://chromium-review.googlesource.com/344590Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Jamie Madill authored
Previously Context had no Impl class, but had a special relationship with the instanced Renderer class. Having a ContextImpl backing every Context will allow new designs to enable things like multithreading (where each ContextImpl stores a Context-specific device) or non- virtual Contexts on Android or other platforms where it is more efficient. A large refactoring patch that touches every back-end. BUG=angleproject:1363 Change-Id: Icb73a7d37447f08a664eeb499a310ba05d71a57e Reviewed-on: https://chromium-review.googlesource.com/342052Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Nico Weber authored
BUG=chromium:604060 Change-Id: I7e9b8c1bd7cb14daa15575cfcfe9ba3e8a1e6d1b Reviewed-on: https://chromium-review.googlesource.com/344701 Tryjob-Request: Nico Weber <thakis@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Olli Etuaho authored
Remove unnecessary scale parameter from MipmapTestES3, and use the GLColor class and EXPECT_PIXEL_COLOR_EQ instead of EXPECT_PIXEL_EQ for greater readability. BUG=angleproject:596 TEST=angle_end2end_tests Change-Id: I79c30ce85be5d554d89197f8f1ce7ab0c51c11b6 Reviewed-on: https://chromium-review.googlesource.com/344513Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
- 16 May, 2016 4 commits
-
-
Nico Weber authored
BUG=chromium:431177 Change-Id: Id9c8ad68a9703591d6f576bfae3d7061526ed27f Reviewed-on: https://chromium-review.googlesource.com/344740 Tryjob-Request: Nico Weber <thakis@chromium.org> Reviewed-by:
Nico Weber <thakis@chromium.org>
-
Sami Väisänen authored
BUG=angleproject:1377 Change-Id: Ie14aceca8e01f1cbc93fd5bd06d986336fb752b3 Reviewed-on: https://chromium-review.googlesource.com/343501Reviewed-by:
Sami Väisänen <svaisanen@nvidia.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Sami Väisänen <svaisanen@nvidia.com>
-
Olli Etuaho authored
Different levels of the same texture may have different formats, so changing the base level may affect the format that should be used for the storage. Take this into account in the D3D backend. The added test fails on some GL drivers. TEST=angle_end2end_tests BUG=angleproject:596 Change-Id: I5380e942694a75685ebb510edb01c0489e0d5179 Reviewed-on: https://chromium-review.googlesource.com/344230Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Olli Etuaho authored
This refactoring patch removes the need to pass texture state to methods of TextureImpl in some cases. It also adds target value to TextureState, and moves TextureState definition to Texture.h. The effective base level can now also be queried from TextureState, which reduces the need to pass it around. Two different code paths that dealt with the TextureStorage11 SRV cache are combined into one. Besides refactoring, this patch fixes applying mTopLevel twice when determining the amount of mip levels TextureStorage11. BUG=angleproject:596 TEST=angle_end2end_tests, angle_unittests Change-Id: I1add3d9ad847bec56774e394125156cf9cb0fc2a Reviewed-on: https://chromium-review.googlesource.com/342940Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
- 13 May, 2016 2 commits
-
-
Frank Henigman authored
So we can run dEQP on the GL ES back end. BUG=angleproject:1371 Change-Id: I7694d766f04997f9ba60ad0dd0bb4b30e714b4ae Reviewed-on: https://chromium-review.googlesource.com/342843Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org> Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
-
Corentin Wallez authored
BUG=610800 Change-Id: I4ee6ba589afc98277c3cf50b8f57afb184b11216 Reviewed-on: https://chromium-review.googlesource.com/343994Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
- 12 May, 2016 3 commits
-
-
Geoff Lang authored
BUG=angleproject:1366 Change-Id: Iadde61968f45b969c76578a6dd9116a25d63fb4b Reviewed-on: https://chromium-review.googlesource.com/341230Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Frank Henigman authored
Samples and end2end tests mostly work. Only one config, and no input. BUG=angleproject:1297 Change-Id: I5b69babccc5b97e486d86e1721a0a1740ad80941 Reviewed-on: https://chromium-review.googlesource.com/319460Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
-
John Bauman authored
This should ensure that d3dcompiler_47.dll is saved into an isolate in chromium, as it's used at runtime. BUG=611235 Change-Id: I64801f00bf90f2be68c7a691724609bbf4d28dfa Reviewed-on: https://chromium-review.googlesource.com/344351 Tryjob-Request: John Bauman <jbauman@chromium.org> Reviewed-by:
Kenneth Russell <kbr@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: John Bauman <jbauman@chromium.org> Reviewed-by:
Dirk Pranke <dpranke@chromium.org>
-
- 11 May, 2016 2 commits
-
-
Jamie Madill authored
Also rename ImplFactory to GLImplFactory. This will allow us to use the same factory design pattern for EGL objects, and to use State helper classes to share data with Impls. BUG=angleproject:1363 BUG=angleproject:1369 Change-Id: I07a8fe40838d5d4ca32b04910c306edeab4d25a7 Reviewed-on: https://chromium-review.googlesource.com/342051Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Geoff Lang authored
BUG=540829 Change-Id: Ib15658c3fd7132068e9eb1e69a7a04720b3e3d6b Reviewed-on: https://chromium-review.googlesource.com/344250Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
- 09 May, 2016 1 commit
-
-
Jamie Madill authored
This file will allow ANGLE to update the build files and roll dEQP in the same CL, making life a pleasure to live for maintainers. BUG=chromium:605987 Change-Id: I8f574e80a5f7b176f08a9f51c2369e042cae56b7 Reviewed-on: https://chromium-review.googlesource.com/343010Reviewed-by:
Jamie Madill <jmadill@chromium.org>
-
- 08 May, 2016 2 commits
-
-
Corentin Wallez authored
BUG=605775 Change-Id: I9508c70a588270dae871dde79fea1df1c3fd1558 Reviewed-on: https://chromium-review.googlesource.com/341440Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
Previously we allowed copies to a sized format only if the depth of each component matched (including 0 depth). Now we require that the bit depth of non-empty component matches. BUG=605775 Change-Id: If8abab886b0da5a1c8e89adabf3809f928dcedce Reviewed-on: https://chromium-review.googlesource.com/340382Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
- 06 May, 2016 3 commits
-
-
Olli Etuaho authored
The size of the texture storage is now determined by extrapolating the level zero texture dimensions from the base level dimensions. This fixes crashing when images for levels below the base level are not defined, and also fixes texture storage dimensions being calculated wrong in case the levels outside the used level range have dimensions that are inconsistent with the dimensions inside the used level range. Checking texture level completeness in TextureD3D is now done based on the dimensions of the base level, and levels that are outside the base level to max level range are not taken into account. Textures are marked incomplete in case their base level is greater than their max level. Changing the base level can also affect the size of the storage required for the texture. Old storage is now discarded when the base level is changed and the new base level calls for different storage dimensions. Code in TextureD3D is refactored so that "base level" actually means the base level of the texture specified through the GLES API, and "level zero" is used where TextureD3D would sometimes previously use "base level". Changing either the base level or max level can also affect texture completeness, so invalidate the cached completeness in Texture if they are changed. Some of the added tests are still failing on Intel and NVIDIA OpenGL drivers because of driver bugs. Tests also fail on OSX. BUG=angleproject:596 TEST=angle_end2end_tests, dEQP-GLES3.functional.texture.* (no regressions), dEQP-GLES3.functional.shaders.texture_functions.* (no regressions), dEQP-GLES3.functional.state_query.texture.* (no regressions) Change-Id: Icd73d6e29f84a341ed5ff36d5ec5cb2f469cb4e8 Reviewed-on: https://chromium-review.googlesource.com/333352Reviewed-by:Jamie Madill <jmadill@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
-
Steven Bennetts authored
BUG=angleproject:1370 Change-Id: I63e3ee8fc6e08fcd2a908cdca3558af886526cbd Reviewed-on: https://chromium-review.googlesource.com/342740Reviewed-by:
Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
John Bauman authored
This was incorrectly acquiring every plane to texture 0. BUG=angleproject:1332 Change-Id: I6df1401b705d903078e2631634b6bf20a07570de Reviewed-on: https://chromium-review.googlesource.com/342513Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: John Bauman <jbauman@chromium.org>
-
- 03 May, 2016 2 commits
-
-
Jamie Madill authored
BUG=angleproject:1363 Change-Id: I7e7524d95f2ca31c35918f9fe5c0cb681ed93616 Reviewed-on: https://chromium-review.googlesource.com/340746Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Jamie Madill authored
This class can contain impl-specific functionality for a Context. This will eventually replace the Renderer class, and we can then start passing around a gl::Context instead of gl::ContextState. In D3D11, the ContextImpl could hold a DeferredContext, which would enable multi-thread rendering. In GL, we can implement non-virtual (native) Contexts. In Vulkan it might store the logical device. BUG=angleproject:1363 Change-Id: I39617e6d1a605d1a9574832e4d322400b09867ec Reviewed-on: https://chromium-review.googlesource.com/340745Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
- 02 May, 2016 6 commits
-
-
Olli Etuaho authored
Previously the code just silently ignored some filtering parameters for external textures, when in fact trying to set them should result in an error according to the extension specs. BUG=angleproject:1332 Change-Id: I3a691b60561638c562bc1a9780a4dcb88ac43012 Reviewed-on: https://chromium-review.googlesource.com/341441Reviewed-by:
Ian Ewell <ewell@google.com> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
-
Jamie Madill authored
This script makes debugging in Chrome easier on Windows. It scans for the latest set of ANGLE DLLs among many search paths, and then copies them to the latest Chrome Canary binary directory. It also backs up the original DLLs if it finds them. BUG=None Change-Id: I66f8897a1393ceba8f614e4f91c0e1f9f0439eb3 Reviewed-on: https://chromium-review.googlesource.com/341221Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-
Corentin Wallez authored
BUG=605775 Change-Id: Ifb7eee94a395a9e9f5a5c1d6c0f05299162264a9 Reviewed-on: https://chromium-review.googlesource.com/340115Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
BUG=605775 Change-Id: Ie76cae5be686478019c61c1877611bea83d7502f Reviewed-on: https://chromium-review.googlesource.com/340114Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
BUG=605775 Change-Id: Ie7af2c0dc4536b26473510a80955f4628ea496bb Reviewed-on: https://chromium-review.googlesource.com/340113Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
Corentin Wallez authored
BUG=605775 Change-Id: I0e23fae25d450c504f174a080279cf51aebcd123 Reviewed-on: https://chromium-review.googlesource.com/340112Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
-
- 30 Apr, 2016 1 commit
-
-
Jamie Madill authored
BUG=angleproject:1363 Change-Id: I5acf670bd88988941676cc9bc75606d55cca224e Reviewed-on: https://chromium-review.googlesource.com/340744Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
- 29 Apr, 2016 4 commits
-
-
Jamie Madill authored
BUG=angleproject:1363 Change-Id: I49cb5d7319742487c8c00c58ec58f9a29561b9c1 Reviewed-on: https://chromium-review.googlesource.com/340743Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Ian Ewell authored
The main functionality for NV12 texture support through EGL streams has been added. Updates to the compiler, texture code, and stream code were added to support binding to external D3D11 NV12 textures. An end2end test was also added to test sampling of YUV textures and converting to RGB. There is also a new script to convert BMP files to an NV12 texture ready to load into D3D11 for testing purposes. BUG=angleproject:1332 Change-Id: I39b6ec393ea338e2c843fb911acc1b36cd1158a0 Reviewed-on: https://chromium-review.googlesource.com/339454Reviewed-by:
Jamie Madill <jmadill@chromium.org> Commit-Queue: Ian Ewell <ewell@google.com> Reviewed-on: https://chromium-review.googlesource.com/341254Reviewed-by:
Ian Ewell <ewell@google.com>
-
Jamie Madill authored
Moving this out of the Framebuffer class allows us to forward- declare it. BUG=angleproject:1363 Change-Id: I91971c37a92151df508cdf7f0eb8c3e93506d112 Reviewed-on: https://chromium-review.googlesource.com/340741Reviewed-by:
Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
-
Corentin Wallez authored
BUG=605775 Change-Id: I37c1dc7117e7e47ee3a7e031cbccb44f39458c09 Reviewed-on: https://chromium-review.googlesource.com/340111Reviewed-by:
Jamie Madill <jmadill@chromium.org> Reviewed-by:
Geoff Lang <geofflang@chromium.org>
-