Mike Blumenkrantz
b27ec49e02
zink: mark off GL 3.1 as done in features.txt
...
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7109 >
2020-10-16 13:57:56 +00:00
Mike Blumenkrantz
815f0c01b0
zink: bump to glsl 1.40
...
but leaving compat mode at 1.30 for now
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7109 >
2020-10-16 13:57:56 +00:00
Mike Blumenkrantz
8028991f36
zink: enable gs pipe caps
...
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7139 >
2020-10-16 09:15:34 -04:00
Mike Blumenkrantz
4c734da7de
zink: add gallium handling for geometry shaders
...
this is the create/bind/destroy hooks as well as the u_blitter shader
save during blit setup
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7139 >
2020-10-16 09:15:32 -04:00
Mike Blumenkrantz
d59e4b8ce6
zink: round out handling for streamout buffer stride setting during draw
...
this adds cases for tess and geometry shaders in the xfb path for grabbing
stride off the shader
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7139 >
2020-10-16 09:15:30 -04:00
Mike Blumenkrantz
9915c540b2
zink: remove ADJACENCY prim types from primconvert path
...
we can (and do) actually handle these natively
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7139 >
2020-10-16 09:15:28 -04:00
Mike Blumenkrantz
d656c600a3
zink: add handling for gs in ntv
...
this hooks up execution modes and the gs-specific instructions
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7139 >
2020-10-16 09:15:26 -04:00
Mike Blumenkrantz
9671cd9215
zink: re-transform gl_Position for gs input
...
we've transformed this in the vertex output, so we need to undo that here
ideally we'd only be performing this transform once, but that's going to get
complicated later with the halfz extension which requires shader keys on top
of this, so we can get around to simplifying things at that stage
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7139 >
2020-10-16 09:15:24 -04:00
Mike Blumenkrantz
ea2279daf1
zink: add ntv handling for geometry shader variables
...
these can reuse the unified loader codepath
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7139 >
2020-10-16 09:15:22 -04:00
Mike Blumenkrantz
423a342ae7
zink: handle shader io vars more generically for use with gs
...
geometry shaders have more inputs and use a lot of the same codepaths as
vertex shaders, so these changes add the inputs and remove checks for vertex-only
shaders
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7139 >
2020-10-16 09:15:20 -04:00
Mike Blumenkrantz
182f7f9ae8
zink: add some spirv_builder functions we'll be using for geometry shaders
...
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7139 >
2020-10-16 09:15:11 -04:00
Gert Wollny
5934fc1708
r600/sfn: Update state docu
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
9f5e5fb912
r600/sfn: Fix the parameter component type
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
5f661977f8
r600/sfn: Use register keep-alive also when scanning the shader
...
Temporaries don't appear in the mapping, so they are not in the initial
register list.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
9eda7176e3
r600/sfn: fix remapping of deleted attributes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
f79b7fcf7c
r600/sfn: use 32 bit bools
...
That's closer to what the driver actually does.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
92a4d45bee
r600/sfn: use cacheless op for coherent image write
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
02e39b737a
r600/sfn: Handle mem barrier and image barrier by using ACK
...
When reading from and writing to the same image in a shader the
memory_barrier can possibly be handled by emitting an ack-write and then
wait for the ack when the memory barrier is set.
Not sure whow well this goes with the syncronization across all shader
invocations though.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
f664fc1c7b
r600/sfn: use shared pointer to GPR for FS sysvalues
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
876b975bec
r600/sfn: Rework get_temp_register to return a smart pointer to GPRValue
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
92bc0661f5
r600/sfn: fix mega fetch count for SSBO/Image atomics result fetch
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
d79d20d398
r600/sfn: Fix keepalive patch
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
86254134b3
r600/sfn: Fix ssbo resource offset for buffer loads
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Gert Wollny
ed66eafb6d
r600/sfn: Don't reuse registers for workgroup ID and local invocation ID
...
This fixes a number of compute shader tests. I'm not sure why though.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142 >
2020-10-16 12:03:12 +00:00
Vinson Lee
bafb2bb551
glsl: Initialize add_uniform_to_shader member var in constructor.
...
Fix defect reported by Coverity Scan.
Uninitialized pointer field (UNINIT_CTOR)
uninit_member: Non-static class member var is not initialized in
this constructor nor in any functions that it calls.
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7121 >
2020-10-16 00:38:09 +00:00
Mike Blumenkrantz
aea74eac3d
zink: fix stencil wrapping
...
this was using the wrong enums
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7176 >
2020-10-16 00:03:17 +00:00
Vinson Lee
b17e264e66
glsl: Initialize lower_ubo_reference_visitor members in constructor.
...
Fix defects reported by Coverity Scan.
Uninitialized pointer field (UNINIT_CTOR)
uninit_member: Non-static class member buffer_access_type is not
initialized in this constructor nor in any functions that it
calls.
uninit_member: Non-static class member uniform_block is not
initialized in this constructor nor in any functions that it
calls.
uninit_member: Non-static class member progress is not initialized
in this constructor nor in any functions that it calls.
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7120 >
2020-10-15 23:03:12 +00:00
Vinson Lee
e32eadc586
v3dv: Fix assert using assign instead of compare.
...
Fix defect reported by Coverity Scan.
Assign instead of compare (PW.ASSIGN_WHERE_COMPARE_MEANT)
assign_where_compare_meant: use of "=" where "==" may have been intended
Fixes: c75846e674
("v3dv: implement DRM modifier setup for WSI")
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7124 >
2020-10-15 15:55:14 -07:00
Caio Marcelo de Oliveira Filho
e7e24d5039
intel/fs: Handle nir_intrinsic_terminate
...
For terminate operation, jump the invocation without predicating on
the rest of the quad being disabled -- which is what is done for
demote and discard.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7150 >
2020-10-15 21:40:09 +00:00
Caio Marcelo de Oliveira Filho
886d2d1a9a
spirv: Handle SpvOpTerminateInvocation
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7150 >
2020-10-15 21:40:09 +00:00
Caio Marcelo de Oliveira Filho
4dfd292307
spirv: Update headers and metadata from latest Khronos commit
...
This corresponds to c43a43c7cc3af55910b9bec2a71e3e8a622443cf
(" Register the Xenia emulator as a generator (#171 )") in
https://github.com/KhronosGroup/SPIRV-Headers .
Acked-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7150 >
2020-10-15 21:40:09 +00:00
Caio Marcelo de Oliveira Filho
f6d5dd825f
nir: Add nir_intrinsic_terminate and nir_intrinsic_terminate_if
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7150 >
2020-10-15 21:40:09 +00:00
Rhys Perry
fdb65b8b23
aco: add missing SCC clobber in get_buffer_size
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Fixes: fcd6d83245
("aco: fix imageSize()/textureSize() with large buffers on GFX8")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7162 >
2020-10-15 21:11:45 +00:00
Jason Ekstrand
6be2bbec6d
Revert "iris: Use the data cache for indirect UBO pulls"
...
This reverts commit 3b784370c3
.
This fixes a 30% performance regression in Manhattan 3.1 on Icelake.
Fixes: 3b784370c3
"iris: Use the data cache for indirect UBO pulls"
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7173 >
2020-10-15 20:53:05 +00:00
Jason Ekstrand
a5529eb235
anv: Go back to using the sampler for UBO pulls
...
This functionally reverts b54d37a867
.
This fixes a 12% performance regression in DOOM (2016) on Tigerlake.
Fixes: b54d37a867
"anv: Use the data cache for indirect UBO..."
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7173 >
2020-10-15 20:53:05 +00:00
Jose Maria Casanova Crespo
d91cb31a2a
vc4: Enable nir_lower_io for uniforms
...
Altough the driver isn't expected to receive nir_var_uniform types
from GLSL this happens currently for one of the internal driver shaders.
At vc4_get_yuv_fs at vc4_blit.c there is a "stride" nir_var_uniform
variable that needs to be lowered so the shader can be compiled.
This regression was affecting several piglit tests under
spec/ext_image_dma_buf_import and at least MythTV application.
Fixes: 96d99f2ecc
("vc4: Only call nir_lower_io on shader_in/out")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3536
Reviewed-by: Eric Anholt <eric@anholt.net>
Tested-by: Piotr Oniszczuk <piotr.oniszczuk@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7160 >
2020-10-15 22:05:58 +02:00
Jose Maria Casanova Crespo
3e877ca27d
vc4: Add missing range_base/range at nir_load_ubos in yuv_blit fs.
...
Fixes: f3b33a5a35
("nir: Add a range_base+range to nir_intrinsic_load_ubo().")
Reviewed-by: Eric Anholt <eric@anholt.net>
Tested-by: Piotr Oniszczuk <piotr.oniszczuk@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7160 >
2020-10-15 22:05:58 +02:00
Jose Maria Casanova Crespo
4cfdd425b6
vc4: Add missing load_ubo set_align in yuv_blit fs.
...
Fixes: e78a7a1825
("nir: Assert memory loads are aligned")
Reviewed-by: Eric Anholt <eric@anholt.net>
Tested-by: Piotr Oniszczuk <piotr.oniszczuk@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7160 >
2020-10-15 22:05:58 +02:00
Rhys Perry
f91b2fe384
nir/opt_load_store_vectorize: add some tests for discard/demote behaviour
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7163 >
2020-10-15 18:21:44 +00:00
Rhys Perry
f8e971f511
nir/opt_load_store_vectorize: don't vectorize stores across demote
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Fixes: ce9205c03b
("nir: add a load/store vectorization pass")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7163 >
2020-10-15 18:21:44 +00:00
Ian Romanick
19aaafd4a6
intel: Remove Gen10-specific device entries
...
The enables removal of gen_device_info::is_cannonlake.
v2: Remove GEN10_FEATURES and GEN10_HW_INFO macros. Suggested by
Lionel.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6899 >
2020-10-15 09:29:54 -07:00
Ian Romanick
b0e3af4fb8
intel: Remove Gen10-speicific perf support
...
v2: Also update Makefile.sources and Android build files. Noticed by
Lionel.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Suggested-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6899 >
2020-10-15 09:29:54 -07:00
Ian Romanick
fc04733f09
anv: Don't generate Gen10-specific functions
...
v2: Re-wrap lines in meson.build. Suggested by Jason.
v3: Also update Makefile.sources and Android build files. Noticed by
Lionel.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> [v2]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6899 >
2020-10-15 09:29:54 -07:00
Ian Romanick
5490f5cbce
iris: Don't generate Gen10-specific functions
...
v2: Also update Makefile.sources and Android build files. Noticed by
Lionel. Remove more stuff from iris_context.h.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> [v1]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6899 >
2020-10-15 09:29:54 -07:00
Ian Romanick
495dc514ac
intel/isl: Don't generate Gen10-specific functions
...
v2: Also update Makefile.sources and Android build files. Noticed by
Lionel.
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> [v1]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6899 >
2020-10-15 09:29:54 -07:00
Ian Romanick
1f00b0f4ef
intel: Remove Gen10-specific cache config code
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6899 >
2020-10-15 09:29:54 -07:00
Ian Romanick
9c19a3874d
i965: Don't build Gen10-specific files and libraries
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6899 >
2020-10-15 09:29:54 -07:00
Ian Romanick
3220ff70f3
i965: Remove Gen10-specific state setup and workarounds
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6899 >
2020-10-15 09:29:54 -07:00
Ian Romanick
262ca98b3a
intel/compiler: Remove Gen10-specific code
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6899 >
2020-10-15 09:29:53 -07:00
Ian Romanick
e22f106e01
intel: Disable all support for Gen10
...
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6899 >
2020-10-15 09:29:53 -07:00