|
8edb7188
|
2018-10-10T15:54:23
|
|
ES31: Add structure field member support in SSBO
This patch adds the structure field member support in SSBO. To support it,
below things are done:
1. Calculate the offset and arrayStride in SSBO structure.
2. Support array of arrays translation.
Bug: angleproject:1951
Change-Id: If8f233e6388d5bb905e78c39a85112d394298138
Reviewed-on: https://chromium-review.googlesource.com/c/1278097
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
672267fc
|
2018-10-19T17:01:17
|
|
ES31: Fix that asuint can't accept bool value
This change fixes below errors:
error X3013: 'asuint': no matching 1 parameter intrinsic function
error X3013: Possible intrinsic functions are:
error X3013: asuint(double, out uint x, out uint y)
error X3013: asuint(float|half|int|uint)
When we store a boolean value, we should cast it to uint firstly. Then do the
store.
Bug: angleproject:1951
Change-Id: I8931e540d701ef72bb82846496c698acef1ba1fb
Reviewed-on: https://chromium-review.googlesource.com/c/1295831
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
19603b9e
|
2018-10-18T17:25:33
|
|
ES31: Allow function call, unary, ternary operators in SSBO
When we meet function call, unary or ternary operator in SSBO access chain,
we should transfer the process of them to OutputHLSL.
Bug: angleproject:1951
Change-Id: I740940ac4eee4c5ed52239f14b1d32b1f9cf9385
Reviewed-on: https://chromium-review.googlesource.com/c/1290470
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
|
|
1d8a783c
|
2018-10-09T13:59:56
|
|
Re-land: "ES31: Add vector and matrix support in SSBO for D3D"
Re-land skips ProgramInterfaceTestES31.GetProgramInterface/ES3_1_D3D11 to pass
the bots. In fact, ProgramInterfaceTestES31.GetProgramInterface/ES3_1_D3D11 is
not a regression. The reverted CL added more SSBO features and triggered the
failure. To enable ProgramInterfaceTestES31.GetProgramInterface/ES3_1_D3D11,
we should support SSBO in render pipeline. This needs to bind SSBO to UAV
registers in link time instead of compile time since output variables also
occupies the UAVs. Let's enable this test when we support SSBO in render
pipeline. Currently, we shouldn't block the SSBO implementation in some common
features.
Bug: angleproject:1951
Change-Id: Ic339e8327e79335e6db1d86bedf0072635976f5f
Reviewed-on: https://chromium-review.googlesource.com/c/1282277
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
|
|
c97e3f66
|
2018-10-12T15:49:06
|
|
Revert "ES31: Add vector and matrix support in SSBO for D3D"
This reverts commit 671809e62e807eb0f890a5d53eee1f8cb5fb825e.
Reason for revert: Regresses angle_end2end_test:
ProgramInterfaceTestES31.GetProgramInterface/ES3_1_D3D11
Warning: compileToBinary(232):
C:\fakepath(36,21-40): error X4509: UAV registers live in the same name space as outputs, so they must be bound to at least u1, manual bind to slot u0 failed
The new test and this CL landed at nearly the same time. This CL breaks the test but it wasn't run on the CQ.
Failure link:
https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Win10%20FYI%20Release%20%28NVIDIA%29/2717
Original change's description:
> ES31: Add vector and matrix support in SSBO for D3D
>
> Bug: angleproject:1951
>
> Change-Id: I19d4218b28770464e4cb38027cce694e2a817b5b
> Reviewed-on: https://chromium-review.googlesource.com/c/1269827
> Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
> Reviewed-by: Geoff Lang <geofflang@chromium.org>
TBR=geofflang@chromium.org,jmadill@chromium.org,cwallez@chromium.org,jiajia.qin@intel.com
Change-Id: I54cda962e1361372f06e9e3bd667fa9c0ecf38dc
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: angleproject:1951
Reviewed-on: https://chromium-review.googlesource.com/c/1278102
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
671809e6
|
2018-10-09T13:59:56
|
|
ES31: Add vector and matrix support in SSBO for D3D
Bug: angleproject:1951
Change-Id: I19d4218b28770464e4cb38027cce694e2a817b5b
Reviewed-on: https://chromium-review.googlesource.com/c/1269827
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
3026f115
|
2018-10-09T12:13:38
|
|
ES31: Collect shader storage blocks info for d3d.
This change collects shader storage blocks info for d3d backend. With this
change, program interface APIs can get correct SSBO information for D3D.
Bug: angleproject:1920
Change-Id: I6e2414494d0e8240bcb1d0ddc3d9a292eb7158ee
Reviewed-on: https://chromium-review.googlesource.com/c/1269824
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
|
|
a602f906
|
2018-09-11T14:40:24
|
|
ES31: Support shader storage buffer in D3D-API side.
Bug: angleproject:1951
Test: angle_end2end_tests
Change-Id: I0d8a4f8cf00fc7fd2d85315138e2b7457fd0b90c
Reviewed-on: https://chromium-review.googlesource.com/1242846
Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
d2cb7cec
|
2018-03-02T09:04:03
|
|
ES31: Fix wrong method of computing combined interface blocks
This patch fixes a bug in the method of validating the number of
combined interface blocks in currenct ANGLE implementation.
When a resource (uniform block, shader storage block, image, atomic
counter buffer, atomic counter) is used by multiple shader stages,
each such use counts separately against the combined resource limit.
This patch also fixes an unexpected link error in a related test by
skipping the test when the number of ssbos exceeds the resouorce
limit.
BUG=angleproject:1951
TEST=angle_end2end_tests
Change-Id: I0de439a412148e0d5ebef3c27d20e0cbd536175a
Reviewed-on: https://chromium-review.googlesource.com/945143
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jiajia Qin <jiajia.qin@intel.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
8efd1268
|
2017-12-19T09:32:55
|
|
ES31: Add max combined interface blocks validation
BUG=angleproject:1951
Change-Id: I9223964fa84cee3888fb7f5949c3e098fe2aa2b0
Reviewed-on: https://chromium-review.googlesource.com/890818
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
a08d410d
|
2018-01-11T13:37:14
|
|
Fixed ssbo end2end tests failure
The array stride is implementation-dependent if the storage layout is
not standard layout. So this change will use std140 as the layout to
fix the bug.
BUG=767240,angleproject:2255
Change-Id: I21de52ebad6d27783eeade63d6fac81c0842085d
Reviewed-on: https://chromium-review.googlesource.com/861313
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
10a4d434
|
2017-11-28T14:46:26
|
|
ES31: Enable some dirty bits and dirty objects for compute pipeline
BUG=angleproject:2265
TEST=dEQP-GLES31.functional.shaders.builtin_var.compute.*
angle_end2end_test.ShaderStorageBufferTest31
.MultiStorageBuffersForMultiPrograms
Change-Id: Icc3df122602951a2328003c10a76696ab4c9f0d8
Reviewed-on: https://chromium-review.googlesource.com/792951
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
78413499
|
2017-11-16T17:36:13
|
|
Skip ShaderStorageBufferTest31.AtomicMemoryFunctions on Linux AMD GL
BUG=angleproject:2255
Change-Id: I986ee0e674d0f3fc2425c922ca92a3f8d86efb8c
Reviewed-on: https://chromium-review.googlesource.com/775816
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
|
|
a3106c58
|
2017-11-03T09:39:39
|
|
ES31: Add atomic memory functions
BUG=angleproject:1442
TEST=angle_unittests, angle_end2end_tests
dEQP-GLES31.functional.compute.shared_var.atomic*
dEQP-GLES31.functional.compute.basic.shared_atomic_op*
dEQP-GLES31.functional.ssbo.atomic.*
Change-Id: I82b54fde3a852d3bd917b1e19680baa1c28fce4d
Reviewed-on: https://chromium-review.googlesource.com/765061
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
a5dc625c
|
2017-09-20T21:08:14
|
|
Suppress two failing angle_end2end_tests.
"Add test for GL_KHR_robust_buffer_access_behavior"
introduced a failure in Windows 10 NVIDIA OpenGL configs.
"ES31: Enable shader storage buffer support for OpenGL backend"
introduced a failure on Linux Intel HD 630 configs.
BUG=angleproject:1463
BUG=angleproject:1951
Change-Id: I791bc729893b7f31093ab1678dc8d01edfbd0a5a
Reviewed-on: https://chromium-review.googlesource.com/676473
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
|
|
729b2c6e
|
2017-08-14T09:36:11
|
|
ES31: Enable shader storage buffer support for OpenGL backend
BUG=angleproject:1951
TEST=angle_end2end_tests:ShaderStorageBuffer
Change-Id: I1afc3cd005ad2e595c6ce937fc53e17423f8ec8b
Reviewed-on: https://chromium-review.googlesource.com/618132
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|