|
a7271d35
|
2019-06-13T11:26:26
|
|
Update glslang_validator binary for Linux.
This binary was updated using update_glslang_binary.py.
Please see instructions in tools/glslang/README.md.
Bug: angleproject:3432
Change-Id: Idc02086cf0e1985efd7bf194adf311c85b21e33e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1657712
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
8118265a
|
2019-06-14T11:03:14
|
|
Add more DrawCallPerf offscreen configs.
I thought these might have different performance characteristics when
compared to the main configs. It's possible they would also need to
forego using SwapBuffers to get different profiles. Right now perf is
pretty similar to with the default FBO.
Bug: angleproject:3117
Change-Id: Ic03b4ebd8c606af5121854565525e37e66f91435
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1650785
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
12f38c49
|
2019-06-13T11:38:59
|
|
Vulkan: Use dynamic buffer for driver uniform updates.
This should reduce the number of descriptor sets we need to allocate.
We only allocate a new descriptor set when the underlying buffer is
reallocated. We pass in the buffer offset via the dynamic offsets
parameter.
Bug: angleproject:3504
Change-Id: I40d031cd7295a8d002caff4f331f4a311f07505c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1646757
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
9520a246
|
2019-06-14T07:01:52
|
|
Roll ./third_party/glslang/src 9866ad9195ce..96ee92f09b7c (1 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/9866ad9195ce..96ee92f09b7c
Created with:
gclient setdep -r ./third_party/glslang/src@96ee92f09b7c
The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=jmadill@google.com
Change-Id: I6d4817a07bb789d4973baf13b60c80bff4c18a0b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1660056
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
853ebacf
|
2019-06-13T18:35:25
|
|
Suppress Mac 10.13.6 Intel OpenGL dEQP failures
Bug: angleproject:3531
Change-Id: I246144beb9c12b2df74612831262c7d263698db4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1658718
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
2806a898
|
2019-06-07T12:10:46
|
|
Vulkan: implement primitive restart
Implements ES 3.0 feature GL_PRIMITIVE_RESTART_FIXED_INDEX,
which allows the application to use a fixed "restart" index
to restart the primitive during a single draw call.
This change does't handle GL_LINE_LOOP primitives,
which requires a bit of special handling.
Bug: angleproject:3215
Change-Id: I2388852683fd17328a6a76c48d70a24d67ce8b67
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1650301
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
4316e064
|
2019-06-13T00:32:09
|
|
Vulkan: Output render pass loadOp in graph dump
Bug: angleproject:3205
Change-Id: I7ad99bd2f8ddeb899c5fa86fd39296e5fc96d2c6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1657708
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
88596bea
|
2019-06-13T14:17:48
|
|
Vulkan: Implement a texture descriptor cache.
We noticed a significant hotspot in vkAllocateDesctiptorSets. The app
was repeatedly cycling through a few combinations of active textures.
For each state change in ANGLE we were allocating a new desctiptor set.
This in turn would trigger internal driver memory allocation and cause
jank. Using a cache avoids allocations entirely since the application
is rotating through a stable set of textures.
The descriptor cache is stored in each program. It is indexed by a set
of 32-bit serials. Each texture generates a unique serial for every
combination of VkImage and VkSampler that the texture owns. The texture
descriptor is refreshed every time a texture changes or is rebound.
The descriptor cache is accessed via an unoredered map with the texture
serial sets as the hash key. We also store the maximum active texture
index in the cache key so we don't need to hash and memcmp on all 64
active textures.
This will currently fail if more than MAX_UINT serials are generated.
But that number is high enough that it shouldn't be possible to hit
in practice in a practical amount of time.
Requires shifting the texture sync to ContextVk so we can get the new
serial after the textures are updated. And to make sure to update the
image layouts even if the descriptors are not dirty.
Improves performance of the T-Rex demo. Also improves the score of the
texture state change microbenchmark by about 40%.
Bug: angleproject:3117
Change-Id: Ieb9bec1e8c1a7619814afab767a1980b959a8241
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1642226
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
95428331
|
2019-06-10T18:03:03
|
|
Enable floatBlend for D3D9
Although according to
https://docs.microsoft.com/en-us/windows/desktop/direct3ddxgi/format-support-for-direct3d-feature-level-9-1-hardware
D3D9 doesn't have full blending capability for RGBA32F. But turns out it could provide
correct blending result in reality. As a result of some regression reports by client app, we
decided to turn floatBlend on for D3D9.
I tried to make a native D3D9 program to detect float blending capability.
But turns out it needs quite some effort on Win10 for a D3D newbie.
Considering the fact that D3D9 backend is not fully passing conformance test anyway.
I don't think it worth the effort. Seems to be okay to just turn it on.
Bug: chromium:970532
Change-Id: I66bec120be6eaaa62a5472b8521a97b4d23e924a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1652731
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shrek Shao <shrekshao@google.com>
|
|
0d3cf708
|
2019-06-12T10:07:02
|
|
Vulkan: fix array size for internal shaders
Previously array sizes were calculated as the OR of all flag and enum
masks, equal to 2^(number of bits used for flags and enums) - 1, which
could be less than the actual needed array size.
This fix moves array size calculation to the autogen script and changes
the size to one more than the maximum potential value.
Bug: angleproject:3524
Change-Id: Ia4eb2a83fc7deea84e18958efcda8b57632035f9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1655954
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
05ba83a0
|
2019-06-13T13:26:58
|
|
Refactor DrawCallPerfParams.
Makes it a bit easier to work with. In prep for adding offscreen
configs.
Bug: angleproject:3117
Change-Id: Ie2497574b2687592b7b3df2f7b933a19e83b6d16
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1650784
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
b08d53d3
|
2019-06-13T16:01:20
|
|
Reland "Vulkan: Build validation layers with asserts only"
This reverts commit d187d45ede29369025595c53c7fe3ffed0688870.
Reason for revert: The correct thing to revert was https://chromium-review.googlesource.com/c/chromium/src/+/1657512
Original change's description:
> Revert "Vulkan: Build validation layers with asserts only"
>
> This reverts commit 85fef1bc62f851a4de91408cfafa570dbacf544f.
>
> Reason for revert: This actually seems to break the fucshia_x64 bot:
>
> Exception: Some files were excluded with --exclude-file, but not found in the deps list: lib/libVkLayer_parameter_validation.so, lib/libVkLayer_core_validation.so
>
> See https://analysis.chromium.org/waterfall/culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyRAsSDVdmU3VzcGVjdGVkQ0wiMWNocm9taXVtLzk0ODYyNWNjNDE2NmE3NjRkYWM2NTRlNjlmZDA3MGFjMDE3MzNkNTMM
>
> Original change's description:
> > Vulkan: Build validation layers with asserts only
> >
> > Adding ANGLE to the build includes the validation layers, which are only
> > for development. We don't want any development or debugging code to be
> > included by default in release builds, so tie building the validation
> > layers to enablement of asserts.
> >
> > Bug: angleproject:2475
> > Test: gn gen out/fuchsia_rel --args='target_os="fuchsia" is_debug=false use_goma=true'
> > gn desc out/fuchsia_rel //fuchsia/engine:web_engine runtime_deps
> >
> > Change-Id: I6d195c680255dcbc81e95f8e6f80e1e8ace169a2
> > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1656306
> > Reviewed-by: Jamie Madill <jmadill@chromium.org>
> > Commit-Queue: Michael Spang <spang@chromium.org>
>
> TBR=spang@chromium.org,geofflang@chromium.org,jmadill@chromium.org
>
> Change-Id: Ia74efcce2b3dda02dc0c0d292bdeb5ea7c5c3530
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: angleproject:2475
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1657711
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Jamie Madill <jmadill@chromium.org>
TBR=spang@chromium.org,geofflang@chromium.org,jmadill@chromium.org
Change-Id: Iab669210c23823b403e3fff7f5199a7aadd032bb
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:2475
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1658411
Reviewed-by: Michael Spang <spang@chromium.org>
Commit-Queue: Michael Spang <spang@chromium.org>
|
|
78a51911
|
2019-06-12T14:28:14
|
|
Clean up and expose frontend features to egl.
gl::Workarounds was used to hold frontend features. Change ownership of
this struct from Context to Display, so it can be exposed to egl. Also
rename to features and clean up for consistency.
Bug: angleproject:1621
Change-Id: I82e98e53873abb7a402c93e60f8a662a7263e0d5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1655772
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
94eb189b
|
2019-06-13T13:36:22
|
|
Roll ./third_party/spirv-tools/src 9c0830133b07..42830e5a68c3 (2 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/9c0830133b07..42830e5a68c3
Also rolling transitive DEPS:
./third_party/spirv-headers/src de99d4d834ae..8b911bd2ba37
Created with:
gclient setdep -r ./third_party/spirv-tools/src@42830e5a68c3
The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=jmadill@google.com
Change-Id: I2d968186e25d6b28b3c4105b2e50799e585eb85a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1657458
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
444aa0fe
|
2019-06-08T13:53:17
|
|
Vulkan: Prefer immediate present mode for benchmarking.
This should give the highest possible scores. Note that immediate is
not always available.
Bug: angleproject:3163
Change-Id: Ifedabd39819625b57feda71ed83a7bee8fa0a42b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1638904
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d187d45e
|
2019-06-13T11:56:15
|
|
Revert "Vulkan: Build validation layers with asserts only"
This reverts commit 85fef1bc62f851a4de91408cfafa570dbacf544f.
Reason for revert: This actually seems to break the fucshia_x64 bot:
Exception: Some files were excluded with --exclude-file, but not found in the deps list: lib/libVkLayer_parameter_validation.so, lib/libVkLayer_core_validation.so
See https://analysis.chromium.org/waterfall/culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyRAsSDVdmU3VzcGVjdGVkQ0wiMWNocm9taXVtLzk0ODYyNWNjNDE2NmE3NjRkYWM2NTRlNjlmZDA3MGFjMDE3MzNkNTMM
Original change's description:
> Vulkan: Build validation layers with asserts only
>
> Adding ANGLE to the build includes the validation layers, which are only
> for development. We don't want any development or debugging code to be
> included by default in release builds, so tie building the validation
> layers to enablement of asserts.
>
> Bug: angleproject:2475
> Test: gn gen out/fuchsia_rel --args='target_os="fuchsia" is_debug=false use_goma=true'
> gn desc out/fuchsia_rel //fuchsia/engine:web_engine runtime_deps
>
> Change-Id: I6d195c680255dcbc81e95f8e6f80e1e8ace169a2
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1656306
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Michael Spang <spang@chromium.org>
TBR=spang@chromium.org,geofflang@chromium.org,jmadill@chromium.org
Change-Id: Ia74efcce2b3dda02dc0c0d292bdeb5ea7c5c3530
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:2475
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1657711
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
3a42286a
|
2019-06-13T07:02:01
|
|
Roll ./third_party/spirv-headers/src 9cf7c3a7d2d2..de99d4d834ae (1 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/9cf7c3a7d2d2..de99d4d834ae
Created with:
gclient setdep -r ./third_party/spirv-headers/src@de99d4d834ae
The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-headers-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=jmadill@google.com
Change-Id: I9c323b572ede8944ba6429dcc724916f68200558
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1657731
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
3f2b4e7f
|
2019-06-11T14:47:59
|
|
Fix the crash in angle_deqp_gles31_tests
This crash only happened on a compute test which following a render test.
This root case was that after the render test, mVertexArray11 became an
invalid pointer. However, compute test still went to the common path to
use mVertexArray11. mVertexArray11 is never updated since compute
shader doesn't need to triger DIRTY_BIT_VERTEX_ARRAY_BINDING.
This patch adds checking to avoid compute test to use mVertexArray11.
Besides, more ASSERT checking are added to convenient debugging.
Bug: angleproject:3518, angleproject:1663, angleproject:2619
Change-Id: I446214110d762fc259899cef7635f369fa1f59a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1652866
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
|
|
85fef1bc
|
2019-06-12T15:55:55
|
|
Vulkan: Build validation layers with asserts only
Adding ANGLE to the build includes the validation layers, which are only
for development. We don't want any development or debugging code to be
included by default in release builds, so tie building the validation
layers to enablement of asserts.
Bug: angleproject:2475
Test: gn gen out/fuchsia_rel --args='target_os="fuchsia" is_debug=false use_goma=true'
gn desc out/fuchsia_rel //fuchsia/engine:web_engine runtime_deps
Change-Id: I6d195c680255dcbc81e95f8e6f80e1e8ace169a2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1656306
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Michael Spang <spang@chromium.org>
|
|
ebddd1a2
|
2019-06-11T16:32:46
|
|
implement core egl image entry points
Bug: angleproject:2467
Change-Id: Ica943a3972333e90a516aa6960f333cc9c378be2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1653714
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
169ef353
|
2019-06-12T14:42:13
|
|
Vulkan: Fix build with custom secondaries disabled.
We should also add a compile-only target that verifies the build works
as expected.
Bug: angleproject:3117
Change-Id: Ib55969cdd0e670c123cdbe98bd0decf2204e7267
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1650789
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
9728643b
|
2019-06-12T15:27:34
|
|
Roll SPIR-V headers and Tools.
A dependency was breaking the auto-roller.
Bug: angleproject:3527
Change-Id: Iec3980a1d51c000b7a902e1d61d4d84e5f885000
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1655773
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
13ac9422
|
2019-06-10T17:53:09
|
|
Vulkan: add support for shadow samplers.
Adds support for ES 3.0 shadow samplers.
Test: ./angle_deqp_gles3_no_gtest --deqp-egl-display-type=angle-vulkan -n 'dEQP-GLES3.functional.texture.shadow.2d.*'
Bug: angleproject:3211
Change-Id: Ic82ecfe19290fb952fcb0ba423691b5bac87c4a3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1652021
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
fce1e2d1
|
2019-06-04T15:02:08
|
|
Extend eglGetPlatformDisplay to allow feature overrides.
Add EGL_FEATURE_OVERRIDES_ENABLED_ANGLE and
EGL_FEATURE_OVERRIDES_DISABLED_ANGLE to submit lists of strings naming
the features that should be overridden (either enabled or disabled) on
display creation.
Bug: angleproject:1621
Change-Id: I4bb75c5dbab0e3b701a72069c38f8c60ecfffad2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1646595
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2589cdcc
|
2019-06-11T11:38:41
|
|
GLSLTest stack overflow bug fix
Bug: angleproject:3514
Change-Id: Id02bdb230dce0435b0b33db101d196596d6e8c93
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1652435
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a029ce47
|
2019-06-10T16:56:37
|
|
removed msvs_projects from devsetup
Bug: angleproject:3516
Change-Id: I127f702112d68e24bdc9810e5a7ee117190efad5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1652210
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
9aa865a6
|
2019-06-06T17:10:51
|
|
Vulkan: Add missing command pool reset.
We were still calling destroy in checkCompletedCommands. We can
instead call reset.
May not significantly impact performance.
Bug: angleproject:3489
Change-Id: I61a2cb154faac56dc78a49678dd822d81ce16ad2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1647029
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c75d6dc8
|
2019-06-05T16:12:01
|
|
Vulkan: Add support for gl_VertexID/gl_InstanceID
Adds support for GLES 3.0 feature which adds gl_VertexID and
gl_InstanceID built-in variables to vertex shader.
Bug: angleproject:3221
Change-Id: I372d7ac34bed376b506e327725f0eca2513852fa
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1646735
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6064e6ab
|
2019-06-11T04:01:12
|
|
Reland "Temporarily disable creating D3D debug device."
This reverts commit 28394c2295335929c17bbfe0ab74f923cd234ff2.
Reason for revert: may be the cause of flakiness on Win10 Debug (NVIDIA) per http://crbug.com/972914 .
Original change's description:
> Revert "Temporarily disable creating D3D debug device."
>
> This reverts commit 3d544fffe7ff9284b21e3a15f638297c827bbc21.
>
> Reason for revert: Seems like flakiness is not related.
>
> Suppress D3D11 test failures uncovered by re-enabling D3D debug device:
> ComputeShaderTest.DispatchCompute
> Texture2DTestES3.TextureImplPropogatesDirtyBits
> D3DTextureTestMS.*
>
> Also a small fix to ANGLETestBase::checkD3D11SDKLayersMessages
> to clear reported messages, otherwise the failures are also reported
> for tests following the one with the actual failure.
>
> Original change's description:
> > Temporarily disable creating D3D debug device.
> >
> > To diagnose whether Windows Intel end2end tests flakiness
> > is related to creating debug device and new version of Windows SDK.
> >
> > Bug: angleproject:3153
> > Change-Id: Ica7eae3fe875e22203b6dfd98b83604d66a97737
> > Reviewed-on: https://chromium-review.googlesource.com/c/1476954
> > Reviewed-by: Geoff Lang <geofflang@chromium.org>
> > Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
>
> Bug: angleproject:3153, angleproject:3493
> Bug: angleproject:3501, angleproject:3512, angleproject:3513
>
> Change-Id: I232da72aa09c2b9230cf179dd54e1731f8365f8e
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1480854
> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
TBR=ynovikov@chromium.org,geofflang@chromium.org,jmadill@chromium.org
Change-Id: I38a5cc9bb6ebcd50e97e40cc972a82679e73732a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:3153, angleproject:3493, angleproject:3501, angleproject:3512, angleproject:3513
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1652784
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
1b5ad312
|
2019-06-10T18:41:08
|
|
Omit "de_DE.ISO-8859-15@euro" from ShCompileTest.DecimalSepLocale on Windows.
A new SDK version started throwing on locales that have a code page
section (the part after the dot) that's >= 16 characters long.
That's a system library bug, but for now we need to work around it.
Bug: chromium:972372
Change-Id: I64cee1051e854dac84e8c3c728ce65606b0dc89b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1652016
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
28394c22
|
2019-02-21T03:24:58
|
|
Revert "Temporarily disable creating D3D debug device."
This reverts commit 3d544fffe7ff9284b21e3a15f638297c827bbc21.
Reason for revert: Seems like flakiness is not related.
Suppress D3D11 test failures uncovered by re-enabling D3D debug device:
ComputeShaderTest.DispatchCompute
Texture2DTestES3.TextureImplPropogatesDirtyBits
D3DTextureTestMS.*
Also a small fix to ANGLETestBase::checkD3D11SDKLayersMessages
to clear reported messages, otherwise the failures are also reported
for tests following the one with the actual failure.
Original change's description:
> Temporarily disable creating D3D debug device.
>
> To diagnose whether Windows Intel end2end tests flakiness
> is related to creating debug device and new version of Windows SDK.
>
> Bug: angleproject:3153
> Change-Id: Ica7eae3fe875e22203b6dfd98b83604d66a97737
> Reviewed-on: https://chromium-review.googlesource.com/c/1476954
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Bug: angleproject:3153, angleproject:3493
Bug: angleproject:3501, angleproject:3512, angleproject:3513
Change-Id: I232da72aa09c2b9230cf179dd54e1731f8365f8e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1480854
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
f1a40a84
|
2019-06-10T07:01:52
|
|
Roll ./third_party/glslang/src d3692c701b12..9866ad9195ce (4 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/d3692c701b12..9866ad9195ce
Created with:
gclient setdep -r ./third_party/glslang/src@9866ad9195ce
The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=geofflang@google.com
Change-Id: Iae19d3e8f16004de66cf434bb2ea8f87f89a4e71
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1651403
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
2d0a9acb
|
2019-06-07T16:22:01
|
|
Initialize STACKFRAME64 for ARM64
Bug: chromium:972228,893460
Change-Id: I0c77d19e70c337d70bc55f65f6893d5bbe18407b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1648670
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c74c3d81
|
2019-06-05T10:55:40
|
|
DEBUG: Log all debug messages to console
Logs all debug messages produced by GL and EGL.
This is helpful for debugging when the application does not register a
debug callback.
Validation errors produce log messages with level INFO, and internal
errors produce log messages with level WARN.
Bug: angleproject:3505
Change-Id: I269055aec49e1d77edeedb482fa6873c8f79f853
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1645817
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
70642e42
|
2019-06-05T14:55:49
|
|
Vulkan: Implement ES 3.0 rasterizer discard
Rasterizer discard is a feature that allows the graphics pipeline
to skip the fragment shader stage.
Implementing rasterizer discard in Vulkan is as easy as not binding
a fragment shader binary.
Tests for rasterizer discard live in
dEQP-GLES3.functional.rasterizer_discard.*.
Bug: angleproject:3214
Test: dEQP-GLES3.functional.rasterizer_discard.*
Change-Id: I0815df3b70f6f9cdc6c8c87ec4813bb629d8bd5f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1646692
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
35b25fc6
|
2019-06-07T11:54:36
|
|
For WebGL warn on late extension directive
A previous change based on ESSL 1.00 spec had made it an error in all
cases when an extension directive appeared in a shader after the first
non-preprocessor token. However, this is incorrect for WebGL 1.0 so
adding warning case for WebGL.
BUG=chromium:971660
Change-Id: I026fe60e8b1876de65b001b676f7a0552739a20c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1648661
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
e7e808af
|
2019-06-07T12:53:28
|
|
Disable Linux stack traces on CFI builds
Bug: 971977
Change-Id: I2a872bd814e9a356baa3d304e1c352b6a619583e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1649300
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
ed65dc43
|
2019-06-03T11:21:00
|
|
Vulkan: implement glSampleCoverage
Emulated by applying a mask on top of the mask from glSampleMask.
Bug: angleproject:3204
Change-Id: I4c80ab0a3261cbf1b8a43c270fe13c2a247ea663
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1639749
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
b407e1a0
|
2019-06-03T17:15:51
|
|
Vulkan: implement ES3 blit
Augment the resolve shaders to be able to stretch and blit too. The
UtilsVk resolve function is accordingly expanded to include blit.
Bug: angleproject:3200
Change-Id: I30b172a5e388089735ab494f55cbfdc2781a8bf9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1635753
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
ea49f6f5
|
2019-06-06T12:58:27
|
|
Debug: Add LOG_INFO logging level
Will be used for logging GL/EGL debug messages.
Bug: angleproject:3505
Change-Id: I10ff32dd4f9227cabac2f3d9425b0428e7af1398
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1648714
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
148ecd89
|
2019-05-28T14:14:42
|
|
Vulkan: Handle VK_ERROR_OUT_OF_DATE returned by vkAcquireNextImageKHR()
There is some new Android HWUI/SkiaGL code, that (in certain cases)
looks up the underlying Vulkan swapchain that ANGLE created, and adds
an image to it. This causes the next call to vkAcquireNextImageKHR() to
return VK_ERROR_OUT_OF_DATE and requires the swapchain to be recreated.
Bug: angleproject:3480
Test: Use ANGLE on Android and verify apps load correctly.
Change-Id: I21c86035664878e75d6a9dc769546747aa4c8256
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1632424
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
55ca3a51
|
2019-06-05T17:32:32
|
|
Use execv instead of execve w/ environ.
Some platforms don't want us messing with environ, and these seem to be
equivalent.
Bug: angleproject:3506
Change-Id: I66804e8accc30421c1cd32c0eda750500e3ecb60
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1646887
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ec57a240
|
2019-06-06T13:57:27
|
|
Don't remove the symbol_visibility_hidden config in asan builds.
We remove symbol_visibility_hidden to get better stack traces in debug
builds but it causes ASAN issues with multiply instantiated globals.
BUG=angleproject:3507
Change-Id: I8ec664bf7d9506cc45afb6f864de7b7ba7cbe99b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1648275
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
3f17f929
|
2019-06-05T13:13:12
|
|
Avoid recreating swapchain for preRotation
Android will return VK_SUBOPTIMAL_KHR if the orientation of the
screen is not optimial for the orientation of the device.
We were re-creating the swapchain when this happens but we weren't
changing the orientation and would get this return code every
time we call vkQueuePresent and re-create the swapchain each time.
Apparently recreating the swapchain causes visual artifacts on
some devices. Just ignoring VK_SUBOPTIMAL_KHR allows things to
work.
Bug: angleproject:3497
Need to implement proper preRotation support for longterm fix.
Bug: angleproject:3502
Change-Id: I0904eb60b742d24618d502c111510117758a8502
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1641206
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
a4a24af3
|
2019-06-06T10:50:21
|
|
Vulkan: fix uint indices causing incomplete buffer
Fixes buffer size calculation when uploading element buffer
to account for 4-byte (uint) indices.
Bug: angleproject:2902
Change-Id: Id70fc0fdffecd0b27995820bd0ad88e4cb61e013
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1648325
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
266a9e8d
|
2019-06-05T15:15:10
|
|
Vulkan: Move descriptor pools into ProgramVk.
Previously ContextVk owned the descriptor pools. We were trying to
maximize descriptor reuse to conserve memory. However the default
uniforms would have no possible sharing. And because uniform buffers
are usually unique to a program it's likely there would be less reuse.
Image descriptors could be shared. But with the advent of a descriptor
cache in the Program it becomes difficult to manage the cache through
descriptor pool recycling. Moving the pools into the Program simplifies
the cache management. We could look at adding back more reuse in the
future.
Also shifts driver uniforms back into the end of the descriptor sets
to make indexing into the Program's descriptor pools simpler.
Bug: angleproject:3117
Change-Id: I52bb49cf322d944ad7cf08791efdf24b7fe573ce
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1644775
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
ef52c367
|
2019-06-06T07:01:52
|
|
Roll ./third_party/glslang/src 2f4a8dfd3a59..d3692c701b12 (1 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/2f4a8dfd3a59..d3692c701b12
Created with:
gclient setdep -r ./third_party/glslang/src@d3692c701b12
The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=geofflang@google.com
Change-Id: I14c202a990d59c5f4949e04dd5cfd68b92a2f743
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1647775
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
b91f87b6
|
2019-06-05T11:38:39
|
|
Vulkan: enable OES_element_index_uint for Vulkan
We already handle 32-bit indices, so this change enables the corresponding extension for ES 2.0.
Bug: angleproject:2902
Change-Id: Iccde1d4aac383a9c11edf851778ff315de8d4ad1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1646032
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: James Dong <dongja@google.com>
|
|
03bc3db8
|
2019-06-05T13:48:43
|
|
Vulkan: Minor cleanup to UtilsVk.
Renames "ContextVk *context" to "ContextVk *contextVk" for consistency.
Also adds an "allocateDescriptorSet" helper function.
Bug: angleproject:3117
Change-Id: Id03e30432d8e5e35b682350a8e98fd2e62cdf89a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1644776
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
eef34e17
|
2019-06-04T15:16:24
|
|
Don't request backend version in the sample application.
The major and minor versions in EGLPlatformParameters are for the backend
version (eg D3D 10 vs 10.1 vs 11.0), not the GLES version exposed.
BUG=angleproject:3499
Change-Id: I4bf89769b4eab397cdc2e3c51ed94c1e57c4d54b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1643421
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5643afc0
|
2019-06-04T15:37:58
|
|
Vulkan: add GLSL placeholder for transform feedback output
Bug: angleproject:3205
Change-Id: Id3941b6953e03e7b2183acc57b2c6db4a6439352
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1643424
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
ac8bafc0
|
2019-06-03T14:59:39
|
|
Remove unused bindGenericBuffer from TransformFeedback*
Bug: angleproject:3205
Change-Id: I6dc29b48155cd3c0ef98248076cf02e70c9310d9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1643423
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
453dfc44
|
2019-06-05T07:01:52
|
|
Roll ./third_party/glslang/src a549bb817523..2f4a8dfd3a59 (2 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/a549bb817523..2f4a8dfd3a59
Created with:
gclient setdep -r ./third_party/glslang/src@2f4a8dfd3a59
The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=geofflang@google.com
Change-Id: Ifa1490b9cf68e30bb4d103d8865fd5ec05c6f825
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1644757
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
3c219171
|
2019-05-31T16:23:23
|
|
Add ARM vendor id
This fixes a crash when run with asserts on ARM GPU:
[2089630:1566159375:0531/202059.262200:ERROR:angle_platform_impl.cc(47)] GetVendorString(133): ! Assert failed in GetVendorString (../../third_party/angle/src/libANGLE/renderer/driver_utils.cpp:133): vendorId == 0xba5eba11
Bug: angleproject:3492
Change-Id: I786edc459b1567a3eee0034a0d8ae7050ac31952
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1642331
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
44063c80
|
2019-06-04T15:20:30
|
|
Vulkan: Store array buffer conversions in BufferVk.
The intent of this CL is to call convertVertexBuffer*PU only when we
have new data to convert. If the app unbinds and rebinds a vertex
buffer without changing the data we can now retrieve the cached
vertex buffer info from the BufferVk class. Previously we would always
reconvert the data on a rebind. This was slowing down applications and
benchmarks.
To achieve this we add a conversion cache to BufferVk. Each cache entry
stores a key based on the vertex info. Also we store a ring buffer for
each cache entry and a flag to indicate if the entry is dirty. The
cache is dirtied on a bufffer data update or a map call.
Improves performance in the T-Rex benchmark.
Bug: angleproject:3495
Change-Id: Ia999c9187510748ba95bc98362eb332e1990d270
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1638903
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
e431aaa1
|
2019-06-04T11:36:43
|
|
Rename EGL_ANGLE_workaround_control to EGL_ANGLE_feature_control.
For consistency, call these ANGLE "features", a subset of which may be
workarounds. Also, whether the feature is enabled/disabled should be
publically visible as "status".
Bug: angleproject:1621
Change-Id: I0de90a932fbfe1fc9b59138153d616d29fa7268b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1643410
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
071d2a44
|
2019-06-03T11:49:13
|
|
Vulkan: Process dirty framebuffers first
The currently bound framebuffer affects some dirty bits. This means
that processing those dirty bits temporarily use data from a framebuffer
that's about to be changed. At best, that creates unnecessary dirty
bits in the Vulkan pipeline description.
Bug: angleproject:3204
Change-Id: Ie001d6c8fcc61af2e78cf2cb58a1691d8b735ff3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1639750
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
de70a713
|
2019-06-03T17:05:16
|
|
Vulkan: Rename Resolve* shaders to BlitResolve
In preparation for adding blit functionality.
Bug: angleproject:3200
Change-Id: I77b6b6cbe90b26ee23c25edebaa2b130f3c2987a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1641626
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2dd40a44
|
2019-05-30T16:40:13
|
|
Add eglQueryDisplayAttribANGLE to query workarounds count.
Add eglQueryDisplayAttribANGLE based on eglQueryDisplayAttribEXT to add
behavior for quering the count of all workarounds available. Used
externally to build a list of workarounds.
Bug: angleproject:1621
Change-Id: I793acedc76111fd018600169d58bf5d8cf4a63ee
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1637817
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
20d380fa
|
2019-06-03T15:21:47
|
|
Print stack backtrace on critical failure.
We reuse code from Skia to walk the stack on Posix platforms. See:
https://github.com/google/skia/blob/master/tools/CrashHandler.cpp
On Windows we use a BSD-licensed tool called StackWalker. See:
https://github.com/JochenKalmbach/StackWalker
This allows us to get high quality stack traces on Win/Linux/Mac.
Bug: angleproject:3162
Change-Id: I9c50ede2c6a41ed0ee85a0507372df42a487bcef
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1632950
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
5993d899
|
2019-06-03T13:05:38
|
|
Vulkan: Use storage buffers for index conversion shader.
This allows us to use the shader regardless of driver support for
texel buffer views. It also allows us to convert indices on the GPU
unconditionally.
We add a new internal compute shader that converts pairs of indices
into a packed single uint value that stores two 16-bit values. In the
future we could add support for converting primitive restart indices.
Should speed up benchmarks on systems which didn't have R8_UINT support
for compute shader buffers.
Bug: angleproject:3490
Change-Id: I56ca0cabb094e97f36ab4edc779e6c8ad2d2601e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1639058
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
4a757416
|
2019-06-03T14:04:01
|
|
D3D: Fix heap corruption when copying texture arrays
Do not use depth dimension when copying normal 2D textures of a 2d texture
array. It copies past the end of the buffer obtained via
ID3D11DeviceContext::Map().
Fixes a case which can be reproed with the payload disabled:
gn args out\debug --args="is_debug=true"
ninja -C out\debug angle_end2end_tests
out\debug\angle_end2end_tests ^
--gtest_filter=Texture2DArrayCopy.SnormFormats* --gtest_catch_exceptions=0 ^
--gtest_repeat=-1
Bug: angleproject:2865
Change-Id: Id9bc5489fa41749d1b1d2e87992166b1a0af76fc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1641247
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
12a52423
|
2019-06-03T10:39:54
|
|
Sharpen GL test skip condition for NVIDIA
The skip condition for GLSLTest_ES3.VaryingStructNotInitializedInVertexShader
is modified to not skip NVIDIA on windows.
Bug: angleproject:3413
Change-Id: I126d9fa9e36c3b6c07abfd24bdaf6feb76ac4f6f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1640208
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
2c9e47a8
|
2019-06-03T07:01:52
|
|
Roll ./third_party/glslang/src 6d88284607d2..a549bb817523 (2 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/6d88284607d2..a549bb817523
Created with:
gclient setdep -r ./third_party/glslang/src@a549bb817523
The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=cwallez@google.com
Change-Id: I9eb385899560332a48da791ab2add2c737c44848
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1640254
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
fa37aef8
|
2019-06-03T07:01:45
|
|
Roll ./third_party/spirv-tools/src 209ff0ce90ce..699e167d78ee (3 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/209ff0ce90ce..699e167d78ee
Created with:
gclient setdep -r ./third_party/spirv-tools/src@699e167d78ee
The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=cwallez@google.com
Change-Id: I078d9f2857080e7675808b583658ab974a468936
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1640253
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
0730e630
|
2019-05-31T14:25:37
|
|
Fix needStructMapping
In previous logic, we didn't check the structure field member type. So
when passing the non-struct member of a structure to a function, it
would think that struct mapping was needed.
In this patch, we add more checking so that struct mapping only happens
when there are structure copy or passing a structure to a function.
BUG=angleproject:2967
Change-Id: Ic98e884c8f8540e180cdf40a0e036ffef18c1689
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1638227
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
98f21671
|
2019-05-31T15:34:39
|
|
Vulkan: Refactor index buffer convert functions.
This is a prepratory refactor for converting index buffers on the GPU
using a more generic compute shader. No functional change.
Bug: angleproject:3490
Change-Id: Iadf4b1429314db6850320aee33c4113f38577378
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1639057
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c104b2d2
|
2019-05-31T16:25:02
|
|
Re-enable WGL perf test configs.
These were accidentally dropped in https://crrev.com/c/1574674 .
Re-enable so we can gather better perf stats on Windows machines.
Bug: angleproject:3494
Change-Id: I92e9ba7e7783fddde1a47c0ffe056da7750d2c3b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1639063
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
f7106d16
|
2019-05-30T17:34:42
|
|
Revert "Revert "Vulkan: Use atomics in SerialFactory.""
This reverts commit 35fa85ba2fafa583bd706b64d181f3f95094325d.
Reason for revert: This commit was an innocent bystander. The
bugs are intermittent, requiring multiple runs to verify.
Bug: angleproject:3492
Change-Id: Idc9dcb1631cfca5fea342266c732732c6f2bd2d5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1636263
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
cc9bc655
|
2019-05-31T12:00:25
|
|
Vulkan: Fix synchronization with current surface
Since a6242e4d4 ("Vulkan: Support submitting multiple semaphores"),
semaphores are not generated because the function generating checks for
non-empty command graph right after flushing.
Bug: angleproject:3492
Change-Id: I03db4a77fe24fdfdf39ba535b235451ae0275a0e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1638579
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Michael Spang <spang@chromium.org>
|
|
bc30e72c
|
2019-05-30T13:30:33
|
|
Vulkan: Recycle command pools with vkResetCommandPool.
vkDestroyCommandPool has worse performance than reset. Instead of
destroying and creating new command pools for every batch of work we
can instead recycle unused command pools. This seems to improve
performance on most systems.
Bug: angleproject:3489
Change-Id: I7f8fe7f9385ca481e04f226a26426c3e92da19ff
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1636410
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
|
|
94d5e051
|
2019-05-31T09:48:52
|
|
Roll ./third_party/glslang/src 625eb25d6e80..6d88284607d2 (1 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/625eb25d6e80..6d88284607d2
Created with:
gclient setdep -r ./third_party/glslang/src@6d88284607d2
The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=cwallez@google.com
Change-Id: I473e72ad545d8a44bb98f316073f56de907d34f6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1638344
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
c4d89869
|
2019-05-31T09:27:58
|
|
Roll ./third_party/spirv-headers/src 7ac42f80c0e8..903d447d96eb (1 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/7ac42f80c0e8..903d447d96eb
Created with:
gclient setdep -r ./third_party/spirv-headers/src@903d447d96eb
The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-headers-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=cwallez@google.com
Change-Id: I73c2aca43f3c6d2f2ba1dfab4f22b0f27d273dee
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1638341
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
3051121c
|
2019-05-31T09:05:45
|
|
Roll ./third_party/spirv-tools/src e7866de4b1dc..209ff0ce90ce (1 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/e7866de4b1dc..209ff0ce90ce
Created with:
gclient setdep -r ./third_party/spirv-tools/src@209ff0ce90ce
The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=cwallez@google.com
Change-Id: Ib8e46d85d321611522294e7d517662ab3ea24983
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1638338
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
0a56f0e3
|
2019-05-14T17:07:27
|
|
Vulkan: Update front face mode during syncState()
When handling DIRTY_BIT_DRAW_FRAMEBUFFER_BINDING in syncState(), the
call to update the front face was missing, so culling could be enabled
for the wrong front faces.
Bug: angleproject:3237
Test: Verify 3D apps render (more) correctly
Test: New SimpleStateChangeTest end2end tests
Change-Id: I1d94a977bea9e48d90b5346861e5565d2371cadd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1611753
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
35fa85ba
|
2019-05-29T15:59:13
|
|
Revert "Vulkan: Use atomics in SerialFactory."
This reverts commit 1b0f79ee92b51122634fca6342876db196b85e3c.
Reason for revert: Breaks a number of applications on Android
Original change's description:
> Vulkan: Use atomics in SerialFactory.
>
> This allows serials to be generated from multiple threads without locking for
> very little/no cost.
>
> BUG=angleproject:2464
>
> Change-Id: Id61d170e7a985c3100da0057156859ffcb083dad
> Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1516514
> Commit-Queue: Geoff Lang <geofflang@chromium.org>
> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
TBR=geofflang@chromium.org,syoussefi@chromium.org,jmadill@chromium.org
Change-Id: I52011f294d68490998869fa898e929fd41eaa51c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1636272
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Cody Northrop <cnorthrop@google.com>
|
|
6d9b8908
|
2019-05-29T13:18:31
|
|
Vulkan: Merge Color and Depth/Stencil resolve shaders
There is a good deal of overlap in the way these shaders calculate
offsets, flip etc. This change merges the two shaders together, as well
as the UtilsVk functions that invoke them.
This is in preparation for adding blit functionality to the same
shader.
Bug: angleproject:3200
Change-Id: Id7c2cf12e05db1802ae497766fb361fe4bef6479
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1635750
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
a2ad3619
|
2019-05-30T07:01:31
|
|
Roll ./third_party/spirv-headers/src 7f4277e21b52..7ac42f80c0e8 (1 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git/+log/7f4277e21b52..7ac42f80c0e8
Created with:
gclient setdep -r ./third_party/spirv-headers/src@7ac42f80c0e8
The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-headers-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=cwallez@google.com
Change-Id: Ic053c4d3b3d32cad16ee01558f65f10041eee62a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1636781
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
addc81ce
|
2019-05-30T07:01:34
|
|
Roll ./third_party/glslang/src 66e46037d74f..625eb25d6e80 (1 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/66e46037d74f..625eb25d6e80
Created with:
gclient setdep -r ./third_party/glslang/src@625eb25d6e80
The AutoRoll server is located here: https://autoroll.skia.org/r/glslang-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=cwallez@google.com
Change-Id: Ic462453728a05f72f41f7cacd2598fb23a257fc8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1636782
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
b2021956
|
2019-05-30T07:01:16
|
|
Roll ./third_party/spirv-tools/src f051812343eb..e7866de4b1dc (4 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/f051812343eb..e7866de4b1dc
Created with:
gclient setdep -r ./third_party/spirv-tools/src@e7866de4b1dc
The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=cwallez@google.com
Change-Id: I93a446c4a2671de71781c2b757db872b26a5aed6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1636780
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
172e5d37
|
2019-05-29T10:00:50
|
|
Vulkan: Implement universal stencil resolve
This is done by resolving stencil into a temporary buffer and copying
that into the stencil aspect of the resolved image.
Bug: angleproject:3200
Change-Id: I29111b44db2cb093acc4544034fbe61178f055a1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1635709
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
ab6a59b2
|
2019-05-21T21:26:26
|
|
Vulkan: Submit semaphores from glWaitSemaphoreEXT & glSignalSemaphoreEXT
Implement submission of client semaphores passed to glWaitSemaphoreEXT &
glSignalSemaphoreEXT.
This also relaxes the expectation that we will not flush() if there are
no commands. Signaling semaphores in particular requires queue submission
irrespective of whether there are any command buffers to submit. If there
are neither commands nor semaphores, we can still skip queue submission.
WebGL runs in Chrome with ANGLE & Vulkan interop as of this patch, albeit
with incorrect synchronization due to texture barriers not being
implemented yet. Quite a few flags are needed to try this:
GN args: angle_vulkan_conformant_configs_only=true
chrome \
--enable-features=UseSkiaRenderer,UiGpuRasterization \
--enable-gpu-rasterization \
--enable-oop-rasterization \
--enable-vulkan \
--use-gl=angle \
--use-angle=vulkan
Bug: angleproject:3289
Change-Id: I3d49c230a2fbf0cd2a2b943b05ded0e4604cc313
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1623815
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d3e7a41b
|
2019-05-29T14:40:52
|
|
Vulkan: fix buffer copy barriers
Bug: angleproject:3362
Change-Id: Ibf6520fb73bb1a9b76714cddd786569789c70430
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1635752
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Courtney Goeltzenleuchter <courtneygo@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
f52f2637
|
2019-05-23T13:52:52
|
|
Add EGL_ANGLE_workaround_control extension.
This extension is used to query strings from an array based on index,
which will be used to query all the information about workarounds in
ANGLE.
Bug: angleproject:1621
Change-Id: I27157f278f7f17c92c8b4fd7753e2a5ecd0528f6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1627723
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
06055b5e
|
2019-05-29T14:31:42
|
|
Update Windows AMD suppression.
Should have been specified for OpenGL instead of D3D11.
Bug: chromium:967796
Change-Id: I099ab51709f69e7abb7fe698e6010241bdccb4bf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1635751
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
a6242e4d
|
2019-05-22T15:15:09
|
|
Vulkan: Support submitting multiple semaphores
With GL_EXT_semaphore, the client can create and submit semaphores to
synchronize with an external vulkan instance. We need to be able to
submit semaphores from both the current surface as well as the client.
In order to support glWaitSemaphoreEXT, make ContextVk hold a vector of
semaphores that will be submitted with the next batch.
In order to support glSignalSemaphoreEXT, make ContextVk::flush() build a
vector of semaphores to submit, rather than just one. Submissions that
result from a client signal operation will need to signal both the client
semaphore as well as a semaphore from the surface's semaphore chain.
Bug: angleproject:3289
Change-Id: I52b07c4c2a7bf52300d3107f028aa64585c6c4db
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1623814
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
2008c8ff
|
2019-05-21T20:38:59
|
|
Vulkan: Reuse flushImpl() from finishImpl()
Reuse flushing logic in finish() as there's an increasing amount of logic
needed to submit work in order that would otherwise be duplicated.
Bug: angleproject:3289
Change-Id: Ia489e285615ebaa48b01d8a202871bebf7de0ac2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1623813
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Michael Spang <spang@chromium.org>
|
|
f2a1c384
|
2019-05-21T16:32:49
|
|
Vulkan: Implement multisampled framebuffers
Simultaneously implements ANGLE_framebuffer_multisample and ES3
multisampled framebuffers.
Additionally, implements ES3 framebuffer blitting where multisampled
framebuffers are involved.
Bug: angleproject:3203
Bug: angleproject:3204
Bug: angleproject:3200
Change-Id: I5694a30f71168e807688a9568e3742b81d907918
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1622667
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
e0956a16
|
2019-05-06T10:34:27
|
|
Vulkan: Rename getSubmitFence to getNextSubmitFence.
Now that getLastSubmittedFence exists, the new name is more specific.
BUG=angleproject:2464
Change-Id: I0bce1387b95b7b7b739e311d37e35e7d162d8f2d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1595435
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
262e2824
|
2019-05-20T14:24:40
|
|
Use D3D11 GetDimensions driver workaround for 3D textures
Some NVIDIA D3D11 drivers are buggy and interprets the level passed to
GetDimensions as being relative to 0, rather than the SRV's MostDetailedMip.
This affects all integer format textures, because the dimensions are used for
sample position calculations with integer format textures, which leads to
sampling outside texture when the base level is non-zero.
Bug: angleproject:3441
Change-Id: Ic54328e3d712e28a40efb4e63b8fce0baeb4ef42
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1619785
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1ad4771e
|
2019-05-29T07:01:16
|
|
Roll ./third_party/spirv-tools/src 6c7db9c63098..f051812343eb (3 commits)
https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/6c7db9c63098..f051812343eb
Created with:
gclient setdep -r ./third_party/spirv-tools/src@f051812343eb
The AutoRoll server is located here: https://autoroll.skia.org/r/spirv-tools-angle-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=cwallez@google.com
Change-Id: Iece64f0eeb92f9b1446f6cbf4a54a7e0b3acc093
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1634370
Reviewed-by: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
|
|
ded5f903
|
2019-05-01T13:58:27
|
|
Vulkan: Make the Vulkan renderer thread safe.
Gate all access to the queue and caches with mutexes. Does not handle sharing
of resources in share groups across threads yet.
BUG=angleproject:2464
Change-Id: I297f8f1a535b99efca663cf72bac3d90df8b5d97
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1592253
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1b0f79ee
|
2019-02-28T11:08:21
|
|
Vulkan: Use atomics in SerialFactory.
This allows serials to be generated from multiple threads without locking for
very little/no cost.
BUG=angleproject:2464
Change-Id: Id61d170e7a985c3100da0057156859ffcb083dad
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1516514
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
29ac274f
|
2019-05-28T15:53:00
|
|
D3D11: Suppress failing Texture test on AMD.
Bug: chromium:967796
Change-Id: I48280909db9c927c12d3c0d97f1ad451dffb849e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1632949
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
ee244c77
|
2019-05-06T10:30:18
|
|
Vulkan: Move command graph and garbage to ContextVk.
To support multithreading, contexts should manage their own command graphs
and garbage. This allows safe access to vulkan resources such as command pools
without thread synchronization.
BUG=angleproject:2464
Change-Id: I930149bc9f0793028761ee05ab50b8c0a4dec98a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1516515
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
dfe141f0
|
2019-05-28T11:06:40
|
|
Addition of dEQP "KHR" test variants to generate_stats
Generate_stats should handle new step names and put them on new sheets.
Also update the docs to show the KHR tests.
Bug: angleproject:3486
Change-Id: I4fef774d98b0e622182686506376f788a7568376
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1632529
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
5a808b86
|
2019-05-27T13:22:32
|
|
GL: Allow BlitGL to copy from external textures.
BUG=967410
Change-Id: I503dda6f2493b56123a8bd369e2f1305971abb4e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1364110
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
44462cd6
|
2019-05-27T17:12:21
|
|
D3D: Use the ProgramD3D::GetExecutableTask context for loading program binaries
ProgramD3D::GetExecutableTask is a d3d::Context type itself so that errors can
be recorded in a thread-safe maner. Use the task context when loading program
binaries in ProgramD3D.
Fix up incorrect casts in RendererD3D::loadExecutable in both D3D9 and D3D11
backends to stop incorrectly assuming the context type.
BUG=962439
Change-Id: I5b29372a7254f709e1bbb67ee322ef4109f73e48
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1630294
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
ce9be8c7
|
2019-05-24T09:35:06
|
|
Vulkan: Have a cubemap as 2D-array view handy
Previously, only texture copies used a shader that performed
texelFetch(). To support cubemaps, a hack was used to temporarily
create a 2D array view.
With upcoming support for multisample resolve, more shaders will be
using texelFetch() all requiring this workaround. This change instead
makes sure that a separate view is created for cubemaps for the purpose
of being used with these shaders. As a result, we have three logical
views on textures and render targets:
- Draw: a view that can be used as a color/depth/stencil attachment
- Read: a view that can be used to sample from
- Fetch: a view that can be used to fetch from
The fetch view is generally the same as the read view, except for cube
maps.
Bug: angleproject:3200
Change-Id: I21547f728c16f0aa8f0fcae152c400b5cc1565da
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1628585
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
46fe0e4b
|
2019-05-22T13:13:50
|
|
Cleanup Features headers.
Cleanup redundant angle:: prefix in Features headers.
Cleanup workaround descriptions.
Bug: angleproject:1621
Change-Id: I4325d3603877efee9c6a035cd5b5bbbbc4f5c169
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1625609
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|