|
ca2ff38b
|
2018-07-11T09:01:17
|
|
Refactor internal format pixel math methods.
This removes the use of the ErrorOrResult class from these methods.
This will enable more performant Error handling. Also cleans up the
ANGLE_TRY_CHECKED_MATH macro to be more general.
Bug: angleproject:2713
Change-Id: I349947d320907839ca88ec1f9251e6ddc3858a08
Reviewed-on: https://chromium-review.googlesource.com/1128920
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
|
|
89ef177f
|
2018-07-10T11:19:43
|
|
EGL: Fix binding EGL_NO_SURFACE without surfaceless support.
It was possible for ANGLE to call eglMakeCurrent with EGL_NO_SURFACE and
a valid context when the client called eglMakeCurrent with
EGL_NO_SURFACE and EGL_NO_CONTEXT. Fix this by always binding a surface
when the driver has no native surfaceless support.
Don't expose the surfaceless extension when it's not possible to support
it (unvirtualized contexts and no native surfaceless support).
BUG=860800
BUG=angleproject:2464
Change-Id: Id8af9638d4356dbd710c453c9f196b9f25a2bbf9
Reviewed-on: https://chromium-review.googlesource.com/1131555
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
6cad7736
|
2018-07-11T09:01:17
|
|
Vulkan: Remove vk::ErrorOrResult.
The ErrorOrResult pattern doesn't help much. Removing it enables the
Error passing refactor in the Vulkan back-end.
Bug: angleproject:2713
Change-Id: I4e8277ad856c785bf22b4d37b7ae880b534ef005
Reviewed-on: https://chromium-review.googlesource.com/1128919
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
|
|
84c11c53
|
2018-07-11T10:12:39
|
|
Vulkan: Implement sampler structs as function args.
Bug: angleproject:2494
Change-Id: Ia8e374846427b7140ab2565ae5b9b18409a76d96
Reviewed-on: https://chromium-review.googlesource.com/1117323
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
5c8113d3
|
2018-07-10T15:03:01
|
|
Vulkan/D3D11: Improve blit framebuffer tests and fix bug in D3D11
- Improving the tests revealed a bug in D3D 11 Fast Path rendering.
- These changes here are preliminary to implementing the blit for
depth/stencil in Vulkan when using the viewport flipping.
Bug: angleproject:2673
Bug: angleproject:2719
Change-Id: I6d55084e559d3110c8eeb0e7acb4e6fb09b6c1b5
Reviewed-on: https://chromium-review.googlesource.com/1132125
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
a6a7842f
|
2018-06-28T08:32:54
|
|
ES31: Support atomic functions on D3D11 - Part I
This patch is the first one of the implementation of atomic
functions in D3D11.
There are mainly two differences in the usage of GLSL and HLSL
atomic functions:
1. All GLSL atomic functions have return values, which all
represent the original value of the shared or ssbo variable;
while all HLSL atomic functions don't, and the original value
can be stored in the last parameter of the function call.
2. For HLSL atomic functions, the last parameter that stores the
original value is optional except for InterlockedExchange and
InterlockedCompareExchange. Missing original_value in the call
of InterlockedExchange and InterlockedCompareExchange results
in a compile error from HLSL compiler.
To handle these differences, we plan to implement the translation
in two steps:
1. Support direct translations from GLSL atomic functions to HLSL
ones.
Direct translation can only handle the following two situations:
(1) The sentence is a GLSL atomic function call without requesting
a return value and it is not atomicExchange or atomicCompSwap:
e.g.
GLSL: atomicAdd(mem, value);
-> HLSL: InterlockedAdd(mem, value);
(2) The sentence is a simple assignment expression: its right is
a GLSL atomic function call and its left is a declared variable.
e.g.
GLSL: oldValue = atomicAdd(mem, value);
-> HLSL: InterlockedAdd(mem, value, oldValue);
2. Support atomic functions in the situations that don't support
direct translations.
We will modify the intermediate tree to make direct translation work
on all these situations.
e.g.
atomicExchange(mem, value);
-> int oldValue;
oldValue = atomicExchange(mem, value);
int oldValue = atomicAdd(mem, value);
-> int oldValue;
oldValue = atomicAdd(mem, value);
return atomicAdd(mem, value);
-> int temp;
temp = atomicAdd(mem, value);
return temp;
for (i = 0; i < atomicAdd(mem, value); ++i)
-> int temp;
temp = atomicAdd(mem, value);
for (i = 0; i < temp; ++i)
{
...
temp = atomicAdd(mem, value);
}
int result = isTrue ? atomicAdd(mem, value) : 0;
-> int result;
if (isTrue)
{
result = atomicAdd(mem, value);
}
else
{
result = 0;
}
This patch completes Step 1 which mainly focus on the translation
from GLSL atomic functions to HLSL ones.
BUG=angleproject:2682
TEST=angle_end2end_tests
Change-Id: I3b655b6e286dad4fd97f255f7fe87521c94db30c
Reviewed-on: https://chromium-review.googlesource.com/1121835
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
a2f043d8
|
2018-07-10T17:21:20
|
|
dEQP: Implement platform error handling.
Also downgrades several Vulkan UNIMPLEMENTED() to WARN().
Also downgrades a couple D3D-specific errors to warnings.
Also downgrades an undefined behaviour integer clear error to warning.
Also includes suppressions for failing D3D11 ES 3.1 SSBO tests.
Also includes suppressions for failing Android GLES format tests.
Also includes suppressions for failing Android Vulkan buffer tests.
Bug: angleproject:2552
Bug: angleproject:2567
Bug: angleproject:1951
Bug: angleproject:2405
Change-Id: Ie619085021d42012cd578b669f7ff4252ca41a58
Reviewed-on: https://chromium-review.googlesource.com/1062791
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
569b9cb9
|
2018-07-07T21:44:35
|
|
Fix run_code_generation.py hash calculation.
Open files with mode 'r' instead of 'rb' so the hash calculation
produces the same results on Linux and Windows.
Recalculate the hashes and proc_table_autogen.cpp which was out of date.
BUG=angleproject:2711
Change-Id: I31562c96ce36e6df009c44c565fe9a3f1b5ba6c4
Reviewed-on: https://chromium-review.googlesource.com/1128549
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
|
|
efaa09fd
|
2018-06-27T15:40:21
|
|
Enabled Vulkan backend on as many tests as possible
Bug: angleproject:2694
Change-Id: I299d71e0857065d0f60204977d395793f921deaa
Reviewed-on: https://chromium-review.googlesource.com/1117702
Commit-Queue: Omar El Sheikh <theoking@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
cb8a921b
|
2018-06-28T12:30:36
|
|
Vulkan: Support RGB/BGR backbuffers emulated on RGBA/BGRA.
BUG=angleproject:2692
BUG=angleproject:2523
BUG=angleproject:2715
BUG=angleproject:2716
Change-Id: I538b385f8b66fb97e176953b0fc4a6299849c005
Reviewed-on: https://chromium-review.googlesource.com/1118713
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
b01b4802
|
2018-07-10T12:43:57
|
|
Vulkan: Apply driver uniforms descriptor set.
Also modifies the ProgramVk to initialize the Pipeline and Desriptor
Set layouts with driver uniforms enabled.
Bug: angleproject:2717
Change-Id: I24f7bf6f89b450d1dcb62dcfa7411555ebe3a937
Reviewed-on: https://chromium-review.googlesource.com/1131568
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c0bb36cb
|
2018-07-10T11:10:31
|
|
Vulkan: Add driver uniforms to shader.
Bug: angleproject:2717
Change-Id: I542f3b0f2de21857d7fea0267f07d2d0eec78a8c
Reviewed-on: https://chromium-review.googlesource.com/1131567
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b7c4f2b9
|
2018-07-09T12:01:30
|
|
translator: Refactor interface block layout qualifiers.
This will make it easier to insert internal uniform layouts in Vulkan.
Bug: angleproject:2717
Change-Id: Ic1a76848337cc67a57698913c584d8596bf4f27e
Reviewed-on: https://chromium-review.googlesource.com/1127300
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6ed6c71c
|
2018-07-10T12:02:30
|
|
Roll Vulkan repos fwd as of 7/10
Update Vulkan Layers/Loader/Tools/Header to latest versions as of 7/10.
The layers were updated to correctly comprehend which device extensions
are enabled which should fix a false error being flaged on negative
Viewports in ANGLE.
Bug: angleproject:2704
Change-Id: Ie51660f539beb249c3b11dc7e0d553ff7cabfde3
Reviewed-on: https://chromium-review.googlesource.com/1131919
Commit-Queue: Tobin Ehlis <tobine@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
69b47390
|
2018-07-10T12:06:53
|
|
Vulkan: Fix last parameter of viewport driver uniform.
This was introduced in a prior patch.
Bug: angleproject:2717
Change-Id: I8f34377cbb9cbede4237efb1610400a8ed20ae2a
Reviewed-on: https://chromium-review.googlesource.com/1131566
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
b70ad524
|
2018-07-09T16:06:26
|
|
Vulkan: Fix all depth/stencil related failures due to Y flip
- Fixes all deqp functional_fragment_ops_depth_stencil_* with Y flipping enabled.
Bug: angleproject:2673
Change-Id: I94a4225dec8adf9113309e8b8b2c8aa61f6a2bb9
Reviewed-on: https://chromium-review.googlesource.com/1129857
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
30b84854
|
2018-07-09T09:18:50
|
|
SwapchainD3D: Take Display instead of Context.
This cleans up another use of the proxy context.
Bug: angleproject:2714
Change-Id: Icba5bf76a3e9f811ee571529de16fd8162c76b3a
Reviewed-on: https://chromium-review.googlesource.com/1128928
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
7dc43051
|
2018-07-09T09:18:49
|
|
D3D: Move Incomplete Textures to Context9/11.
This cleans up another usage of getProxyContext.
Bug: angleproject:2714
Change-Id: I5337e30cdd96e282e355c727bb40cd30e049ec1a
Reviewed-on: https://chromium-review.googlesource.com/1128926
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e8cc4a64
|
2018-07-09T09:18:49
|
|
Surface: Don't use a BindingPointer for BindTexImage.
The BindingPointer pattern isn't necessary. Every time we delete a
Texture we call ReleaseTexImage internally. There shouldn't be any time
that we keep an orphaned Texture is Surface.
This cleans up one place where we were using the ProxyContext.
Bug: angleproject:2714
Change-Id: I3b0fd2125d02ea7545922ec6da7f487451bed871
Reviewed-on: https://chromium-review.googlesource.com/1128925
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
|
|
aa2126c4
|
2018-07-09T15:36:36
|
|
Vulkan: Fix all copyTexImage/copySubTexImage cases with Y flip
- Validated by running:
-functional_texture_specification_basic_copytexsubimage2d_*
-functional_texture_specification_basic_copyteximage2d_*
With the flip flag enabled.
Bug: angleproject:2673
Change-Id: I5a3041af79f9316256b0650ab7e3fd0e086e46e3
Reviewed-on: https://chromium-review.googlesource.com/1129820
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
82eda93f
|
2018-07-09T15:10:22
|
|
Vulkan: Fix for framebuffer blit and Y flip
- The depth/stencil related tests are now disabled since I found out
that the tests are too simple to find issues if there is a flip since
they use only a single color and no gradient / checked board.
This is left to implement in the Vulkan backend later on.
Bug: angleproject:2673
Change-Id: I8f7091d4b9c8c3bec0353ebab28304b6209ea350
Reviewed-on: https://chromium-review.googlesource.com/1129629
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
853f8255
|
2018-07-09T09:18:50
|
|
DisplayImpl: Make waitClient/waitNative non-const.
These methods can mutate the display resources. Necessary for getting
rid of ProxyContext and for the Vulkan error refactor.
Bug: angleproject:2714
Bug: angleproject:2713
Change-Id: Ibffb1a382ecb064daaa7c664f9fc65cbcf927b37
Reviewed-on: https://chromium-review.googlesource.com/1128927
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
63cc351f
|
2018-06-27T17:35:19
|
|
Fix PMurHash.cpp mingw clang 64-bit compilation.
Tested with Firefox build, upstream bug:
https://bugzilla.mozilla.org/show_bug.cgi?id=1471632
Change-Id: I4b44847dfc69ee26cf2215b0a0b7573becfd369d
Reviewed-on: https://chromium-review.googlesource.com/1117187
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d8b1c5c5
|
2018-06-20T12:08:46
|
|
Return ImmutableString from ArrayString()
This makes the compiler a few kilobytes smaller, and prepares getting
rid of TString altogether.
BUG=angleproject:2267
TEST=angle_unittests
Change-Id: I93a003fe27b99bef72f872fa1066e2e108f934c5
Reviewed-on: https://chromium-review.googlesource.com/1107713
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
26c61b24
|
2018-06-29T12:50:59
|
|
Vulkan: Fix to unset NULL Driver after tests
Updated ScopedVkLoaderEnvironment destructor to delete an environment variable
that gets set during initialization of the renderer to load the Mock/Null
driver for tests that request it.
Bug: angleproject:2698
Change-Id: Ibbac795b6315971b303d97a55d24565a403d056c
Reviewed-on: https://chromium-review.googlesource.com/1120940
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
c56adf60
|
2018-07-03T11:29:11
|
|
Roll Vulkan repos fwd as of 7/3
Update Vulkan Layers/Loader/Tools/Header to latest versions as of 7/3.
This updates the ICD build to use inputs from the Header repo instead
of copies of the file from its own repo. Those copies have been deleted
and some of the generation scripts in Tools repo have been renamed.
Also put script dependencies from Vulkan-Headers repo into a shared var
that's imported by the other repos to minimize repeat code.
Bug: angleproject:2704
Change-Id: I98a18be055482dccdad8468115b4045d09342bfb
Reviewed-on: https://chromium-review.googlesource.com/1124966
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
834a3a10
|
2018-07-09T13:32:39
|
|
Vulkan: Add driver uniforms set.
This will be used to specify the applied Vulkan. We will use this to
implement OpenGL line rasterization rules.
Bug: angleproject:2717
Change-Id: I3395bf620a01c4b84b19a00037d05f148e5523f3
Reviewed-on: https://chromium-review.googlesource.com/1120151
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
534343ab
|
2018-07-09T16:43:16
|
|
Vulkan: Roll SPIRV-Tools and SPIRV-Headers.
This fixes a bug in SPIRV-Tools validation. vec3s were not being packed
properly. Affected some of the more complex dEQP shader tests.
Unblocks better Debug error reporting.
Bug: angleproject:2552
Change-Id: I83447813a4ae3347157321a30a91b5dee55ff6c1
Reviewed-on: https://chromium-review.googlesource.com/1129824
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
e4a6d7a3
|
2018-07-09T13:32:37
|
|
Vulkan: Make DynamicDescriptorPool single pool.
This completes a prior refactor. DynamicDescriptorPool couldn't
robustly handle multiple pools so only accept one as a parameter. We
were already only using one at a time in practice.
This removes the need to look up the pool index from the descriptor
type which became problematic later on.
Bug: angleproject:2717
Change-Id: I7fb92d5ab55bbe1f35b6b9cfcd8981cc1ca358f1
Reviewed-on: https://chromium-review.googlesource.com/1127157
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
caa55cd7
|
2018-07-05T13:19:35
|
|
Vulkan: Support EGL_ANGLE_surface_orientation for vertical surface flipping.
This is a simpler way of flipping when the client is aware of the extension.
This allows Chrome to render with the correct orientation.
BUG=angleproject:2709
Change-Id: I52216b765a42930f2be043a07fe441a9f875a14d
Reviewed-on: https://chromium-review.googlesource.com/1127342
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
189ad877
|
2018-07-09T13:32:37
|
|
Return an Error from ContextImpl::syncState.
This will allow the Vulkan back-end to call Vulkan commands that return
VkResult within syncState.
Bug: angleproject:2717
Change-Id: I05e1379e71acaac56bcc9493c8561e82da000934
Reviewed-on: https://chromium-review.googlesource.com/1120150
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
d7890bca
|
2018-06-29T11:57:22
|
|
Skip noop draws in the frontend
If a draw does not have enough vertices for its primitive count to
produce a primitive then skip it. If an instanced draw has 0 instances
or not have enough vertices for its primitive count to
produce a primitive then skip it.
This means a Point with 0 vertices, a Line w/ 0-1 vertices, or a tri
with 0-2 primitives.
Updated some redundant code in the D3D11 backend. Draws below the
minDrawCount will no longer be passed to the backend so updated the
associated state in StateManager11 to only track the case where all
primitives should be culled due to GL state settings.
BUG=angleproject:2568
TEST=functional_transform_feedback_basic_types_interleaved_lines_lowp_int
Change-Id: I9faa767c12004fcdec923ec70a8ee5615d789813
Reviewed-on: https://chromium-review.googlesource.com/1120849
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
44a3cf49
|
2018-07-09T09:40:57
|
|
Vulkan: Flip on Y, fix for MaxTextureSizeTests
- This change fixes the tests that were failing in angle_end2end_tests
- MaxTextureSizeTest.*
Bug: angleproject:2673
Change-Id: I9c671b8be0e2360a80f6298897ec298c6e998863
Reviewed-on: https://chromium-review.googlesource.com/1128811
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1a135adc
|
2018-07-04T10:35:31
|
|
Vulkan: Fix how the viewport is calculated with Y flip
- This fixes all ViewportTest.* and MipmapTest.*
- Tests left to fix in end2end:
- BlitFramebuffer*
- MaxTextureSizeTest.*
- PointSpritesTest.*
Every other test in angle_end2end_tests are working.
Bug: angleproject:2673
Change-Id: I162083bc847c15fa5490ab524ad4c22747d232ea
Reviewed-on: https://chromium-review.googlesource.com/1126333
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
c2136b67
|
2018-07-09T10:35:33
|
|
Allow constexpr initialization of PackedEnumMap.
By making mData public we can use aggregate initialization. The syntax
is the same as for initializing a std::array. It might be possible to
also use std::map initialization syntax using a list of pairs. That is
left for a follow-up.
Bug: angleproject:2568
Change-Id: I30a6f280172cb197208d14b1a53b9cc12b7834d8
Reviewed-on: https://chromium-review.googlesource.com/1127181
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
8fbd9d96
|
2018-06-21T15:27:44
|
|
Use ImmutableString in ImageFunctionHLSL
This code is analoguous to the code in TextureFunctionHLSL and is now
implemented in a similar manner.
BUG=angleproject:2267
TEST=angle_unittests, angle_end2end_tests
Change-Id: Ie3503766217dad4f3848f2d4b2fc3f62b3edce0c
Reviewed-on: https://chromium-review.googlesource.com/1110366
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
|
|
7e585118
|
2018-07-04T15:49:02
|
|
Vulkan: Implement eglWaitClient using a finish.
In the future this can be implemented with a flush.
BUG=angleproject:2707
Change-Id: I1dd4eae9551f7797865e6e17e6caa77f6ec5a9b2
Reviewed-on: https://chromium-review.googlesource.com/1126457
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
bea35a63
|
2018-07-05T11:54:10
|
|
Vulkan: Use Scoped resource init helper.
In a few places we initialize resource on the stack in the Vulkan
back-end. When we do this we should use a RAII wrapper so that if we
generate an error and unwind the stack we can auto-release the object.
This fixes a bug that was being triggered by an unexpected failure on
Present with the Vulkan back-end on Intel.
There are several other places in the code that should be modified to
use the new wrapper.
Bug: angleproject:2690
Change-Id: I49a1c5516756f8b7dba833aca65926aa7b8bd5c6
Reviewed-on: https://chromium-review.googlesource.com/1118610
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
072c3519
|
2018-07-04T15:50:12
|
|
Fix missing return when validation fails in eglWaitNative.
BUG=angleproject:2707
Change-Id: Ibd70437e3a40a9a63b78ac9a4546c97611a97ba5
Reviewed-on: https://chromium-review.googlesource.com/1126458
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
b1cc789c
|
2018-07-05T15:05:21
|
|
Finish populating the new_hashes map after finding a dirty input.
any_input_dirty would return early when finding a dirty input and not finish
filling the new_hashes map. This would require multiple runs of the code
generation script to fully generate all the outputs.
BUG=angleproject:2695
Change-Id: Ie62190efe2765df432b0a535fb8d33ed2ffa66a7
Reviewed-on: https://chromium-review.googlesource.com/1127439
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
9a257801
|
2018-07-05T14:31:08
|
|
Write relative paths with forward slashes to the code generation hashes.
This should avoid generating diffs when running the code generation with
different source directories or on different platforms.
BUG=angleproject:2695
Change-Id: I67776883bdbeb867a49bea00f16998c04f7857b4
Reviewed-on: https://chromium-review.googlesource.com/1127355
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5695a5b2
|
2018-07-05T14:29:30
|
|
Allow the run_code_generation.py script to be run from any directory.
BUG=angleproject:2695
Change-Id: I9a083bf67b17ca0dc1ee213b75caa4ecece62f00
Reviewed-on: https://chromium-review.googlesource.com/1127354
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
be7e455c
|
2018-07-05T14:47:39
|
|
Vulkan: Regenerate builtin shaders.
BUG=angleproject:2691
Change-Id: Iafb1b4828fa0d54974bfb9d11a436ccaa910b942
Reviewed-on: https://chromium-review.googlesource.com/1127356
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
62edcce8
|
2018-07-04T12:43:39
|
|
Vulkan: Initialize the max pbuffer size members of Config.
Pass the VkPhysicalDeviceProperties to GenerateDefaultConfig to initialize the
pbuffer size limitations in a platform independent way.
BUG=angleproject:2622
Change-Id: Id99bc505a1965cc037c5dcd65af031c1c655d424
Reviewed-on: https://chromium-review.googlesource.com/1126406
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
bf6dc379
|
2018-06-28T15:24:19
|
|
Vulkan: Flip viewport on y for the backbuffer only
- Hide the implementation behind a feature flag, currently
disabled permanently as I'm working on fixing the different
failures.
- SimpleOperationTest.* passing
Bug: angleproject:2673
Change-Id: Ic86520c3cc478d62bebbaeaf4c6b33c439a67b0f
Reviewed-on: https://chromium-review.googlesource.com/1119089
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
258e8718
|
2018-06-21T17:29:19
|
|
EGL: Support unvirtualized contexts and unsafe multithreading.
-Add a new renderer and context type to own native EGL contexts and
handle destruction.
-Track the current EGL surface and context per-thread.
-Support unvirtualized contexts by creating a new context for every client
context.
BUG=angleproject:2464
Change-Id: Ib2efa1d88c771b4a78625e0e3546f6ed95678c91
Reviewed-on: https://chromium-review.googlesource.com/1110943
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
838f304d
|
2018-06-27T10:43:41
|
|
EGL: Skip creation of the dummy pbuffer when surfaceless is supported.
BUG=angleproject:2464
Change-Id: If1834cf88aed0ffae12bb584d6936c6c09a296a0
Reviewed-on: https://chromium-review.googlesource.com/1117022
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
a72ebeba
|
2018-06-28T11:16:58
|
|
Vulkan: Fix issue in DynamicBuffer
- We weren't keeping track of mSize correctly, causing some very
specific index buffer bindings to fail. The size returned when allocating
the buffer can be a bit different than the size requested, and that extra
space between mSize and the allocated size was not meant to be used,
causing errors in the validation layers.
Bug: angleproject:2580
Change-Id: I47eb7b8de6f4f657de14385b77ba6a459add599b
Reviewed-on: https://chromium-review.googlesource.com/1118607
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
2b06054d
|
2018-07-03T14:48:13
|
|
Vulkan: Insert a barrier after buffer copy
According to the spec(section 18.1), all copy commands are treated
as transfer operations for the purposes of synchronization
barriers. Some tests are flaky on Intel platform without such
barriers.
Bug: angleproject:2663
Bug: angleproject:2664
Change-Id: Ic8bc9a0eb000670342c0df0449257324f04ad1f8
Reviewed-on: https://chromium-review.googlesource.com/1124103
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
92da844e
|
2018-06-29T19:06:56
|
|
More includes missing from sources.
Bug: angleproject:2699
Change-Id: I234e0aee2526750a442ad74b5c57f7c536310786
Reviewed-on: https://chromium-review.googlesource.com/1123880
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a72f400c
|
2018-06-29T17:05:01
|
|
run_code_generation: Compare hashes instead of mtime.
Using mtime is fundamentally flawed when working with git. Replace
these flaky checks with hash comparisons. The hashes are stored in an
autogenerated json file that will be stored in the repository.
This makes the run_code_generation script robust against any and all
input changes. It also removes the need to track script outputs as
dependencies.
Bug: angleproject:2697
Change-Id: I60f2a87a8680b1f775ad678b05112f5b16c7dde7
Reviewed-on: https://chromium-review.googlesource.com/1120159
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
33e72d99
|
2018-06-29T10:49:38
|
|
Removed an assert about addTraceEvent not returning empty handles.
There are several codepaths where this is the expected result:
* Other threads disabling the category in question.
* The TraceBuffer being fill and no new chunks available.
* Perfetto being active as the tracing backend.
In all cases, the single use of a handle to a TraceEvent is
TraceLog::UpdateTraceEventDuration which handles the above cases
correctly.
BUG=844421
Change-Id: Ieaf3aa5c913cee8c51cfea637907d5bc3b560ceb
Reviewed-on: https://chromium-review.googlesource.com/1120841
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
1266d20a
|
2018-06-29T09:11:34
|
|
Vulkan: Add Features class.
This class will control optional features in the Vulkan back-end. It
allows toggling the feature support from a centralized place. This can
be useful for performance or correctness testing.
Add a placeholder feature for line segment raster. We can also use a
feature for enabling backbuffer flipping.
Bug: angleproject:2598
Bug: angleproject:2673
Change-Id: I8ddec2dba2181d5b014267be68aee9d2cb015ccf
Reviewed-on: https://chromium-review.googlesource.com/1120149
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6ef24d78
|
2018-06-29T16:03:34
|
|
Update dEQP EGL expectations for Vulkan on Linux.
Bug: angleproject:2635
Change-Id: I74641edc405aa158a2acc0ac619343bf316454bd
Reviewed-on: https://chromium-review.googlesource.com/1121076
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
71a151fd
|
2018-06-26T16:07:42
|
|
Vulkan: Use TSymbolTable in ExtractStructSamplers.
This will enable more code reuse when handling sampler struct as
function arguments. We can add the sampler structs to the symbol table
stack when they are function arguments.
Bug: angleproject:2494
Change-Id: I9eeb1d3822e34cd43535e1b16a98864545755d22
Reviewed-on: https://chromium-review.googlesource.com/1117322
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
cdf50444
|
2018-06-26T15:05:42
|
|
Add test for sampler struct rewriting indexing.
The concern originally was that rewriting sampler structs could lead to
incorrect behaviour for indexing. The test attempts to cover this but
doesn't repro. It possibly is not an issue.
Bug: angleproject:2494
Change-Id: Ibc34b08b5cee3b6ff82d150a64f1768aae64396f
Reviewed-on: https://chromium-review.googlesource.com/1117321
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
fa5d84be
|
2018-06-28T10:40:04
|
|
Vulkan: Fix offset handling for vertex buffers
Bug: angleproject:2580
Change-Id: I22f62a8549e998275224a6b1f9c133cf31ebb5b9
Reviewed-on: https://chromium-review.googlesource.com/1118419
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
475ef575
|
2018-06-27T15:54:18
|
|
Vulkan: Refactor config generation out of platform specific code.
Permuatations of configs are now generated in platform-independent code and
a DisplayVk callback is used to determine native support.
BUG=angleproject:2692
Change-Id: Iad450c1a3275239d6bcbc350e8dd8e37470fa8e0
Reviewed-on: https://chromium-review.googlesource.com/1117563
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
ac1a377d
|
2018-06-26T15:05:38
|
|
Vulkan: Split tree ops into separate files.
This makes the design consistent. Added new files for
NameEmbeddedStructs and RewriteStructSamplers.
Bug: angleproject:2665
Bug: angleproject:2494
Change-Id: If7d22a6ce9a86d51d38f68787006b7a28957861e
Reviewed-on: https://chromium-review.googlesource.com/1108086
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
f3062c3e
|
2018-06-28T13:33:15
|
|
Update dEQP EGL expectations for Vulkan on Windows.
BUG=angleproject:2635
Change-Id: If2a4893c4099dc4a1b699ba4e4e3ca2c0f946af8
Reviewed-on: https://chromium-review.googlesource.com/1118906
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
1ee33552
|
2018-06-28T10:22:49
|
|
Emulate eglSwapBuffersWithDamageKHR when needed
When driver does not support the EGL_KHR_swap_buffers_with_damage
extension, call regular eglSwapBuffers instead.
BUG=angleproject:2464
Change-Id: Ie3a395d37b61ef5ac65b098b312e9ead1c8bc799
Reviewed-on: https://chromium-review.googlesource.com/1117832
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
1698d7d4
|
2018-06-27T14:09:58
|
|
Vulkan: Roll glslang (June 2018).
Includes potential bug fixes.
Bug: angleproject:2691
Change-Id: I9a22dbdc96045df36de086f7edf7c914bae1cdbf
Reviewed-on: https://chromium-review.googlesource.com/1117320
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
be30c4fb
|
2018-06-21T09:43:08
|
|
Vulkan: Framebuffer blit support for depth/stencil cases
Bug: angleproject:2643
Change-Id: Ib50e4051f5b3965c2a752cf2cd45d3470312cdcf
Reviewed-on: https://chromium-review.googlesource.com/1115370
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a0adaf98
|
2018-06-27T15:49:35
|
|
Vulkan: Work around unused sampler validation.
Work around glslang's improved validation by using a valid but very
high layout binding. This should be more robust.
Tests already passing:
dEQP-GLES2.functional.state_query.shader.uniform_value_sampler
Bug: angleproject:2691
Bug: angleproject:2612
Bug: angleproject:2600
Change-Id: Ie78ae89f76cc0a42806724b622d7f201241bd041
Reviewed-on: https://chromium-review.googlesource.com/1117477
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
dc66ef9d
|
2018-06-28T08:18:47
|
|
Vulkan: Add simple test to trigger issue of buffer.write tests
Bug: angleproject:2580
Change-Id: I08666d1c5fc7ce977e9623a09ef08645b02339f3
Reviewed-on: https://chromium-review.googlesource.com/1117913
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
9e14164d
|
2018-06-27T11:43:18
|
|
VK: Support pbuffer surfaces.
TEST=PbufferTest
TEST=dEQP-EGL.functional.color_clears.single_context.gles2.rgba8888_pbuffer
TEST=dEQP-EGL.functional.color_clears.multi_context.gles2.rgba8888_pbuffer
TEST=dEQP-EGL.functional.render.single_context.gles2.rgba8888_pbuffer
TEST=dEQP-EGL.functional.render.multi_context.gles2.rgba8888_pbuffer
BUG=angleproject:2622
Change-Id: I99f64689c274fbb565b365f4a05b52252528fc38
Reviewed-on: https://chromium-review.googlesource.com/1117030
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
57186360
|
2018-06-27T13:29:40
|
|
Roll SPIRV-Tools and SPIRV-headers (June 2018)
Bug: angleproject:2691
Change-Id: I754431c7cf7cdbb5b631e9db90b7c1471b5bf9ee
Reviewed-on: https://chromium-review.googlesource.com/1117309
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
a26de250
|
2018-06-28T07:24:38
|
|
Vulkan: Enable dEQP a passing test in buffer.write
Bug: angleproject:2580
Change-Id: I74ab2dec41400781c7236e08f008e2240386c80e
Reviewed-on: https://chromium-review.googlesource.com/1117911
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
2f6f1df4
|
2018-06-28T07:17:46
|
|
Vulkan: Enable the remaining dEQP fbo.render tests
They were already passing, just forgot to enable them it seems.
Bug: angleproject:2597
Change-Id: I10c478f825d2efa7f4b680cd106b213056688319
Reviewed-on: https://chromium-review.googlesource.com/1118014
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
26581113
|
2018-06-21T09:43:08
|
|
Vulkan: Support for framebuffer blit extension
- No support for formats that do not support vulkan blit.
- The depth/stencil format used in the tests do not support
blit, so currently no tests validate the depth/stencil blits.
Bug: angleproject:2643
Change-Id: I89a0d5b102396d8254fe272681326615bd6800ed
Reviewed-on: https://chromium-review.googlesource.com/1111611
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
f97641c1
|
2018-06-21T19:22:45
|
|
GLES1: Texture parameters
Note: minimum buffer size is now checked for texture parameters in
GLES2.
- Mipmap generation hint
- Crop rect
- Update test expectations
BUG=angleproject:2306
Change-Id: Ib459b8191111732a1326b44f2226b72ca297325a
Reviewed-on: https://chromium-review.googlesource.com/1111575
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Lingfeng Yang <lfy@google.com>
|
|
dcb6e927
|
2018-06-27T13:18:32
|
|
Add initial supressions for dEQP EGL tests on Vulkan.
BUG=angleproject:2635
Change-Id: I1e8f3c5c82d01d2b484cd49bd5924776f85d89e2
Reviewed-on: https://chromium-review.googlesource.com/1117261
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
09303e44
|
2018-06-22T17:53:57
|
|
Treat transform feedback generic binding point specially
The transform feedback generic binding point is not part of the
transform feedback object and is not used for transform feedback. Only
the indexed binding points are used. A buffer that is bound to the
generic binding point should be usable for either transform feedback or
non-transform-feedback purposes.
Bug: 853978
Change-Id: I5b730212c65524188134ac34645328328664f0a4
Reviewed-on: https://chromium-review.googlesource.com/1112841
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
82af620e
|
2018-06-22T10:59:52
|
|
ParallelCompile: Add entry points.
Add the extension text, entry points and validations.
BUG=chromium:849576
TEST=angle_end2end_tests
Change-Id: I4c06ee30e4f4fe9bb1c1fecada747b9c78fed0ea
Reviewed-on: https://chromium-review.googlesource.com/1103789
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
|
|
943a38a5
|
2018-06-26T18:02:40
|
|
Skip ClearTest.ChangeFramebufferAttachmentFromRGBAtoRGB on Mac
Nvidia and Intel Desktop GL.
Bug: angleproject:2689
Change-Id: Id26ad3bd765f2410e76c79b870baf9c2ea4e2044
Reviewed-on: https://chromium-review.googlesource.com/1115770
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
e0234aeb
|
2018-06-26T17:06:25
|
|
GL: Don't print driver performance warnings.
They can add an large ammount of spam to the logs of our test suites and have
never been actionable.
BUG=768943
Change-Id: Ibee3d7ece97cc03500b10ffa7bcaf3a4d7d51581
Reviewed-on: https://chromium-review.googlesource.com/1115700
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
1ff0ee75
|
2018-06-26T16:55:55
|
|
Skip MaxTextureSizeTest.SpecificationTexImage on Win Intel Vulkan
Flakily crashes on Win10 FYI Exp Release (Intel HD 630)
Bug: angleproject:2690
Change-Id: I1ddc9ba9ccfd25c9fcc85e580d2c88063f622a55
Reviewed-on: https://chromium-review.googlesource.com/1115618
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
3f332584
|
2018-06-26T21:00:14
|
|
Revert "RendererGL: Limit warning output to 5 per message type."
This reverts commit 7c37ca1836402b654dbbf5f00007e09bdf2a7051.
Reason for revert: Causes crashes on Android.
Original change's description:
> RendererGL: Limit warning output to 5 per message type.
>
> BUG=768943
>
> Change-Id: I8ed69c70d1914b56145c52ffe26f13193fb55e9e
> Reviewed-on: https://chromium-review.googlesource.com/685278
> Commit-Queue: Geoff Lang <geofflang@chromium.org>
> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
TBR=geofflang@chromium.org,cwallez@chromium.org
Change-Id: I641ac5d508d238e275eaeef4fac4033d9015960d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 768943
Reviewed-on: https://chromium-review.googlesource.com/1115658
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
0bb02368
|
2018-05-27T20:35:11
|
|
Vulkan: add SCALED vertex formats to table.
Add SCALED formats, which correspond to non-normalized integers, to Vulkan
format table. Adjust test expectations accordingly. For now these new
formats only work when the native Vulkan supports them.
BUG=angleproject:2405
Change-Id: Ia6fdcbec61774536e6396cf713e46f28f49585c1
Reviewed-on: https://chromium-review.googlesource.com/1110710
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0265e1ec
|
2018-06-26T14:57:10
|
|
Ozone: Skip test failing just on GLES
Bug: angleproject:2689
Change-Id: Ide2e954fb2a65b23f2f25da40fd9a6b216c1c7a4
Reviewed-on: https://chromium-review.googlesource.com/1115373
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
60437586
|
2018-06-15T09:47:04
|
|
Vulkan: Fix unused sampler struct uniforms.
These were not being parsed correctly. Turns on all uniform_api dEQP
tests.
Bug: angleproject:2612
Change-Id: I365bbe4cc52bb6a62fc47c53355962af38298b7f
Reviewed-on: https://chromium-review.googlesource.com/1101573
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
3bb2bbea
|
2018-06-15T09:47:03
|
|
Program: Sampler uniform query in front-end.
We have this information stored in the front-end sampler bindings.
This solves sampler uniform query across the various back-ends.
Turns on a bunch of uniform_api dEQP tests.
Bug: angleproject:2612
Change-Id: If8752a26438595ad103598369df360e2f5e12d53
Reviewed-on: https://chromium-review.googlesource.com/1101572
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
8c379f36
|
2018-06-21T19:55:05
|
|
Vulkan: enable some vertex data tests.
Enable tests that don't use fixed or unnormalized short/byte vertex data,
with some exceptions for Android and AMD.
BUG=angleproject:2405
Change-Id: I9e37ebca3a873617f11fee065b7a0ba67f80998c
Reviewed-on: https://chromium-review.googlesource.com/1111317
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
5ba37427
|
2018-06-26T10:45:53
|
|
Move PlatformMethods constructor to header
Move the default constructor for PlatformMethods struct from
Platform.cpp into Platform.h. This allows other projects to include
Platform.h and use PlatformMethods without having to link against ANGLE
Bug: angleproject:2528
Change-Id: Icb4b9e149e78e9ec7be85804d711d8a2216e61c4
Reviewed-on: https://chromium-review.googlesource.com/1115212
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
87637b13
|
2018-06-15T09:47:02
|
|
Vulkan: Remove expectations for passing/missing tests.
Doesn't exist:
uniform_api.info_query.multiple_nested_structs_arrays.sampler2D_*
Already passing:
uniform_api.info_query.unused_uniforms.sampler2D_*
uniform_api.value.initial.render.basic.samplerCube_*
uniform_api.value.assigned.by_pointer.render.basic.samplerCube*
uniform_api.value.assigned.by_value.render.basic.samplerCube*
Bug: angleproject:2612
Change-Id: I4670d31f0d3b566d35985b73bfa2e78e8951d4f9
Reviewed-on: https://chromium-review.googlesource.com/1101571
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
b779b12c
|
2018-06-20T11:46:43
|
|
Add kEmptyImmutableString.
We can use this instead of ImmutableString("").
Bug: angleproject:2665
Change-Id: I8b3d5d3075838b9f2caa1627071202e48a5fdc83
Reviewed-on: https://chromium-review.googlesource.com/1108085
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
0bb940a8
|
2018-06-22T09:59:34
|
|
Vulkan: Edge case test and fix for alpha channel masks
The contextVk color mask needed to be updated when we
were syncing the state of the framebufferVk to make sure
the right mask gets applied in the test described in
ClearTest.cpp
Bug: angleproject:2685
Bug: angleproject:2597
Change-Id: I575028aad4cd495bf4ec1484cc870940dcde92d5
Reviewed-on: https://chromium-review.googlesource.com/1112038
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
af7dc01c
|
2018-06-26T07:56:49
|
|
Context init should set DIRTY_BIT_DRAW_FRAMEBUFFER_BINDING
Bug: angleproject:2685
Bug: angleproject:2597
Bug: angleproject:2687
Change-Id: I4cab6b70c3eae26b827cbbd00ecbfa8b4eddcd7c
Reviewed-on: https://chromium-review.googlesource.com/1114779
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
9c1b3e2b
|
2018-06-26T12:59:16
|
|
Partially revert "WGL: Support unvirtualized contexts and unsafe multithreading."
Caused timeouts on the Skia bots when rolling ANGLE.
BUG=angleproject:2686
BUG=angleproject:2464
Change-Id: I311b075522b86410d055e0b742342423eaa7eeb5
Reviewed-on: https://chromium-review.googlesource.com/1115216
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
f54e93d6
|
2018-06-20T11:46:42
|
|
Vulkan: Implement nested sampler structs.
Nested structs are handled similarly as to non-nested samplers in
structs. They are extracted and named according to the same
pattern.
Also enables functional.shaders.random.all_features.fragment*
The remaining work in the samplers-in-structs implementation is to
translate function arguments.
Bug: angleproject:2494
Bug: angleproject:2595
Change-Id: If8170feb71137d4036d352b2b0078518647d48a1
Reviewed-on: https://chromium-review.googlesource.com/1101569
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
10887984
|
2018-06-20T11:46:41
|
|
Vulkan: Sampler structs in arrays.
Samplers are extracted from arrays of struct uniforms similarly as
with non-arrays. They are named according to the variable name,
array element and sampler field name.
Nested structs to come later.
Bug: angleproject:2494
Change-Id: Ie2f5f7bd1f747e73b3c6b505b2b1043cfe1073b5
Reviewed-on: https://chromium-review.googlesource.com/1101568
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
|
|
d07c52e2
|
2018-06-22T15:42:09
|
|
Initial Android implementation of GetSystemInfo
Change-Id: Ia44413aa94906b89d4981063600cd3de0edacee8
Reviewed-on: https://chromium-review.googlesource.com/1108454
Commit-Queue: Ian Elliott <ianelliott@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
7c37ca18
|
2017-09-26T16:56:32
|
|
RendererGL: Limit warning output to 5 per message type.
BUG=768943
Change-Id: I8ed69c70d1914b56145c52ffe26f13193fb55e9e
Reviewed-on: https://chromium-review.googlesource.com/685278
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
a75aa3b2
|
2018-06-21T10:38:28
|
|
ES31: Support compute shader shared variables in HLSL
This patch implements 'shared' variables in compute shader on D3D11
back-ends. GLSL shared variables are translated into 'groupshared'
ones in HLSL.
Note that although HLSL allows initializing the variables with
'groupshared' qualifier, currently we do not initialize them because:
1. It is very slow to for d3d11 drivers to compile the compute shader if
we add the code to initialize a shared variable with large array size.
2. It seems unnecessary to do so and in GLSL it is not allowed to
initialize a shared variable in the declaration. (ESSL 3.1, Chapter
4.3.8)
BUG=angleproject:2682
TEST=angle_end2end_tests
Change-Id: Ica8247e1b98059968612a36e369718ef113a598c
Reviewed-on: https://chromium-review.googlesource.com/1109587
Reviewed-by: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
|
|
f5fd5c6c
|
2018-06-22T17:52:32
|
|
Remove FormatString for real
Forgot to remove it from the header in
https://chromium-review.googlesource.com/577922
Bug: angleproject:1644
Change-Id: I89f9c975b3fc3b7161edd2c2907549eaa672c223
Reviewed-on: https://chromium-review.googlesource.com/1112647
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
e9c0b262
|
2018-06-22T09:50:04
|
|
Vulkan: Add drawQuad to a sampler test
Bug: angleproject:2675
Change-Id: I3774ca4602e9eea7c191e99a95939043ac0d8777
Reviewed-on: https://chromium-review.googlesource.com/1111901
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
01048a07
|
2018-06-22T10:09:19
|
|
Vulkan: Cleanup InstancingTest logic and enable tests for Vulkan
Bug: angleproject:2647
Change-Id: I3bf78c617a39191e725e0fa73befff4d42ac5962
Reviewed-on: https://chromium-review.googlesource.com/1111903
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Luc Ferron <lucferron@chromium.org>
|
|
fec92a6f
|
2018-06-22T10:52:01
|
|
Temporarily skip MakeCurrentMultiContext test on Windows AMD OpenGL.
BUG=angleproject:2464
Change-Id: Iaa4d075af6e92fd603f3dfaab0946daed2af64ab
Reviewed-on: https://chromium-review.googlesource.com/1111909
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
e4e2d0c5
|
2018-06-22T08:25:05
|
|
Vulkan: Add RenderTargetVk::getImageForRead.
This helper method will also transition the Image to the correct read
layout. We will need to revisit the implementation when working on
simulatenous read.
Bug: angleproject:2539
Change-Id: Id61404460f3ef0dbb054e6ac2dfc0b59adb78402
Reviewed-on: https://chromium-review.googlesource.com/1108378
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Luc Ferron <lucferron@chromium.org>
|
|
16f391d4
|
2018-06-22T08:57:40
|
|
ParallelCompile: Update gl.xml
Updated from https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry/master/xml/gl.xml.
BUG=chromium:849576
Change-Id: I92520d53844f7fff7e68ca49207151d4fa69c79e
Reviewed-on: https://chromium-review.googlesource.com/1111469
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|