|
e0da9cef
|
2019-04-16T14:34:51
|
|
Pack handle type enum for glImportMemoryFd & glImportSemaphoreFd
Bug: angleproject:3289
Change-Id: Ic20b1d55641494b46622e1e28d93e2ca30655ea6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1566143
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
50eb1e6f
|
2019-04-16T12:18:35
|
|
D3D: Update dynamic BufferUsage flags.
Changed the mapping between gl::BufferUsage flags
and D3DBufferUsage flags. Only gl::BufferUsage::DynamicDraw
gets mapped to D3DBufferUsage::DYNAMIC now. This reflects
a better mapping between GL and D3D.
BUG=angleproject:3366
Change-Id: I5062f91fdb3664339e2c259b399d5f47401675d6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1569465
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
7d64c486
|
2019-03-12T14:27:40
|
|
GL_ANGLE_multiview has been renamed to GL_OVR_multiview2.
changes include:
1) GL_OVR_multiview to GL_OVR_multiview2 extension directive change
2) Removal of all references to side by side. We no longer support multiple views in a single 2DTexture. Only 2DTextureArray's are supported
3) WebGL 2 (ES3) is required for multiview
Bug: angleproject:3341
Change-Id: Ie0c1d21d7610f8feebdb2e4d01c6947f57e69328
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1552023
Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e02ad4d3
|
2019-04-16T14:12:37
|
|
Suppress tests crashing on teardown on Win Intel D3D11
BUG=angleproject:3349
Change-Id: Ib86f8b87d719919c980240d3220521a3c7f8a942
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1569466
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
e7da32f1
|
2018-12-27T15:31:47
|
|
Fix the failure in UpdateImageTextureInUse
If we update the texture data between two dispatch calls, ReadPixels can't
get right result after the second dispatch call. The failure reason is
that after the first dispatch, ReadPixels will sync framebufer state which
will update color render target. Finally, TextureD3D::ensureRenderTarget
is reached. However, we are in compute pipeline.
mTexStorage->isRenderTarget() will be false. That results the current
texture will create a new render target storage. But the UAV is still
bound with the previous texture storage. If there is no texture dirty bit
between these two dispatch calls, applyTexturesForCompute won't be called.
After the second dispatch, readPixels will read data from the new texture
storage which is not updated.
Bug: angleproject:3015
Change-Id: Ib2494ab8bf6e12faefc0a7370719d383526c36ba
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1390710
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
|
|
ccd91316
|
2019-04-12T14:13:22
|
|
Use primaryGPUIndex over activeGPUIndex when determining the system GPU.
Mac OPENGL/AMD dEQP test suppressions were being ignored because in
SystemInfo the activeGPUIndex was used when the primaryGPUIndex should
have been used.
Bug: angleproject:3373
Change-Id: I2664049b956bf8903c6d7094ec27646766e7ce16
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1565056
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
d3ec341d
|
2019-04-10T11:37:07
|
|
Fix LineLoopStateChangeTest to actually draw square and hourglass
The test claimed to be drawing an hourglass followed by a square. That
is:
----
\/
/\
----
followed by:
----
| |
| |
----
With the end result being:
----
|\/|
|/\|
----
However, in reality it was drawing two hour glasses with the same
result. That is:
----
\/
/\
----
followed by:
|\/|
|/\|
Bug: angleproject:3361
Change-Id: I59a2930f78e6e448b6ccb2e5f70c73ff0f15a2ea
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1561650
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
5646a7cc
|
2019-04-12T16:42:56
|
|
Uniform buffers not dirtied for gl_VertexID workaround on D3D11.
Related to:
https://chromium-review.googlesource.com/c/angle/angle/+/1520988
The program uniform buffers were dirtied for this edge case, but it
should have been the driver uniform buffers. This CL fixes this and adds
a tests case which catches this.
Bug: 945903
Change-Id: I6142771e200513ed0251fc97cec68d371d39ec1a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1565059
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Shrek Shao <shrekshao@google.com>
|
|
2664da8b
|
2019-04-08T16:26:52
|
|
Correct texImage uses of texture type -> target.
Similarly to how the subImage calls were corrected. glTexImage and the
family of related functions apply to a single texture target. This
means we need a different TexImage call for each cube face. This is
distinct from TexStorage calls which take a Cube map directly.
Note this is mostly a refactoring change. But it does increase code
consistency and should allow for more efficient code reuse.
Bug: angleproject:3356
Change-Id: I252f8983cdda3a8f0223c44cbbe8d8e2dd319a88
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1558673
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
065f8dc3
|
2019-04-11T12:56:00
|
|
Vulkan: Set appropriate GL conformant bit for returned configs
The Khronos conformance tests only test configs that have the conformant
bit set. ANGLE is currently targetting OpenGL ES 2.0 conformance, so this
change is setting the EGL_OPENGL_ES2_BIT bit to indicate this.
ES 2.0 conformance reporting is being restricted by
ANGLE_VULKAN_CONFORMANT_CONFIGS_ONLY for official builds, but ES 3.0
conformance will be reported for builds without
ANGLE_VULKAN_CONFORMANT_CONFIGS_ONLY enabled.
Bug: angleproject:3374
Test: CQ Dry Run
Change-Id: Ie31f63c3ea3b7bddfceec80ebc28f079ffd363df
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1564717
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
8f0210f7
|
2019-04-10T10:44:10
|
|
Always enable NPOT for Vulkan backend
Vulkan natively supports non power-of-two textures so indicate
that support for front-end.
Bug: angle-project:3239
Test: angle_deqp_gles2_tests --gtest_filter=dEQP.GLES2/functional_texture_completeness_2d_npot_t_repeat --use-angle=vulkan
Change-Id: Id9058b6e9afd1d43e5d74612f808ce39beafd35f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1561963
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
1e064014
|
2019-04-12T14:10:17
|
|
Fix 'not all control paths return a value' and add to extra_warnings
Bug: angleproject:3356
Change-Id: I9831b2035bc1e887c6d5a68a444e69e2bf5aa60a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1565055
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
23667b7e
|
2019-04-10T12:49:56
|
|
Update test result output from ANGLE dEQP gtests.
* prints lines for total, passed, failed, not supported, skipped, and
exception results.
* prints unexpected passed and failed tests each individually using the
dEQP name of the test.
* moves skipped test detection into the test loop. skipped tests will
now print a message that they've been skipped.
Bug: angleproject:3369
Change-Id: Idbfc0154a658eda3f52b5bfd30fbff0860a00133
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1561970
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
4877ef35
|
2019-04-12T10:36:00
|
|
Ensure deleteTexture preserves correct texture cache.
Also adds a test contributed by jgilbert@mozilla.com.
Bug: angleproject:3375
Change-Id: Ibd52daa074bf53b2b213193ccf5a612705a89c67
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1565052
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
0e30681d
|
2019-04-10T15:09:53
|
|
Vulkan: Add design docs on line segment raster.
The docs are based on an internal google document available at
go/vangle-line-rasterization. The link won't work for non-Googlers.
Also cleans up the format of the markdown file somewhat.
Bug: angleproject:3344
Change-Id: Ic466c44099e25f12b9afc4565bbd0fe37097af9f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1561969
Reviewed-by: Kenneth Russell <kbr@chromium.org>
|
|
df5ae9f6
|
2019-04-11T14:49:23
|
|
Vulkan: Write design doc explaining SPIR-V generation.
The two-pass approach first uses ANGLE's shader translator followed by
glslang. The doc explains it in more detail with links.
Bug: angleproject:3345
Change-Id: I04fd31993e3cd62ac409f2696e18f7ec39e5c6ce
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1560252
Reviewed-by: Tobin Ehlis <tobine@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a95940c6
|
2019-04-12T10:54:05
|
|
Suppress flaky dEQP 3.1 test
functional.shaders.builtin_functions.uniform.findLSBMinusOne.highp_compute
on D3D11
Bug: angleproject:2619
Change-Id: Ia7a83429d03b871967d2d6c5ecd3ce82111b98fd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1565427
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
9af10e8a
|
2019-04-11T16:20:57
|
|
Incorrectly placed extension directive is an error
The ESSL 1.00 spec states "...the extension directives must occur before
any non-preprocessor tokens." This change makes the occurance of an
extension directive after non-preprocessor tokens a compilation error.
Bug: angleproject:3285
Change-Id: I9f8631366151c92fb6d8b4408596917012d9a3e9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1565411
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
cfc73cc1
|
2019-04-08T16:26:51
|
|
Correct subImage uses of texture type -> target.
Texture "types" are the same as texture "targets" except for cube maps.
Cube map targets specify a single face. Cube map types specify a whole
cube map. The subImage functions should take a target instead of a
type. We were using both in different places. This CL corrects all uses
in subImage calls to "target". It also adds a helper for getting a
target texture from a target. And clarifies the naming of the texture
query methods.
Bug: angleproject:3356
Change-Id: I06eb5c5666eec9b8934becf2ba57a066d5cdabde
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1558672
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e29b61e6
|
2019-04-11T17:02:42
|
|
Skip ParallelShaderCompileTestES31.LinkAndDispatchManyPrograms
Flaky on Win NVIDIA D3D11
Bug: angleproject:3359
Change-Id: I56a0e4266f1cd0913852a43852666dee055a8e00
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1564562
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
2249d4a7
|
2019-04-05T16:48:55
|
|
Vulkan: remove clear depth ability from clearWithDraw
This partially reverts the following change:
60ec8f576 Vulkan: break dependency to the depthClamp feature
The feature is no longer necessary, and simplifies the usage of
utility shaders.
Bug: angleproject:2361
Change-Id: I1e87ac8d2517c5a3b50e3d0cddd55c852e0e3e7d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1555313
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
127990f9
|
2019-04-04T13:52:04
|
|
Vulkan: Use render pass loadOp for scissored clears
At this point, every clear is done through render pass loadOp, except
masked color or stencil clears. The only fallback is clearWithDraw,
that can clear both color and stencil at the same time.
Bug: angleproject:2361
Change-Id: I805fc12475e832ad2f573f665cdfeb766e61a6d0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1553740
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
d581f918
|
2019-04-11T10:21:05
|
|
Vulkan: few more EGL dEQP suppressions on Android
Follow up to c02ef98fb199341d644e4751ac682d858595420e.
Bug: angleproject:2546
Change-Id: Ibad7befc5bed95544c0cf15a79d25b47ec8a00bd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1564710
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
e6b23e45
|
2019-04-10T17:19:15
|
|
Skip Texture2DTestES3.TextureImplPropogatesDirtyBits on Win AMD GL
Bug: angleproject:3371
Change-Id: I7601e6b658835b9c948acab98491f5bd01ea9497
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1562517
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
34cbc544
|
2019-04-05T11:30:10
|
|
Use ANGLE's gpu_info_util libraries for test expectations
3. Remove gpu_info.h and gpu_info.cc and use ANGLE's own gpu_info_util to to
gather device info instead.
- Support collecting info for and parsing expectations of specific Android
devices such as Nexus 5X and Pixel 2.
- Change parser behavior to more closely follow:
bit.ly/chromium-test-list-format
Bug: angleproject:2677
Change-Id: I4c0b9342142b718e884484a6bcaac2dff3ac575a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1553822
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
893ccb48
|
2019-04-09T16:19:20
|
|
Skip EGLSurfaceTest.SwapInterval on Nexus 5X and 6P GLES
Bug: angleproject:3364
Change-Id: I51dd45cfcd1c548266712b71eac0dca60574e69e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1558960
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c02ef98f
|
2019-04-09T16:09:44
|
|
Vulkan: update GLES3 and EGL expectations
Few GLES3 expectations were updated in preparation for running those
tests on the bots (one change on Linux, a handful on Android).
A number of EGL tests were discovered to crash on Android. They are
suppressed as well. Note that most of these tests were previously
marked as failing or flaky on the GLES backend as well, and they are
marked as SKIP everywhere instead.
Bug: angleproject:2341
Bug: angleproject:2546
Bug: angleproject:2950
Bug: angleproject:3186
Change-Id: If52d5faeea994c8b6200b713b3c2f1b1a1aeff92
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1560251
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
a0b00e97
|
2019-04-09T18:45:22
|
|
Vulkan: Expose GL_EXT_memory_object_fd & GL_EXT_semaphore_fd
If the vulkan driver has support for VK_KHR_external_memory_fd or
VK_KHR_external_semaphore_fd, add the GL versions of these to the vulkan
renderer's extensions.
Bug: angleproject:3289
Change-Id: I7f04b5cf883f93f6ccd579c2b75d6831b854bfd0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1552027
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f39b4f02
|
2019-04-09T12:04:51
|
|
Vulkan Android: Remove workaround to clamp the point size
This is to remove the workaround introduced by anglebug.com/2599 since
Nexus 5x devices aren't in the farm anymore and the tests pass on Pixel
devices.
Bug: angleproject:2599
Test: angle_deqp_gles2_tests
Test: angle_end2end_tests
Change-Id: I14f724494909486a2164ddd734a95b6980429f29
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1559202
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d3c57452
|
2019-04-09T15:37:10
|
|
Fix leak of MemoryObjectManager from context state
Bug: chromium:951049
Change-Id: I4e9e2cfe3c287fcb6e536ec20c20acbfda1d8405
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1559203
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Michael Spang <spang@chromium.org>
|
|
e4458b7b
|
2019-04-08T16:26:50
|
|
Fix glCopyTexSubImage3D.
Two bugs were present in our implementation. We were using the y offset
for z in ensureSubImageInitialized. And for our D3D back-end we were
potentially reading from the wrong image index.
Bug: chromium:947342
Change-Id: If39671a911e08fcc641b9ba6f5910e3a2c16eb5d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1558671
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
a254fa28
|
2019-04-09T14:25:59
|
|
Rename getCurrentDisplay to getDisplay
There is always only one display that can be associated with a context,
so get*Current*Display is confusing.
Bug: None
Change-Id: Iff3a9fc5ad1154b046bb30d7f46a468802ba7fcc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1558958
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
af0301a8
|
2019-04-09T10:43:04
|
|
Vulkan: fix CPU throttling frames to 2
Previously, the CPU was throttled to be at most N frames ahead, N being
the number of swapchain images. N is now fixed to 2, regardless of the
number of swapchain images. If N < 2, we would be stalling the CPU
unnecessarily, and if N > 2, the CPU could get too far ahead.
Effectively, here is how the throttling plays out with this commit:
Submit (Fence 1) + Present
Submit (Fence 2) + Present
Wait Fence 1
Submit (Fence 3) + Present
Wait Fence 2
Submit (Fence 4) + Present
Wait Fence 3
Submit (Fence 5) + Present
Wait Fence 4
...
Bug: angleproject:2942
Change-Id: I3b8c3bb88e52d62231306ec84aad50d2bf472d8c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1558681
Reviewed-by: Ian Elliott <ianelliott@google.com>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
3702d8c9
|
2019-04-08T13:44:06
|
|
Propogate dirty bit signals from TextureImpl to Texture up to Context.
If TextureImpl sets a local dirty bit and signals gl::Texture of it, the
dirtyness is not propogated to context. This can result in draw calls
with textures that are not synchronized
BUG=949985
Change-Id: I9baf82c96598265a6a4850f1fd48e213b5e98ab5
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1556699
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
7d689863
|
2019-04-08T12:31:33
|
|
Re-Enable MipmapTest.TextureCubeGeneralLevelZero/ES2_VULKAN
The test MipmapTest.TextureCubeGeneralLevelZero/ES2_VULKAN was disabled
for Vulkan Android due to Nexus 5x and Pixel 2 issues. The Nexus 5x
has been removed from the test infrastructure and the Pixel 2 issue
seems to have sorted itself out.
Bug: angleproject:2817
Test: angle_end2end_tests MipmapTest.TextureCubeGeneralLevelZero/ES2_VULKAN
Change-Id: I85bb56707def2906194c34942fcd74a811255abc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1558293
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Tim Van Patten <timvp@google.com>
|
|
fc15ae55
|
2019-04-08T23:32:32
|
|
Vulkan: parallelize internal shader compilation
As glslang is rolling frequently now, internal shaders frequently
require recompilation. This change parallelizes shader compilation to
speed up this process.
Bug: angleproject:3333
Change-Id: Icace083559bff73dfb9b5fe7cc2c59ce8137a2dc
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1558680
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0086a8ac
|
2019-04-09T09:15:59
|
|
Skip LineLoopStateChangeTest.DrawElementsThenDrawArrays on Win Vulkan AMD
Bug: angleproject:3361
Change-Id: I39c595e1b8ab73520422e2dd3433cd007a1415a1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1559789
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
82418c82
|
2019-04-05T15:56:03
|
|
Add support for updating glslang_validator binary from Linux.
Updates the glslang_validator binary for Linux in the same commit.
Bug: angleproject:3333
Change-Id: Ide42781ec4951e7c09307a0a3b96c36c6ea29d23
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1553828
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
65d10f3b
|
2019-03-21T16:30:31
|
|
Vulkan: Implement robust resource initialization
If a texture or renderbuffer needs to be cleared for robust access or
due to having emulated channels, it is immediately cleared. The former
relies on a front-end feature that optimizes robust access clears only
to levels and layers that are not fully initialized through data upload.
Bug: angleproject:2722
Change-Id: Icdab856eb4ffe963f78569b6d80d9ff5cb27ff9b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1535056
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
8413faba
|
2019-04-04T17:13:18
|
|
Fix formsRenderingFeedbackLoopWith check
To make it pass the following webgl conformance test
https://github.com/KhronosGroup/WebGL/blob/master/sdk/tests/conformance/rendering/rendering-sampling-feedback-loop.html
It used to fail due to
1. Didn't check if texture unit is sampler complete
2. Only checked active drawbuffers. But drawbuffer settings shouldn't be
taken into account when checking drawing feedback loop.
On top of applying these 2 functional fixes, I also tried to do some
optimization by unwrapping the nested for loop for program sampler
bindings and texture unit in `Program::samplesFromTexture` and putting
them outside of the draw buffer loop according to the old comment by
Antonie @piman.
https://codereview.chromium.org/2461973002/
> ... turning it around (for each texture check if it's
also an attachment, instead of for each attachment check if it's a bound
texture). In particular, we have an upper bound on the number of
attachments, so we can look them up outside the loop into a fixed size
buffer on the stack - and the very common case will be to only have 1 of
them making the inner loop cheap.
But this unwraps sort of breaks the code structure. An alternative way
would be passed in a framebuffer pointer into `Program::samplesFromTexture`
but that would ends up in tight class coupling. I am a bit unsure here.
Would like to hear if think this change is okay in terms of code style.
In addition to further speed up this check (as it runs for every draw
validation) I added a cache mLastColorAttachmentId indicating the last i
of GL_COLORATTACHMENTi that is not GL_NONE to shorten this inner loop.
In most scenario we won't have up to max number of color attachments.
A side note: this is still failing
https://github.com/KhronosGroup/WebGL/blob/master/sdk/tests/conformance2/rendering/depth-stencil-feedback-loop.html
But it's because the test case doesn't fit the spec at this moment.
I will update this test later.
Bug: chromium:660844
Change-Id: I6d718dada71a5d989caac04de03f2454f2377612
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1553963
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shrek Shao <shrekshao@google.com>
|
|
bfc5df16
|
2019-04-08T12:54:56
|
|
Remove function pointers in CopyTexture3DTest.
No longer needed with the ANGLE loader.
Bug: None
Change-Id: If206c529efaee5b81b68059341dcc6e841126842
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1556698
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
edef895a
|
2019-04-04T10:03:09
|
|
Vulkan: make sure clear value is completely initialized
If clearing only depth or stencil, the other channels contained garbage.
Additionally, this removes the clearing of emulated channels. Emulated
textures are cleared once, and they don't need to be recleared.
Bug: angleproject:2361
Change-Id: I01aa6be116d44f6c0115a1c25322db2e579a7b23
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1553739
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d5ff4fad
|
2019-04-08T09:25:23
|
|
Add standalone glslang_validator as a download hook.
This change allows us to download a copy of the standalone glslang
validator during gclient runhooks. This decouples run_code_generation
from the version of glslang stored in source tree. This prevents the
error where a developer would run into a code generation conflict due
to a change in version of glslang.
Currently only the Windows version is stored in the tree. A follow-up
CL will add Linux. The validator will only initially support Windows
or Linux.
Documentation for the script is located in tools/glslang/README.md.
This CL also updates the Vulkan shader generation script to use the
new binary for Windows.
Bug: angleproject:3333
Change-Id: Ia6146a283a2bcfdf84c42411d6b5d8bae136bf1b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1553823
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
90b1865e
|
2019-03-29T00:00:27
|
|
More unittests for BitSet
Bug: angleproject:2361
Change-Id: Icca49086d95ddb0d2d50e5ba71ae9b748eeabf3f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1545203
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
5d50678e
|
2019-04-06T15:04:03
|
|
Roll glslang forward 1240db678cae..e06c7e9a515b
Manual roll to unblock the autoroller stuck on presubmit failure.
Bug: None
Change-Id: I97094add66a42154309addea43fe6aa5e1411c43
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1556694
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
efec568b
|
2019-04-03T15:19:26
|
|
Expand clear tests for more mask combinations
The test was previously either masking every three aspect (color, depth
and stencil) or none. This was not exercising every clear path in the
Vulkan backend.
Bug: angleproject:3241
Change-Id: Ief4085ea302ec17bffe30b1f8510ae357fd01290
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1551523
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
c7565353
|
2019-04-03T14:03:56
|
|
Vulkan: break dependency to the depthClamp feature
Image clear's masked clear path using a draw call was using this feature
to clear the depth buffer, but this feature is not available on ARM and
some Qualcomm devices.
This change adds a push constant to the vertex shader used in this call
to export the depth clear value, removing the need to rely on depth
clamping.
Bug: angleproject:3241
Change-Id: I565cd5f731c441820e0702e51dfdf02d0bc7de06
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1551522
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
f6c937f8
|
2019-04-02T17:04:08
|
|
Vulkan: fix masked stencil clear
Previously, masked stencil clear was done by clearing every stencil bit
to the ClearValue & Mask. The correct behavior as implemented in this
change is to clear only the bits that are set in Mask. This can only be
done through a draw call, with ClearValue as the stencil reference, and
Mask as the stencil write mask.
Note: this change relies on the depthClamp Vulkan feature which is not
available on ARM.
Bug: angleproject:3241
Change-Id: I0a181c32f881ee813f144e7bdd6f42c8ea6f1966
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1548442
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
194a9674
|
2019-04-05T09:20:46
|
|
Vulkan:Return HW's SUBPIXEL_BITS
Plumb the physical HW's subPixelPrecisionBits limit to be returned in
the query for GL_SUBPIXEL_BITS. Default value remains 4 for all other
backends.
Bug: angleproject:3351
Change-Id: I5564e5090e7211b8daeaa91ea30eceb23c5ea227
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1553967
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
5f388c24
|
2019-03-14T09:54:23
|
|
Vulkan: dEQP-EGL.functional.image.modify.*
Determine the destination internalFormat correctly.
dEQP-EGL.functional.image.modify.renderbuffer_rgb565_tex_subimage_rgb8
dEQP-EGL.functional.image.modify.renderbuffer_rgba4_tex_subimage_rgba8
dEQP-EGL.functional.image.modify.tex_rgb565_tex_subimage_rgb8
dEQP-EGL.functional.image.modify.tex_rgba4_tex_subimage_rgba8
dEQP-EGL.functional.image.modify.tex_rgba8_tex_subimage_rgba5_a1
dEQP-EGL.functional.image.modify.tex_rgba8_tex_subimage_rgba4
dEQP-EGL.functional.image.modify.tex_rgba5_a1_tex_subimage_rgba8
dEQP-EGL.functional.image.modify.tex_rgba5_a1_tex_subimage_rgba4
dEQP-EGL.functional.image.modify.tex_rgba4_tex_subimage_rgba8
dEQP-EGL.functional.image.modify.tex_rgba4_tex_subimage_rgba5_a1
dEQP-EGL.functional.image.modify.renderbuffer_rgba4_tex_subimage_rgba8
dEQP-EGL.functional.image.modify.renderbuffer_rgba4_tex_subimage_rgba5_a1
dEQP-EGL.functional.image.modify.renderbuffer_rgb5_a1_tex_subimage_rgba8
dEQP-EGL.functional.image.modify.renderbuffer_rgb5_a1_tex_subimage_rgba4
Bug: angleproject:3170
Change-Id: Ic9870390b2d4a0dcbe561efd3fb1597faadb7d79
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1524404
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
9de3ddb5
|
2019-04-03T16:23:40
|
|
Generate entrypoints for GL_EXT_memory_object_fd & GL_EXT_semaphore_fd
This adds entrypoints for the Linux variants of GL_EXT_memory_object &
GL_EXT_semaphore.
Bug: angleproject:3289
Change-Id: I40de40f27aa82cd9479d5913dac0a7493919bb8f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1552026
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
fb201c5e
|
2019-04-03T14:57:35
|
|
Implement resource management for GL_EXT_memory_object
This implements glCreateMemoryObjectsEXT, glDeleteMemoryObjectsEXT, and
glIsMemoryObjectEXT. It's not possible to do anything useful with them
yet.
Bug: angleproject:3289
Change-Id: I8882b657e9de564b5f97f8dea87838f67b1928f8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1552025
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
7a8c3e5e
|
2019-04-03T14:49:57
|
|
Generate entrypoints for GL_EXT_memory_object & GL_EXT_semaphore
This adds entrypoints for two new extensions that will be useful for
importing external Vulkan objects into ANGLE.
Bug: angleproject:3289
Change-Id: I206dc76eda5c6c8d836db7c6413c5544326aa722
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1552024
Commit-Queue: Michael Spang <spang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
27f115aa
|
2019-04-01T10:33:21
|
|
Vulkan: clean up framebuffer clear
The Qualcomm bug workaround is changed such that clears still go through
the render pass loadOp, but the render pass is immediately closed. This
allows us to remove a few fallback methods.
Bug: angleproject:2361
Change-Id: I24c3884a183f8bb40673e922773f70faffad848f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1545524
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
896e7ded
|
2019-04-04T10:59:55
|
|
Use compressed internal format as 'format' in tables.
Previously we would store the unsized 'base' format as the internal
format. For instance for GL_COMPRESSED_RGB_S3TC_DXT1_EXT we would store
GL_RGB. With the new spec validation for TexSubImage it becomes clearer
to store the internal format of the compressed texture as the 'format'.
Bug: angleproject:3170
Change-Id: I7446418896eabd3d4f143e9cae4976889b973674
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1553379
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
85b04bb2
|
2019-04-02T12:57:36
|
|
Minor cleanups to copy vertex.
Makes the files parsable as c++ files.
Bug: chromium:943709
Change-Id: I6f7d718f9773fe4a7f72828ee9cd56beb5577c66
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1545528
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
43997017
|
2019-03-30T23:24:01
|
|
Vulkan: fix non-float clear with draw
Instead of using one draw call that clears all attachments, multiple
draw calls are issued that clear a single attachment each. This allows
us to have a manageable number of variations for the ImageClear.frag
shader, now that non-float format support is introduced.
Bug: angleproject:3187
Change-Id: Ic0c1067a396250bd80f31d00cad5a272acff8be8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1545523
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
f9f18ef0
|
2019-04-03T10:07:18
|
|
Vulkan: Allow vertex-only pipelines
This allows issuing draw calls which only manipulate depth/stencil.
Bug: angleproject:3241
Change-Id: I62ab18a185ea5b234d3559f30c5b2b8ecb317bbb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1550900
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0719a88e
|
2019-04-03T13:15:17
|
|
Fix OOB access for dynamic attribs with offsets.
We were not properly adding the offset to compute the right bounds.
Bug: chromium:943709
Change-Id: I93e714b46dd366d5833fffa858ea3ab0322ffa92
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1548441
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
91524d8c
|
2019-04-02T15:31:30
|
|
Disable Clear and TextureUpload perf tests on D3D11
The tests crash on Nvidia in the driver.
Bug: 945415
Change-Id: I0f635eb5d99ecaeeaff055793b1b5fd3a314b055
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1548440
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
24980278
|
2019-04-03T09:03:51
|
|
D3D11: Skip DepthTexturesWithMipmaps on AMD/D3D11.
Possible driver bug.
Bug: angleproject:3342
Change-Id: Ia171a7ac0d764859c4440b1fe2986aa931ff75c2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1550799
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
89899748
|
2019-01-16T08:32:25
|
|
ParallelCompile: D3D compute
This parallelizes the compiling and linking for compute shaders on
the D3D backend.
Bug: chromium:849576
Change-Id: Idd6b418cb9c2448209c15eab2756599f8ff7af4c
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1415725
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
|
|
2889dff6
|
2019-03-27T16:25:11
|
|
Mac: Support using an IOSurface as the default framebuffer
Bug: angleproject:2764
Change-Id: I3fdab330b59ed996f68e3063debca29323a66cf0
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1542599
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
892d1805
|
2019-03-27T14:21:34
|
|
Vulkan: Have the WindowSurfaceVk own the submit semaphores.
Chaining of submit semaphores is only needed for window surfaces because they
are required for the first usage of the swap chain image and final present
of the image.
Move ownership of the submit semaphores from RendererVk to WindowSurfaceVk and
update all calls to finish and flush to be piped through a ContextVk which
tracks the currently bound window surface.
BUG=angleproject:2464
Change-Id: I4b3083124d7910a5dee297afc219e3a3f28057f2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1542257
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
1af744b5
|
2019-04-01T16:33:11
|
|
Windows SDK includes need to be lowercase for MinGW builds.
Bug: angleproject:3336
Change-Id: If2075b3ed2fe0be95ab2ec9cd0398afef691dee8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1548433
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
db4ed317
|
2019-03-29T00:32:45
|
|
Vulkan: glClearBuffer* implementation
Refactors FramebufferVk::clear such that specific render targets could
be cleared, with clear values not necessarily set through glClearColor
etc.
FramebufferVk::clearWithRenderPassOp is modified so that loadOp and
clear values are set after the render pass has been registered in the
graph. This allows multiple glClearBuffer calls to coalesce into the
same render pass.
glClearBuffer calls are then implemented simply as calls to the
refactored clear function with the appropriate parameters.
Bug: angleproject:3187
Change-Id: I2fdfcbea5bf244f63ec981b91caca47f5ee3cd3a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1545204
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tim Van Patten <timvp@google.com>
|
|
750935f4
|
2019-04-02T11:27:19
|
|
Ignore flaky dEQP failures on Windows
More flaky failures that were being hidden by test retries. Might take a
few more patches in order to disable test retries.
Bug: angleproject:3271
Bug: angleproject:1729
Change-Id: I97eb02d6e93892a04db8b09992f32c4c20dbd49b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1549314
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
d3fd67e0
|
2019-03-29T23:22:34
|
|
Add a test for glClearBuffers of render targets of same FBO
This test is to ensure the upcoming Vulkan implementation can coalesce
all the calls into a single render pass clear.
Bug: angleproject:2361
Change-Id: I816907b3512715c1d3217689413b6c8e9842a37a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1544973
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
1d72f658
|
2019-03-29T22:42:45
|
|
Add a test for glClearColor followed by glClearBuffer
This test is to ensure the upcoming Vulkan implementation uses the right
colors for each render target.
Bug: angleproject:2361
Change-Id: Ibc6f8b474ac598a20d8cc9ac1c7fd18667370cbf
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1544972
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
04e9e559
|
2019-04-01T14:40:21
|
|
Use revision.h for glslang dirty checks.
This file changes a lot less than git HEAD. And it should guard against
the same changes. Should reduce the instances of developer confusion
regarding run_code_generation being out of data.
Also update the presubmit check to print a more helpful message in the
case where the code does need to be regenerated.
Bug: angleproject:3333
Change-Id: I190dab5be50fc42512bdfc11c2d200f34f3b2092
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1545123
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
6cb0cff5
|
2019-03-28T11:01:22
|
|
Add a test for masked/scissored multi-attachment clear
Done after noticing a bug in the Vulkan backend where masked (and
possibly scissored) color clears were only clearing the first
attachment.
Bug: angleproject:2361
Change-Id: I471d337b1c3a3a5e17748690ae2222a6351773ac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1544971
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
310294ad
|
2019-04-01T11:01:34
|
|
Add missing copyTexture functions in TextureNULL.
The NULL backend exposes the CHROMIUM_copy_texture extension but would hit
UNIMPLEMENTEDs when trying to call these functions.
BUG=945596
Change-Id: Ia845e48b21e6004946edb47b6f4f0573df1f70a4
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1545525
Reviewed-by: James Darpinian <jdarpinian@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
529b98fa
|
2019-03-28T13:13:00
|
|
Correct case for includes.
This is needed for building on MinGW.
Bug: angleproject:3330
Change-Id: I4a7e7d6f6e14be7e1ba67d3ceb45b11d00585119
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1544749
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
3b14b786
|
2019-03-28T12:12:24
|
|
Ignore flaky failures from ANGLE's dEQP deps on Win/Linux/Mac.
Flaky failures were being hidden by test retries. Should be ignored so
we can disable test retries.
Bug: angleproject:3271
Change-Id: I17708f96e2299b9828f5f979f68187b3cd99ecb3
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1542259
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
|
|
f1153b03
|
2019-03-27T11:22:54
|
|
Vulkan: Clear DS through render pass even if color is masked
Other than for a Qualcomm driver bug workaround, this makes a few
fallbacks unnecessary.
Bug: angleproject:2361
Change-Id: I8bdc8efba69527ca89bfa7b646a9d41e07f4f895
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1541669
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d02c17f9
|
2019-03-28T16:49:39
|
|
Mark vertex attributes dirty during context switches
gl::State::mDirtyCurrentValues is a second tier of
gl::State::DIRTY_BIT_CURRENT_VALUES bit.
Marking mDirtyCurrentValues dirty during context switches
treats them in the same way as other gl::State::mDirtyBits are treated.
This has regressed in
https://chromium-review.googlesource.com/c/angle/angle/+/722423
where individual current values bits were squashed into one.
Bug: chromium:920033
Change-Id: I778515f11c975f8d88bd2d8c08c49160fd011497
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1545009
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
9cce3cd9
|
2019-03-27T15:24:12
|
|
Update texure cache after teleting bound texture.
The texture cache could become out of sync. And we could end up
dereferencing an invalid pointer.
Bug: chromium:943538
Change-Id: I6a99a04e80fc551b6177e25b7bee09c6ae226340
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1541718
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
6446c888
|
2019-03-28T17:49:38
|
|
Combine SizedFloatRGBA[Renderbuffer,TextureAttachment]Support.
Bug: angleproject:3332
Change-Id: Ia937727062d3296af9691a95d296c89b8e9476ac
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1544779
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
95446754
|
2019-03-27T13:36:32
|
|
Add support to CHROMIUM_color_buffer_rgba for creating RGBA32F renderbuffers on ES2.
This is desired for implementing WEBGL_color_buffer_float support on
WebGL1 on ANGLE's ES2 driver, for Firefox.
Bug: angleproject:3322
Change-Id: I599f86db62402333d3ef9235956c63e667f1513d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1541722
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Kenneth Russell <kbr@chromium.org>
|
|
345cb856
|
2019-03-28T10:04:24
|
|
Vulkan:Clamp stencil ref value
We were casting stencil ref value instead of clamping it as the spec
requires. Fixing that which allows a number of new dEQP tests to pass.
Bug: angleproject:3244
Bug: angleproject:3245
Bug: angleproject:3247
Bug: angleproject:3248
Change-Id: I59242d59982b990e82395f5a1e77b9a54254dc2b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1541751
Commit-Queue: Tobin Ehlis <tobine@google.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|
|
5a604a5f
|
2019-03-27T14:22:50
|
|
Ensure framebuffer is up-to-date before drawing
The dEQP-GLES2.functional.fbo.render.texsubimage.between_render_tex2d*
test was failing because a TexSubImage call modifying the framebuffer
wasn't being applied before a subsequent DrawElements call and thus
getting an incorrect result.
Bug: angleproject:3249
Test: angle_deqp_gles2_tests --gtest_filter=dEQP.GLES2/functional_fbo_render_texsubimage_between_render_tex2d_rgb --use-angle=vulkan
Change-Id: I90f791957e6536c5c62fb731d52cd486ab5c05c1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1542361
Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
0c128e15
|
2019-03-25T23:50:14
|
|
Vulkan: Use render pass ops to clear images when possible
On tiling GPUs, render pass loadOp and stencilLoadOp can be used to very
cheaply clear an image as it is being render to. This change uses this
feature to clear render targets when possible.
Bug: angleproject:2361
Change-Id: Ic4bdc908873f4802760d549f4893f84a47beac0f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1500576
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
9049d321
|
2019-03-27T14:08:44
|
|
Vulkan: Pass the current context to egl Sync operations.
The EGL_KHR_fence_sync spec says that if a flush is needed before waiting
on the sync, it's done on the current context for the current thread.
This helps simplify the multithreading design, we don't need to worry about
flusing on a context that may no longer exist or is executing on a different
thread. It does allow infinite waits because the context with the fence is
never flushed but the spec allows this.
BUG=angleproject:2464
Change-Id: I8bf2f93c408fee2dae95caa5bb9c76ba67687931
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1542256
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
|
|
2e5afde1
|
2019-03-28T09:39:49
|
|
Add suppressions for Mac dEQP [Part 3].
Bug: angleproject:3317
Change-Id: Ie60ad9670d19d0eae9926bcf14f65fc2e84215d8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1542602
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
e810ad90
|
2019-03-26T16:19:17
|
|
Vulkan: dump summary of commands in digraph
This is possible thanks to SecondaryCommandBuffer. Makes life easier
when debugging by not just showing resource type in the nodes, but
actual stream of commands recorded in each.
Bug: angleproject:3136
Change-Id: I125a32ec2966a55330e60930ca088d1a3673a8ba
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1538832
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
02a579e9
|
2019-03-27T14:21:20
|
|
Vulkan: roll Vulkan repos to v1.1.102
Bug: angleproject:3320
Change-Id: Ia24f9bc2499f36c6aab810db00bb6408920222fd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1541719
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
56124e68
|
2019-03-26T15:02:30
|
|
Vulkan: remove dependency to inheritedQueries
If using vk::priv::SecondaryCommandBuffer. This would allow ES3 support
where inheritedQueries is not supported.
Bug: angleproject:3136
Change-Id: I10508058301ea6da8f3415cfdcc052500a67f810
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1538829
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Tobin Ehlis <tobine@google.com>
|
|
705f480f
|
2019-01-29T15:49:35
|
|
ParallelCompile: Enable worker on GL backend
Except WGL AMD, WGL Intel, and GLX Nvidia.
BUG=922936
Change-Id: I1bdbddd1485578465bcf6ece4b4b7173ae6f9f05
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1442312
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Jie A Chen <jie.a.chen@intel.com>
|
|
0516e8a5
|
2019-03-27T12:21:29
|
|
Vulkan: Fix subpass declaration for depth/stencil-only FBOs
If an FBO only has a depth/stencil attachment, the attachment index will
be 0, but that value was incorrectly being used as a flag for no
depth/stencil attachment.
Bug: angleproject:2361
Change-Id: I4ee803a392a29f7b261bc0cfabf9f2507dc7b178
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1541670
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
6854940d
|
2019-03-25T23:30:49
|
|
Vulkan: Correct RenderTargetVk extents to image mip
RenderTargetVk::getImageExtents() was always returning the base level
extents of the image it was viewing. This resulted in incorrect extents
being provided to various framebuffer- and renderpass-related
declarations. The function is renamed to `getExtents()` and returns the
appropriate mip extents.
Bug: angleproject:2361
Change-Id: I059a8d19fcb140c9095107d935aa3e5cb1852fc2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1537327
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
e18ff25d
|
2019-03-21T08:41:08
|
|
Vulkan:Refactor SecondaryCommandBuffers
A bunch of changes to rework and improve SecondaryCommandBuffers.
Inlined all of the command functions and moved them into the header.
Created new specialized commands for updating Compute/Graphics
DescriptorSets and setting a memoryBarrier.
Updated all of the pointer storage to be inferred rather than
explicitly stored in order to save space. Also removed various params
that are fixed in ANGLE to save space.
Bug: angleproject:3136
Change-Id: I994bb70d5e4db6d9e71d38ac62451aaec780a5e1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1535704
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Tobin Ehlis <tobine@google.com>
|
|
5fd08af4
|
2019-03-13T19:35:36
|
|
Sampler state overrides texture state if set
The new validation added in http://crbug.com/809237 failed to consider
that sampler object state overrides texture object state if a sampler
object is bound. State caching makes this complicated to fix.
Fixes WebGL conformance test incompatible-texture-type-for-sampler.html
https://github.com/KhronosGroup/WebGL/pull/2823
Bug: 940080, 809237
Change-Id: I26b0fb35c5630c36248edae80f0298a0cb7e14b8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1522364
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
f7f15ac2
|
2019-03-27T12:56:51
|
|
Fix deleting a buffer not updating VAO validation.
Deleting a buffer that is bound to a VAO should act as if
the application unbound the buffer. Unbinding the buffer
should update relevant validation caches. But we were
missing the logic that updates the validation caches.
This CL adds the necessary cache updates. It does not include a
regression test. The test was causing an unrelated regression that is
going to be a bit longer. It should not block this fix.
Bug: chromium:943538
Change-Id: Ib073cd07a230ca073a5b14bc054e961158a0097d
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1536491
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
198de612
|
2019-03-27T14:26:51
|
|
Remove EGLThreadTest to fix angle_end2end_tests failures on Android.
EGLThreadTest doesn't clean up well and the test framework can't handle
it well. It caused test failures related to eglMakeCurrent (ELG_BAD_ACCESS)
on Android that were masked by retries.
Calling eglGetDisplay within a test can cause it to return a cached
display from the test runner. The test is unable to know if it should
terminate this display.
bug: angleproject:3321
Change-Id: I14a539a00acaed4ee71622e7416a6c7a75596606
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1541717
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
208af3eb
|
2019-03-19T09:15:55
|
|
Update TexImage2D Parameter Checking
Update the parameter checking performed within ValidateTexImage2D() to
pass the following tests:
dEQP-GLES2.functional.negative_api.texture.teximage2d_invalid_format
dEQP-GLES2.functional.negative_api.texture.teximage2d_invalid_internalformat
dEQP-GLES2.functional.negative_api.texture.texsubimage2d_invalid_type
Bug: angleproject:3250
Bug: angleproject:3251
Test: angle_deqp_gles2_tests --use-angle=vulkan
Change-Id: I4d9be4fe0a9b377e61e3132db262750e6285464b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1534519
Commit-Queue: Tim Van Patten <timvp@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
74ba10f2
|
2019-03-27T15:50:24
|
|
Add suppressions for Mac dEQP [Part 2].
Bug: angleproject:3317
Change-Id: I0c335c6af5d183a8ef7fa4154b6dc897cad0b8ff
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1541721
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
25034108
|
2019-03-27T13:07:45
|
|
Add suppressions for Mac dEQP. [Part 1]
Since we can't test these failures on the CQ this CL likely won't hit
all the necessary suppressions. Will follow up with a second CL.
Bug: angleproject:3317
Change-Id: I241c139459d7cc7ab3c17d61a9837cdd3ab6c9a7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1542017
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
|
|
c240abe4
|
2019-03-27T11:49:19
|
|
D3D11: Broaden suppression for atomic counter tests.
These seem to be flaky and failing on all D3D11 devices.
https://ci.chromium.org/p/chromium/builders/ci/Win10%20FYI%20dEQP%20Release%20%28NVIDIA%29/25142
https://ci.chromium.org/p/chromium/builders/ci/Win10%20FYI%20dEQP%20Release%20%28NVIDIA%29/25098
https://ci.chromium.org/p/chromium/builders/ci/Win10%20FYI%20dEQP%20Release%20%28NVIDIA%29/25092
Bug: angleproject:1729
Change-Id: I4ae344ec3d950a6e647649a4ecf3ecafaca2de4f
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1541666
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
518c679d
|
2019-03-25T16:25:10
|
|
Clean up test_expectations to merge with angle style/convention.
Can rename/clean up the library to move from chrome style to angle
style. Can also start pulling out chrome-specific definitions. More work
to be done when moving gpu_info to use Angle's SystemInfo.
Bug: angleproject:2677
Change-Id: I75fd4446aa4be85fba590cd00cd3a213a0b3752e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1538677
Commit-Queue: Jonah Ryan-Davis <jonahr@google.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
4864e0cd
|
2019-03-26T13:57:55
|
|
Fix OOM in TextureUpload perf test
The test texture size is reduced from 2k x 2k to 1k x 1k to avoid OOM on
lower-memory devices.
Bug: 945415
Change-Id: I66611417114212427f0a2cfc677450f5e705a7ca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1537331
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
|