Yiwei Zhang
84a0056033
venus: zero out the pipeline handles
...
We only have to zero out the handles on failure, which is missed. For
pipelines, we can just do it at the beginning for simplicity.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chad Versace <chadversary@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18555 >
2022-09-12 22:10:45 +00:00
Yiwei Zhang
d8809b5edc
venus: vn_ResetDescriptorPool to reset mutable type states
...
Fixes: de5879447b ("Track bitset when create descriptor pool")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chad Versace <chadversary@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18555 >
2022-09-12 22:10:45 +00:00
Yiwei Zhang
a49f3069f4
venus: fix an oob in descriptor pool state restoration
...
Fixes: de5879447b ("Track bitset when create descriptor pool")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Chad Versace <chadversary@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18555 >
2022-09-12 22:10:45 +00:00
Adam Jackson
4d8420dcb4
Revert "glx: Use XSaveContext, delete glxhash.c"
...
This reverts commit 057c58b39b .
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7242
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18556 >
2022-09-12 21:18:15 +00:00
Pavel Ondračka
e90cafa435
r300: add special path for merging movs with the same source
...
This is quite rare but still helps few tesseract shaders and
is quite straightforward.
shader-db with RV530:
total instructions in shared programs: 135671 -> 135646 (-0.02%)
instructions in affected programs: 322 -> 297 (-7.76%)
helped: 13
HURT: 0
Reviewed-by: Filip Gawin <filip@gawin.net >
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18288 >
2022-09-12 20:29:33 +00:00
Pavel Ondračka
9156a7aab5
r300: merge together MOV and MAD instructions
...
Assuming they write different channels of the same destination
and they share at least one source or one of the sources is
RC_FILE_NONE.
shader-db with RV530:
total instructions in shared programs: 136033 -> 135673 (-0.26%)
instructions in affected programs: 22987 -> 22627 (-1.57%)
total temps in shared programs: 18977 -> 18965 (-0.06%)
temps in affected programs: 74 -> 62 (-16.22%)
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6188
Reviewed-by: Filip Gawin <filip@gawin.net >
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18288 >
2022-09-12 20:29:33 +00:00
Pavel Ondračka
708b2b611a
r300: run copy propagate once more after merging channels
...
The previous pass can actually create some new movs that are eligible
for copy propagation. There is some minor inctruction and temps
improvement but the biggest win is a gained gnome-shell shader.
Nine more still fail with too many instructions though.
GAINED: shaders/gnome-shell-42/6-1.shader_test FS
shader-db with RV530:
total instructions in shared programs: 136382 -> 135538 (-0.62%)
instructions in affected programs: 31021 -> 30177 (-2.72%)
total temps in shared programs: 18939 -> 18937 (-0.01%)
temps in affected programs: 563 -> 561 (-0.36%)
Reviewed-by: Filip Gawin <filip@gawin.net >
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18288 >
2022-09-12 20:29:33 +00:00
Tapani Pälli
40c2e0a317
intel/compiler: fix assert from ver to verx10
...
Fixes: 027b8b4249 ("intel/compiler: Add helper for barrier message payload setup for gfx >= 125")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18546 >
2022-09-12 19:03:17 +00:00
Jordan Justen
af8ab4a889
intel/compiler: Use builder to allocate fs regs for gs control data bits
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18537 >
2022-09-12 10:00:28 -07:00
Caio Oliveira
00b8f9a3a6
intel/compiler: Use builder to allocate fs regs for TCS store output
...
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18537 >
2022-09-12 10:00:18 -07:00
James Zhu
fe8e18c782
amd/common: some ASICs with gfx9 use compute rings for render
...
Some ASICs with gfx9 use compute rings for render.
Fixes: 983223de5d - ac/gpu_info: use the kernel-reported
GFX IP version to set gfx_level
-v2: update merge requests num
Signed-off-by: James Zhu <James.Zhu@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18553 >
2022-09-12 16:24:37 +00:00
Illia Polishchuk
1d15dc04b5
mesa: skip extra state updates for clear calls
...
The glClear call updates draw state in the same way as other draw calls
with _mesa_update_state func
If currently used shader uses textures, _mesa_update_state will try to
update the shader texture state
But if the texture not set yet, before glClear call, it will detect
incompleted texture and will create dummy texture with default values
(see the update_single_program_texture func).
And this will be complete waste of time for glClear
Closes : #7128
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18459 >
2022-09-12 15:22:51 +00:00
Alyssa Rosenzweig
0971868b8b
pan/decode: Fix job cycle detection
...
We need to look at the job header pointers themselves, not the memory objects
that contain them, because there can be (and usually is) multiple jobs per BO.
Fixes: 3da8c9193c ("panfrost: Handle Job VA cycles when decoding a dump file")
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18539 >
2022-09-12 15:12:15 +00:00
Iago Toral Quiroga
e2010e000b
v3dv: expose VK_EXT_primitive_topology_list_restart
...
The hw supports restarts of list primmitives and we pass
all the relevant CTS tests.
We don't advertise patch list restarts because we don't support
tessellation shaders yet.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18544 >
2022-09-12 12:45:10 +00:00
Oleksii Bozhenko
f350b78b73
anv: Allow aliasing with modifiers for WSI images
...
Ignore ALIAS_BIT when format comes from WSI because
we have the ability to bind the MEMORY_BINDING_PRIVATE
from the other WSI image.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7019
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18347 >
2022-09-12 10:44:38 +00:00
Oleksii Bozhenko
949edb7ffa
vulkan/wsi: Pass wsi_image_create_info into anv_GetPhysicalDeviceImageFormatProperties2
...
Signed-off-by: Oleksii Bozhenko <oleksii.bozhenko@globallogic.com >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18347 >
2022-09-12 10:44:38 +00:00
Karmjit Mahil
54876512a1
pvr: Add mid fragment pipeline barrier if needed.
...
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124 >
2022-09-12 10:32:20 +01:00
Karmjit Mahil
4aedd2daa5
pvr: Implement clear ppp state emission from template.
...
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124 >
2022-09-12 10:32:20 +01:00
Karmjit Mahil
7f39dbffd5
Revert "pvr: Make pvr_cmd_pack() macro clearly internal"
...
This reverts commit 27c57b8650 .
The driver doesn't always pack or emit words directly. In some
cases it might be desirable to store the struct equivalent for the
control word and emit/pack at a later stage. Thus reverting to
expose pvr_cmd_pack().
One such use case is in the following commit.
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124 >
2022-09-12 10:32:20 +01:00
Karmjit Mahil
d8f41f8d55
pvr: Add graphics pipeline barrier handling.
...
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124 >
2022-09-12 10:32:19 +01:00
Karmjit Mahil
e91a823d15
pvr: Add static clear VDM state in pvr_device.
...
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124 >
2022-09-12 10:32:19 +01:00
Karmjit Mahil
bd02e21885
pvr: Add static clear control stream templates in pvr_device.
...
The templates will be used to flush fragment work at the
pipeline barrier. They will also be used in
vkCmdClearAttachments().
"pds_state" is a pointer to an array. This is done to prevent a
memcpy() patching the PDS state. Whenever the template requires
PDS state we will always be patching it so let's just pass a
pointer instead. Using a pointer here also allows to check (with a
NULL check) whether the pds state in the template was configured
prior to emitting.
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124 >
2022-09-12 10:32:19 +01:00
Karmjit Mahil
4eb0991a6f
pvr: Add clear program in pvr_device.
...
It gets used to flush fragment work for a graphics pipeline
barrier.
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com >
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124 >
2022-09-12 10:32:19 +01:00
Roman Stratiienko
62ef714ce4
Android: Use libgbm_mesa name for SDK30+
...
libgbm.so name has been occupied in AOSP by minigbm starting from
Android-11 (SDKv30).
In AOSP's mesa3d fork, libgbm was renamed to libgbm_mesa.
Signed-off-by: Roman Stratiienko <r.stratiienko@gmail.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18533 >
2022-09-12 07:37:27 +00:00
Samuel Pitoiset
28af93ace7
radv: fix pipelineStageCreationFeedbackCount when it's 0
...
From the Vulkan spec 1.3.227:
"If pipelineStageCreationFeedbackCount is not 0,
pPipelineStageCreationFeedbacks must be a valid pointer to an
array of pipelineStageCreationFeedbackCount
VkPipelineCreationFeedback structures."
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18513 >
2022-09-12 06:57:59 +00:00
Karol Herbst
767c401dea
rusticl: add README file
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
db34a7ca30
ci: rusticl with llvmpipe
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
10c379bdd4
rusticl/program: some more API validation
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
7a5817bf8c
rusticl: call glsl_type_singleton_init_or_ref
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
6d8d30660a
rusticl: proper PIPE_MAP flags for internal maps
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
9a56920398
rusticl/kernel: use real references for arguments
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
88613b9e4d
rusticl/icd: add some way of debugging CL function calls
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
8f957fe355
rusticl/icd: implement clGetExtensionFunctionAddressForPlatform
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
cad2b6c4bc
rusticl/device: report mesas version for CL_DRIVER_VERSION
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
a438533181
rusticl/kernel: fix local buffers
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
98188391a2
rusticl/program: parse quoted paths in args
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
82b477751e
rusticl/device: allow overwriting the device_type via env
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
90f0f91ce2
rusticl: disable fp64 support
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
f2ce79f8af
rusticl/memory: kernel read_write images prep work
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
734352ddfb
rusticl/program: some boilerplate code for SPIR-V support
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
1b00d4f22e
rusticl/kernel: implement CL_KERNEL_ATTRIBUTES
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
87bacf58ec
rusticl: the CTS is a piece of shit
...
seriously, this fixes some image test, becaues ... rounding modes on CPU
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
149602374c
rusticl/kernel: optimize local size
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
e867ae6bcc
rusticl: fix compiler features_macro
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
79b3c820cc
rusticl/kernel: cache the nir as well
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
ea7d5c1d4b
rusticl/kernel: prepare for nir caching
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
0da5e8704b
rusticl: kernel caching
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
7f80350d55
rusticl: port to Rust 2018
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
af4c897e32
rusticl/mem: only write pitch when required
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00
Karol Herbst
de292ee3b8
rusticl/mem: fix IMAGE1D_BUFFER
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439 >
2022-09-12 05:58:13 +00:00