Caio Oliveira
b89a36fc01
spirv: Add workaround to ignore OpReturn after OpEmitMeshTasksEXT
...
Fixes: 7d1bcf1f55 ("spirv, nir: Handle EmitMeshTasksEXT opcode.")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18442 >
2022-09-23 01:25:48 +00:00
Timur Kristóf
89f1727654
spirv: Treat EmitMeshTasksEXT as a terminating instruction.
...
glslang had a bug and didn't actually emit it as a terminating
instruction, therefore this went unnoticed thus far. See
https://github.com/KhronosGroup/glslang/issues/3020 .
Modified by Caio Oliveira to emit the corresponding NIR intrinsic
right before the halt.
Fixes: 7d1bcf1f55 ("spirv, nir: Handle EmitMeshTasksEXT opcode.")
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18442 >
2022-09-23 01:25:48 +00:00
Caio Oliveira
b9919b9980
spirv: Pass vtn_block into vtn_emit_branch()
...
This will be used later to handle branches instructions that have
parameters in them, e.g. SpvOpEmitMeshTasksEXT. No behavior change in
this commit.
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18442 >
2022-09-23 01:25:48 +00:00
Caio Oliveira
3f4343c7cd
nir/lower_task_shader: Don't fail adding a launch when last instruction is a jump
...
Fixes: 8aff8d3dd4 ("nir: Add common task shader lowering to make the backend's job easier.")
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18442 >
2022-09-23 01:25:48 +00:00
Mihai Preda
15e78caf8d
gallivm: LLVM opaque pointers: use lp_build_array_get_ptr2() in lp_bld_nir_soa.c
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18721 >
2022-09-23 00:44:28 +00:00
Mihai Preda
cdd7e8f5ce
gallivm: LLVM opaque pointers: add lp_build_array_get[_ptr]2 in lp_bld_struct.c
...
i.e. variants taking an explicit LLVM type
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18721 >
2022-09-23 00:44:28 +00:00
Mihai Preda
1d741f4c62
gallivm: LLVM opaque pointer fixes in lp_bld_sample.c
...
load_mip()
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18721 >
2022-09-23 00:44:28 +00:00
Mihai Preda
966a395f02
gallium/draw: fix LLVM opaque pointer warnings in store_aos()
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18720 >
2022-09-23 00:09:47 +00:00
Mihai Preda
cb33367449
gallium/draw: fix LLVM opaque pointer warnings in draw_tcs_llvm_emit_store_output()
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18720 >
2022-09-23 00:09:47 +00:00
Mihai Preda
620c6e14bd
gallium/draw: fix LLVM opaque pointer warnings in draw_tcs_llvm_emit_fetch_output()
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18720 >
2022-09-23 00:09:47 +00:00
Mihai Preda
3e6dd65acb
gallium/draw: fix LLVM opaque pointer warnings in draw_tcs_llvm_emit_fetch_input()
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18720 >
2022-09-23 00:09:47 +00:00
Mihai Preda
a9d37f8bc9
gallium/draw: fix LLVM opaque pointer warnings in draw_gs_llvm_epilogue()
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18720 >
2022-09-23 00:09:47 +00:00
Mihai Preda
6ad8b95f4d
gallium/draw: fix LLVM opaque pointer warnings in draw_gs_llvm_end_primitive()
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18720 >
2022-09-23 00:09:47 +00:00
Mihai Preda
4a6e34ec3d
gallium/draw: fix LLVM opaque pointer warnings in draw_gs_llvm_fetch_input()
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18720 >
2022-09-23 00:09:47 +00:00
Mihai Preda
be03a354b8
gallium/draw: fix LLVM opaque pointer warnings in generate_clipmask()
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18720 >
2022-09-23 00:09:47 +00:00
Mihai Preda
8766e30eda
gallium/draw: fix LLVM opaque pointer warnings in store_clip()
...
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18720 >
2022-09-23 00:09:46 +00:00
Lionel Landwerlin
f9dbb65e7f
anv: add missing wokraround for texture cache invalidate
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18743 >
2022-09-22 23:45:16 +00:00
Connor Abbott
8cb1deded6
ir3/analyze_ubo_ranges: Account for reserved consts
...
We weren't accounting for the reserved consts when calculating how much
we can upload. This led to assertion failures later if we pushed too
much.
Fixes: d3b7681df2 ("tu: ir3: Emit push constants directly")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18757 >
2022-09-22 22:16:22 +00:00
Connor Abbott
750ecb0aa9
tu: Set textures_used for input attachments correctly
...
We were accidentally multiplying by 2 twice. Noticed by inspection.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18757 >
2022-09-22 22:16:22 +00:00
Connor Abbott
f483419c23
tu: Fix maxPerStageDescriptorUpdateAfterBindInputAttachments
...
We need this to be the same as maxPerStageDescriptorInputAttachments.
Fixes: d9fcf5de55 ("turnip: Enable nonuniform descriptor indexing")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18757 >
2022-09-22 22:16:21 +00:00
Sil Vilerino
0fd23e8696
d3d12: Fix texture array DPB encode path
...
Mark D3D12_VIDEO_ENCODER_PICTURE_CONTROL_FLAG_USED_AS_REFERENCE_PICTURE when applicable
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18763 >
2022-09-22 22:03:44 +00:00
Sil Vilerino
8711b53d59
d3d12: Add debug verbosity for output reconstructed picture
...
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18763 >
2022-09-22 22:03:44 +00:00
Sil Vilerino
93e0309b13
d3d12: Fix out of bounds index check for texture array DPB
...
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18763 >
2022-09-22 22:03:44 +00:00
Sil Vilerino
dc523fabef
d3d12: Relax slice caps requirements for video encode
...
The check in d3d12_has_video_encode_support was returning no encode support unless
the driver supported D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_UNIFORM_PARTITIONING_SUBREGIONS_PER_FRAME
when it should also return support when the driver reports only full frame support
(ie. D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_FULL_FRAME)
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18763 >
2022-09-22 22:03:44 +00:00
Mike Blumenkrantz
f8b4d40a1e
zink: delete some descriptor caching cruft
...
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18664 >
2022-09-22 21:38:47 +00:00
Mike Blumenkrantz
b889b48466
zink: delete more sw conditional render handling
...
I forgot to delete this when I deleted the draw path handling
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18664 >
2022-09-22 21:38:47 +00:00
Mike Blumenkrantz
fc52f82c09
zink: remove batch usage from sampler states
...
this was useless
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18664 >
2022-09-22 21:38:47 +00:00
Mike Blumenkrantz
f6bbd7875a
zink: remove batch tracking/usage from view types
...
instead of incurring all the overhead of tracking lifetimes for these,
it makes more sense to just let them delete whenever and then store
the vk object onto its parent image/buffer to be deleted when that gets
freed, as the parent object's lifetime will always be >= the view's lifetime
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18664 >
2022-09-22 21:38:47 +00:00
Mike Blumenkrantz
9f9dd4f2ac
zink: split out bind_sampler_states hook for drivers without EXT_non_seamless_cube_map
...
this incurs some overhead and is seldom used, so avoid having it in the codepath
at all if it won't be used
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18664 >
2022-09-22 21:38:47 +00:00
Mike Blumenkrantz
7172fb56d9
zink bump batch state limit a bit
...
this should yield better throughput
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18664 >
2022-09-22 21:38:47 +00:00
Mike Blumenkrantz
83c76b8efb
zink: rework batch tracking for resources
...
this uses a revised version of radeonsi's buffer list array to track
resources for lifetime/usage management, massively improving performance
by avoiding hash table lookups
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18664 >
2022-09-22 21:38:47 +00:00
Mike Blumenkrantz
1896111d25
zink: defer more semaphore destruction
...
these have noticeable overhead, so handle them in the submit thread
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18664 >
2022-09-22 21:38:47 +00:00
Mike Blumenkrantz
babf9474c4
zink: rework flush_frontbuffer to always flush
...
previously this would no-op unacquired swapchains and then try to
execute a copy from the last-presented swapchain image to the current
image to avoid presenting garbage data
instead, just present garbage like the app requested
fixes #7165
Tested-By: Matti Hamalainen <ccr@tnsp.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18730 >
2022-09-22 21:14:03 +00:00
Mike Blumenkrantz
758c559bc4
zink: check format compatibility up front when creating framebuffer surface
...
this avoids an assert in create_ivci while enforcing correct behavior
cc: mesa-stable
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18446 >
2022-09-22 20:42:04 +00:00
Adam Jackson
4c5dee6c22
egl: Rewrite eglSetBlobCacheFuncsANDROID to use the standard macros
...
As the deleted comment hints, you just need the macro to expand to
return /* void */;
for things to work.
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18713 >
2022-09-22 20:13:58 +00:00
Adam Jackson
eb39198fe2
egl: Factor out the eglTerminate write-lock pattern
...
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18713 >
2022-09-22 20:13:58 +00:00
Adam Jackson
b2ee2de1fb
egl: Untangle some spaghetti around _eglLookupDisplay
...
Only eglapi needs any of this.
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18713 >
2022-09-22 20:13:58 +00:00
Adam Jackson
1f94f28e8c
egl: Promote _eglLock/UnlockDisplay to internal API
...
This reads a bit more cleanly than egl_lock/egl_unlock I think.
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18713 >
2022-09-22 20:13:58 +00:00
Adam Jackson
5e407ec524
egl: Fix a bunch of maybe-uninitialized warnings
...
Fedora's gcc 12 is apparently not smart enough to deduce that these are
always initialized, so set some clear default values.
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18713 >
2022-09-22 20:13:57 +00:00
Yonggang Luo
51af3f30c6
Update 22.2.0.rst
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18726 >
2022-09-22 20:08:20 +00:00
Dylan Baker
7f6ec0f0e3
docs: Add calendar entries for 22.2 release.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18726 >
2022-09-22 20:08:20 +00:00
Dylan Baker
b91cf1df5a
docs: update calendar and link releases notes for 22.2.0
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18726 >
2022-09-22 20:08:20 +00:00
Dylan Baker
149a7f272c
docs: Add sha256 sum for 22.2.0
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18726 >
2022-09-22 20:08:20 +00:00
Dylan Baker
fe61d5cfe1
docs: add release notes for 22.2.0
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18726 >
2022-09-22 20:08:20 +00:00
Yiwei Zhang
373bc6f1d5
venus: ensure to clear VkPipelineCreationFeedback::flags if needed
...
Fixes: d0cb99e96a ("venus: Enable VK_EXT_pipeline_creation_feedback")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18741 >
2022-09-22 19:54:26 +00:00
Emma Anholt
5e39b52e6a
turnip: Fix busy-waiting on syncobjs with OS_TIMEOUT_INFINITE.
...
I noticed that glmark2's glFinish()es in its offscreen rendering tests
under zink were spinning. When we passed -1 as the timeout for
drmSyncobjWait(), the kernel would immediately return ETIME.
Fixes: 0a82a26a18 ("turnip: Porting to common implementation for timeline semaphore")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18739 >
2022-09-22 19:24:00 +00:00
Leo Liu
e2c0eac5bf
frontends/va: fix build error for vaSyncBuffer with older VA
...
return VA_STATUS_ERROR_TIMEDOUT;
| ^~~~~~~~~~~~~~~~~~~~~~~~
| VA_STATUS_ERROR_UNKNOWN
../src/gallium/frontends/va/buffer.c:434:14: note: each undeclared identifier is reported only once for each function it appears in
../src/gallium/frontends/va/buffer.c:436:22: error: ‘VA_TIMEOUT_INFINITE’ undeclared (first use in this function); did you mean ‘PIPE_TIMEOUT_INFINITE’?
436 | if (timeout_ns != VA_TIMEOUT_INFINITE)
| ^~~~~~~~~~~~~~~~~~~
| PIPE_TIMEOUT_INFINITE
Fixes: 229c6f79a ("frontends/va: Implement vaSyncBuffer")
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18760 >
2022-09-22 19:13:31 +00:00
Rob Clark
8300554ba1
freedreno: Handle xfb invalidation
...
So using the same buffer for CPU writes and GPU writes might be kinda
unusual. But I noticed we were missing handling for the case while
debugging something unrelated.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18732 >
2022-09-22 18:24:42 +00:00
Yonggang Luo
3449b2187e
lavapipe/meson: rename module_dir to icd_lib_path and swap two lines for consistence
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18747 >
2022-09-22 17:54:24 +00:00
Yonggang Luo
c8e14d5d47
dzn: rename module_dir to icd_lib_path for consistence
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18747 >
2022-09-22 17:54:24 +00:00