Mike Blumenkrantz
9c73312248
zink: set src access when rebinding buffers, unset unordered_*
...
this ensures that the buffer is marked active and prevents promotion
in cases where reordering would break rendering
unordered_read prohibits write reordering for buffers, so setting
this flag must be done when the buffer is actually used, ideally as
late as possible
setting it at the time of (re)bind catches all the buffer rebind cases
which might otherwise erroneously permit reordering
fixes #8381
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22205 >
2023-03-30 17:54:11 +00:00
Danylo Piliaiev
2cc9364c20
tu/drm: Support cached non-coherent memory
...
Requires some hand rolled assembly:
- DC CVAC / DC CIVAC for aarch64
- DCCMVAC / DCCIMVAC for arm32, unfortunately it seems that it is
illegal to call them from userspace.
- clflush for x86-64
We handle x86-64 case because Turnip may run in x86-64 guest
e.g. in FEX-Emu or Box64.
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20550 >
2023-03-30 15:50:47 +00:00
Danylo Piliaiev
5a59410962
turnip: add cached and cached-coherent memory types
...
vkd3d requires cached memory type.
MSM backend doesn't have a special ioctl for memory
flushing/invalidation, we'd have to use cvac and civac
arm assembly instructions (would be done in following commit).
KGSL has an the ioctl for this, which is used in this commit.
Note, CTS tests doesn't seem good at testing flushing and
invalidating, the ones I found passed on KGSL with both
functions being no-op.
Based on the old patch from Jonathan Marek.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7636
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20550 >
2023-03-30 15:50:47 +00:00
Erik Faye-Lund
bd816084c6
zink: enable spir-v 1.6 for vulkan 1.3
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18274 >
2023-03-30 14:06:54 +00:00
Erik Faye-Lund
99bd1eaf3d
zink: use spir-v 1.6 local-size when needed
...
The WorkgroupSize built-in is deprecated in SPIR-V 1.6, so let's switch
to using LocalSizeId instead, like the spec recommends.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18274 >
2023-03-30 14:06:54 +00:00
Erik Faye-Lund
da895596da
zink: use demote from spir-v 1.6 when possible
...
With SPIR-V 1.6, we don't need to enable the extension for demote any
more.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18274 >
2023-03-30 14:06:54 +00:00
Erik Faye-Lund
636bfc6358
zink: emit terminate for spir-v 1.6
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18274 >
2023-03-30 14:06:54 +00:00
Mike Blumenkrantz
67462ed014
zink: add spirv builder function for terminate
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18274 >
2023-03-30 14:06:54 +00:00
Mike Blumenkrantz
db1371cce1
llvmpipe: fix handling of unused color attachments
...
if an attachment doesn't have blending or color output from the shader,
nothing should touch the attachment
this is consistent with vulkan spec and needed for upcoming cts coverage
cc: mesa-stable
Reviewed-by: Roland Scheidegger <sroland@vmware.com >
Reviewed-by: Brian Paul <brianp@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22135 >
2023-03-30 12:04:22 +00:00
Mike Blumenkrantz
6a5dcd2776
llvmpipe: fix linear fs analysis with nonzero fs outputs
...
linear fs only works with output 0
cc: mesa-stable
Reviewed-by: Roland Scheidegger <sroland@vmware.com >
Reviewed-by: Brian Paul <brianp@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22135 >
2023-03-30 12:04:22 +00:00
Samuel Pitoiset
15f1d5cc8f
radv: copy ia_multi_vgt_param to the cmdbuf state
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22194 >
2023-03-30 11:43:06 +00:00
Samuel Pitoiset
0daffade14
radv: copy uses_{drawid,baseinstance} to the cmdbuf state
...
As well as the vertex user sgpr info. This also needs to be copied
for merged shaders (ie. VS+TCS).
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22194 >
2023-03-30 11:43:06 +00:00
Samuel Pitoiset
8fd915098d
radv: copy rast_prim to the cmdbuf state
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22194 >
2023-03-30 11:43:06 +00:00
Samuel Pitoiset
6ee8d33ef4
radv: add a helper that returns the current rasterized primitive
...
For tess/geom/mesh the rasterized primitive is part of the shader
info and primitive topology should be ignored.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22194 >
2023-03-30 11:43:06 +00:00
Samuel Pitoiset
b0a007583d
radv: copy custom blend mode to the cmdbuf state
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22194 >
2023-03-30 11:43:06 +00:00
Samuel Pitoiset
bc39fa9500
radv: rework emitting inner coverage when a fragment shader is bound
...
To stop relying on the pipeline. The state is now flagged when a new
fragment shader with a different inner coverage setting is bound.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22194 >
2023-03-30 11:43:06 +00:00
Samuel Pitoiset
5231643900
radv: remove radv_graphics_pipeline::vb_desc_alloc_size
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22192 >
2023-03-30 11:21:19 +00:00
Samuel Pitoiset
b2ac40e734
radv: remove radv_graphics_pipeline::vb_desc_usage_mask
...
Use the VS shader info instead.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22192 >
2023-03-30 11:21:19 +00:00
Samuel Pitoiset
2b1a0c0a29
radv: adjust vb_desc_usage_mask for dynamic VS inputs in the info pass
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22192 >
2023-03-30 11:21:19 +00:00
Samuel Pitoiset
d87c813da1
aco: remove unused aco_shader_info::vb_desc_usage_mask
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22192 >
2023-03-30 11:21:19 +00:00
Samuel Pitoiset
c7784f1409
radv: remove radv_graphics_pipeline::can_use_simple_input
...
Use the VS shader info instead.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22192 >
2023-03-30 11:21:19 +00:00
Samuel Pitoiset
53b2b30d0b
radv: remove radv_graphics_pipeline::next_vertex_stage
...
Use the active stages bitfield instead.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22192 >
2023-03-30 11:21:18 +00:00
Samuel Pitoiset
f224e9f1a5
radv: remove radv_graphics_pipeline::last_vertex_attrib_bit
...
Use the VS shader info instead.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22192 >
2023-03-30 11:21:18 +00:00
Samuel Pitoiset
99bca4cb50
radv: remove radv_graphics_pipeline::use_per_attribute_vb_descs
...
Use the VS shader info instead.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22192 >
2023-03-30 11:21:18 +00:00
Patrick Lerda
5d85966805
intel: fix memory leak related to brw_nir_create_passthrough_tcs()
...
Indeed, the parameter "mem_ctx" was not processed.
For instance, this issue is triggered with the crocus driver and
"piglit/bin/shader_runner tests/spec/arb_tessellation_shader/execution/compatibility/tes-clip-vertex-different-from-position.shader_test -auto -fbo":
SUMMARY: AddressSanitizer: 235216 byte(s) leaked in 48 allocation(s).
Fixes: 96ba0344db
("intel: Use common helpers for TCS passthrough shaders")
Signed-off-by: Patrick Lerda <patrick9876@free.fr >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22173 >
2023-03-30 10:52:07 +00:00
Pierre-Eric Pelloux-Prayer
9c90deefb2
radeonsi: don't use alignment_log2 of imported buffers
...
This value isn't passed to the importer by the kernel
so we can't check it.
Fixes: f7a4051b83
("radeonsi: Check pitch and offset for validity.")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8431
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22170 >
2023-03-30 10:14:31 +00:00
Erik Faye-Lund
ba6336ce3e
docs: use version-number as toctree-title for relnotes
...
Using the full titles makes most of these take up two lines in the
toctree. The version number is really the only thing we should care
about, though.
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21956 >
2023-03-30 10:09:01 +00:00
Erik Faye-Lund
b09e1ecef0
docs: move old relnotes to _extra directory
...
These aren't built, so they won't get copied out into the public folder
unless we put is inside the _extra folder.
This has been broken all since the conversion to Sphinx, whoops!
Reviewed-by: Eric Engestrom <eric@igalia.com >
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21956 >
2023-03-30 10:09:01 +00:00
Lina Versace
655150918b
venus: Enable VK_EXT_memory_budget
...
Tested dEQP-VK.info.device_memory_budget on Intel with vtest. When the
test is ran at approximately the same time on the native driver and on
vtest, the qpa result files each report approximately the same memory
budget.
Signed-off-by: Lina Versace <linyaa@google.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22099 >
2023-03-30 09:55:40 +00:00
Lina Versace
85007a5caf
venus: Refactor vn_physical_device_init_memory_properties
...
Improve readability.
Signed-off-by: Lina Versace <linyaa@google.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22099 >
2023-03-30 09:55:40 +00:00
Lina Versace
436a0d2609
venus: Delete vn_renderer_info::has_cache_management
...
It has been false since commit 247232d596
, when Venus was merged
upstream in April 2021.
Signed-off-by: Lina Versace <linyaa@google.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22099 >
2023-03-30 09:55:39 +00:00
Lina Versace
e58352930e
venus: Update protocol for VK_EXT_memory_budget
...
Signed-off-by: Lina Versace <linyaa@google.com >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Ryan Neph <ryanneph@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22099 >
2023-03-30 09:55:39 +00:00
Karol Herbst
72b7e20bf7
nvc0: enable fp helper invocation memory loads on Turing+
...
Starting with GSP this will be the only way of doing so, for older gens
we'll just fix it up on the kernel side.
Cc: mesa-stable
Acked-by: M Henning <drawoc@darkrefraction.com >
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21989 >
2023-03-30 09:40:22 +00:00
Samuel Pitoiset
d147cf5a56
radv: use serialized NIR for graphics libs with the RETAIN flag
...
Cloning NIR shaders consumes too much RAM and this can easily explode
in memory for games that create a ton of graphics libraries. Using
serialized NIR shaders help considerably.
This reduces RAM usage in dota2 with GPL from 3GiB to 400MiB.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22143 >
2023-03-30 09:02:20 +00:00
Eric Engestrom
5e413f4919
ci/broadcom: slightly increase coverage of vk tests
...
The previous commit has freed up a couple of runners, so let's repurpose
them to make vk test jobs take less time; with that spare time, let's
increase the coverage a little bit.
Most jobs now take 10-12 minutes, just like they used to.
Stress-tested over 40+ runs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21902 >
2023-03-30 08:21:23 +00:00
Eric Engestrom
a96e51382c
ci/broadcom: consolidate v3d-rpi4* jobs into a single v3d-rpi4-gl:armhf
...
Using now 12 instead of 14 runners, most jobs take 11-13 minutes, which
is about the same as when they were all running separately (10-13 min).
Stress-tested over 8 runs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21902 >
2023-03-30 08:21:23 +00:00
Eric Engestrom
8e09be4616
ci/broadcom: consolidate vc4-rpi3* jobs into a single vc4-rpi3-gl:armhf
...
Without reducing the coverage and using 4 runners instead of 9, most
runs take 10-13 minutes instead of 12-13 minutes for the egl job, 9-11
minutes for the piglit job, and 6-8 minutes for the deqp job.
Stress-tested over 40+ runs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21902 >
2023-03-30 08:21:23 +00:00
Rob Clark
f277d3c651
Revert "CI: Disable freedreno"
...
This reverts commit 6a16ed8d79
.
The proxy has been rebooted
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22168 >
2023-03-30 06:44:53 +00:00
Timur Kristóf
c0692dbfab
radv: Move I/O lowering functions into a new file.
...
Also ran clang-format on the affected code.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21971 >
2023-03-30 05:59:13 +00:00
Timur Kristóf
93e4382438
radv, ac/nir: Move sin/cos lowering to a common pass.
...
Also ran clang-format on the affected code.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21971 >
2023-03-30 05:59:13 +00:00
Timur Kristóf
90bf9ed759
radv: Move radv_nir_export_multiview to new file.
...
Also ran clang-format on the affected code.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21971 >
2023-03-30 05:59:13 +00:00
Timur Kristóf
685dcecb57
radv: Move radv_nir_lower_viewport_to_zero to new file.
...
Also ran clang-format on the affected code.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21971 >
2023-03-30 05:59:13 +00:00
Timur Kristóf
67de4b54fe
radv: Move radv_nir_lower_view_index to new file.
...
Also ran clang-format on the affected code.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21971 >
2023-03-30 05:59:13 +00:00
Timur Kristóf
1e2a5858f4
radv: Move radv_nir_lower_intrinsics_early to new file.
...
Also ran clang-format on the affected code.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21971 >
2023-03-30 05:59:13 +00:00
Timur Kristóf
87e7dfb5f8
radv: Move radv_nir_lower_fs_intrinsics to new file.
...
Also ran clang-format on the affected code.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21971 >
2023-03-30 05:59:12 +00:00
Timur Kristóf
838defc5eb
radv: Move radv_nir_lower_primitive_shading_rate to new file.
...
Also ran clang-format on the affected code.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21971 >
2023-03-30 05:59:12 +00:00
Timur Kristóf
1978eaf5b2
radv: Move radv_nir_* to a new folder.
...
Also ran clang-format on the affected code.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21971 >
2023-03-30 05:59:12 +00:00
Mike Blumenkrantz
dd8d52cabc
kopper: apply ancillary invalidation through glthread on swapbuffers
...
this fixes invalidations with tc's renderpass parsing so they get picked
up before the renderpass ends
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21910 >
2023-03-30 05:06:47 +00:00
Mike Blumenkrantz
bd74da9d2a
glthread: add _mesa_glthread_invalidate_zsbuf()
...
this allows frontends to trigger ancillary invalidation before syncing
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21910 >
2023-03-30 05:06:47 +00:00
Mike Blumenkrantz
0c7994bb2d
mapi: add InternalInvalidateFramebufferAncillaryMESA
...
this allows glthread to handle ancillary buffer invalidation
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21910 >
2023-03-30 05:06:47 +00:00