Renato Pereyra
de0d237ab0
intel/perf: Move sysmacros.h include from header to implementation
...
sysmacros.h defines macros `minor()` and `major()`. These macros conflict
with a definition of `minor()` in the Perfetto SDK header. Move the
sysmacros.h include to intel_perf.c because the Perfetto header is only
included at the same time as intel_perf.h not *.c (in intel_driver_ds.cc).
Unbeknown to anyone, the definition of `minor()` in the Perfetto header is
being replaced with the macro. See the MR attachment for an example.
Signed-off-by: Renato Pereyra <renatopereyra@chromium.org >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29974 >
2024-07-01 22:02:49 +00:00
Paulo Zanoni
4aa3b2d3ad
anv: LNL+ doesn't need the special flush for sparse
...
Newer hardware is smart enough to know that if something writes to a
NULL tile and immediately reads back the value (from the cache), the
value should read back as zero, not whatever was written to the cache
but not the memory. Due to that, we don't need to flush the tile
cache, which is quite expensive.
Link: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11029
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29953 >
2024-07-01 21:28:26 +00:00
Mike Blumenkrantz
0b864388fd
egl: only enable MESA_image_dma_buf_export with PIPE_CAP_DMABUF
...
very minor nitpick but technically more correct
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29939 >
2024-07-01 19:32:23 +00:00
Mike Blumenkrantz
739694403d
egl: deduplicate MESA_image_dma_buf_export enablement
...
no functional changes
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29939 >
2024-07-01 19:32:23 +00:00
Sagar Ghuge
99ce8b5a07
intel/compiler: Add indirect mov lowering pass
...
Indirect addressing(vx1 and vxh) not supported with UB/B datatype for
src0, so we need to change the data type for both dest and src0.
This fixes following tests cases on Xe2+
- dEQP-VK.spirv_assembly.instruction.compute.8bit_storage.push_constant_8_to_16*
- dEQP-VK.spirv_assembly.instruction.compute.8bit_storage.push_constant_8_to_32*
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com >
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29316 >
2024-07-01 19:06:31 +00:00
Kenneth Graunke
1e69ec3b8d
intel/brw: Add a lower_csel pass and allow building it for all types
...
We can do CSEL on F, HF, *W, and *D on Gfx11+. Gfx9 can only do F.
We can lower unsupported types to CMP+CSEL, allowing us to use CSEL
in the IR and not worry about the limitations.
Rework: (Sagar)
- Update validation pass for CSEL
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29316 >
2024-07-01 19:06:31 +00:00
Mike Blumenkrantz
cb7b1a8d23
zink: remove adreno from broken_cache_semantics driver workaround
...
the proprietary driver was never affected by this, and turnip should
no longer be affected after some recent MRs
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29174 >
2024-07-01 18:37:46 +00:00
Dylan Baker
dc604f340a
anv/grl: add some validation that we're not going to overflow
...
Coverity has spotted a place where we could in theory overflow. In
reality it wont happen as the potential overflow is a bitfield with a
maximum of two values. Add an `assume()` statement to help out the
compiler and document our assumption.
fixes: dc1aedef2b
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29825 >
2024-07-01 18:11:38 +00:00
Rhys Perry
1643c933ef
aco/gfx11: don't use v_bfrev_b32 with wave64
...
v_mov_b32 can be dual issued.
fossil-db (navi31):
Totals from 1792 (2.26% of 79395) affected shaders:
CodeSize: 27462476 -> 27470308 (+0.03%); split: -0.00%, +0.03%
Latency: 29403214 -> 29402713 (-0.00%); split: -0.00%, +0.00%
InvThroughput: 5005863 -> 5004702 (-0.02%); split: -0.02%, +0.00%
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29912 >
2024-07-01 17:34:22 +00:00
Rhys Perry
52e9370c13
aco: replace constant v_bfrev_b32 with v_mov_b32 to create vopd
...
fossil-db (navi31, wave32):
Totals from 1523 (1.92% of 79395) affected shaders:
Instrs: 1502625 -> 1501998 (-0.04%); split: -0.05%, +0.01%
CodeSize: 8980508 -> 8983032 (+0.03%); split: -0.00%, +0.03%
Latency: 8405687 -> 8405375 (-0.00%); split: -0.01%, +0.01%
InvThroughput: 1567484 -> 1566728 (-0.05%); split: -0.05%, +0.00%
VALU: 732709 -> 732058 (-0.09%); split: -0.09%, +0.00%
VOPD: 158191 -> 158842 (+0.41%); split: +0.41%, -0.00%
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29912 >
2024-07-01 17:34:22 +00:00
Rhys Perry
17758f0a02
aco: fix wmma raw hazard
...
No fossil-db changes.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29912 >
2024-07-01 17:34:22 +00:00
Rhys Perry
a6eb5c9caa
aco: use alignment information in visit_load_constant()
...
The intrinsic has this now.
No fossil-db changes.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29912 >
2024-07-01 17:34:22 +00:00
Rhys Perry
7c995df9aa
aco: fix follow_operand with combined label_extract and label_split
...
No fossil-db changes.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29912 >
2024-07-01 17:34:22 +00:00
Rhys Perry
9ee24db882
aco: add missing isConstant()/isTemp() checks
...
No fossil-db changes.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29912 >
2024-07-01 17:34:22 +00:00
Rhys Perry
5e1d3f571d
aco: turn split(vec()) into p_parallelcopy instead of p_create_vector
...
No fossil-db changes.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29912 >
2024-07-01 17:34:22 +00:00
Rhys Perry
f842bd81ca
aco: use s_pack_*_b32_b16 more in p_insert/p_extract lowering
...
This opcode doesn't write SCC, which gives later passes more freedom to
move instructions.
fossil-db (navi21):
Totals from 727 (0.92% of 79395) affected shaders:
Latency: 14943483 -> 14942704 (-0.01%); split: -0.01%, +0.00%
InvThroughput: 3225790 -> 3225766 (-0.00%); split: -0.00%, +0.00%
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29912 >
2024-07-01 17:34:22 +00:00
Rhys Perry
ca161a96d1
aco: combine extracts into s_pack_ll_b32_b16
...
fossil-db (navi21):
Totals from 3 (0.00% of 79395) affected shaders:
Instrs: 45941 -> 45924 (-0.04%)
CodeSize: 241768 -> 241756 (-0.00%)
Latency: 176501 -> 176491 (-0.01%)
Copies: 6884 -> 6882 (-0.03%)
SALU: 6101 -> 6088 (-0.21%)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29912 >
2024-07-01 17:34:21 +00:00
Rhys Perry
98cb50297b
aco: use s_pack_ll_b32_b16 for pack_32_2x16_split
...
fossil-db (navi21):
Totals from 3 (0.00% of 79395) affected shaders:
Instrs: 45963 -> 45941 (-0.05%)
CodeSize: 241908 -> 241768 (-0.06%)
Latency: 176508 -> 176501 (-0.00%)
SALU: 6123 -> 6101 (-0.36%)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29912 >
2024-07-01 17:34:21 +00:00
Samuel Pitoiset
6326cc4a5e
radv: use radv_get_user_sgpr() more in DGC
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29980 >
2024-07-01 16:54:09 +00:00
Samuel Pitoiset
598e85b3e9
radv: use the graphics pipeline from the DGC info
...
Doesn't change anything because it's required to bind one graphics
pipeline before using DGC but it's cleaner.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29980 >
2024-07-01 16:54:09 +00:00
Samuel Pitoiset
4c8d44aed0
radv: move radv_CmdPreprocessGeneratedCommandsNV() to radv_cmd_buffer.c
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29980 >
2024-07-01 16:54:09 +00:00
Samuel Pitoiset
e7f6388ac7
radv: use radv_dgc_with_task_shader() more
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29980 >
2024-07-01 16:54:09 +00:00
Samuel Pitoiset
b51b8c54c0
radv: cleanup using vtx_base_sgpr for userdata with DGC
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29980 >
2024-07-01 16:54:09 +00:00
Samuel Pitoiset
c77e26daa5
radv: do not emit compute userdata for empty dispatches
...
Unnecessary.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29980 >
2024-07-01 16:54:09 +00:00
Samuel Pitoiset
3f919c0df6
radv: remove unused parameter to dgc_emit_draw_mesh_tasks_ace()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29980 >
2024-07-01 16:54:09 +00:00
Valentine Burley
c2af4f61a7
tu: Use vk_query_pool
...
Signed-off-by: Valentine Burley <valentine.burley@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29441 >
2024-07-01 16:23:29 +00:00
Valentine Burley
cc432c358a
tu: Use the common versions of vkBegin/EndQuery()
...
Move all the logic into tu_CmdBegin/EndQueryIndexedEXT. CmdBegin/EndQuery in
the common runtime is a wrapper that calls tu_CmdBegin/EndQueryIndexedEXT with
index 0.
Signed-off-by: Valentine Burley <valentine.burley@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29441 >
2024-07-01 16:23:29 +00:00
Valentine Burley
45a3c2d197
tu: Rename tu_query.cc/h to tu_query_pool.cc/h
...
Match the structure of the common Vulkan runtime and NVK.
Additionally update a comment to reflect the current state.
Signed-off-by: Valentine Burley <valentine.burley@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29441 >
2024-07-01 16:23:28 +00:00
Valentine Burley
d8ebc632eb
tu: Move buffer view related code to tu_buffer_view.cc/h
...
More code isolation. Match the structure of the common Vulkan runtime,
NVK and RADV.
Signed-off-by: Valentine Burley <valentine.burley@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29441 >
2024-07-01 16:23:28 +00:00
Valentine Burley
09d224685d
tu: Drop tu_buffer_view_init helper function
...
Simplify the code by inlining the logic from tu_buffer_view_init
directly into tu_CreateBufferView.
Signed-off-by: Valentine Burley <valentine.burley@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29441 >
2024-07-01 16:23:28 +00:00
Valentine Burley
c21faf12e7
tu: Use vk_buffer_view
...
Signed-off-by: Valentine Burley <valentine.burley@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29441 >
2024-07-01 16:23:28 +00:00
Michel Dänzer
cbd19e09d1
dri: Go back to hard-coded list of RGBA formats
...
Catching these programmatically without false positives / negatives is
surprisingly tricky, go back to the known-working list for now.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11398
Fixes: ad0edea53a ("st/dri: Check format properties from format helpers")
Fixes: 5ca85d75c0 ("dri: Fix BGR format exclusion")
v2:
* Also put back lima fails removed by 9eeaa4618f ("egl/gbm: Enable
RGBA configs"), as those tests are now failing again.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29979 >
2024-07-01 15:42:58 +00:00
Mike Blumenkrantz
a7f86e38ca
zink: free sparse page for miptail on uncommit
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29818 >
2024-07-01 14:24:57 +00:00
Erik Faye-Lund
0277d0321a
docs/panfrost: quote identifiers
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29902 >
2024-07-01 14:17:26 +00:00
Erik Faye-Lund
577b9efa75
docs/panfrost: use c:func-role for function
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29902 >
2024-07-01 14:17:26 +00:00
Erik Faye-Lund
a5f892b5cb
docs/panfrost: use math-role more
...
This renders cleaner and more consistent with the other math around
here.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29902 >
2024-07-01 14:17:26 +00:00
Erik Faye-Lund
7033623acd
docs/panfrost: fix math-notation
...
less or equal uses \leq, not <= in latex.
Fixes: e0752673be ("docs/panfrost: Move description of instancing")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29902 >
2024-07-01 14:17:26 +00:00
Erik Faye-Lund
41698eee96
docs/panfrost: fix numbered list
...
This got broken when it got moved into the documentation.
Fixes: e0752673be ("docs/panfrost: Move description of instancing")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29902 >
2024-07-01 14:17:26 +00:00
Samuel Pitoiset
484f613a97
radv: use radv_get_user_sgpr_loc() for the GS copy shader too
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29957 >
2024-07-01 13:39:51 +00:00
Samuel Pitoiset
f22ee282fc
radv: add radv_get_user_sgpr{_loc}() helpers
...
To simplify all the user sgpr computations which are very redundant.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29957 >
2024-07-01 13:39:51 +00:00
Samuel Pitoiset
bf852536fc
radv: rename radv_get_user_sgpr() to radv_get_user_sgpr_info()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29957 >
2024-07-01 13:39:51 +00:00
Sergi Blanch Torne
81424e1d50
Revert "ci: disable Collabora's farm due to maintenance"
...
This reverts commit c0138e99e6 .
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29978 >
2024-07-01 12:21:10 +00:00
Juan A. Suarez Romero
f77216e9ac
Revert "ci: disable Igalia farm"
...
This reverts commit f0b0a71a9b .
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29984 >
2024-07-01 11:57:43 +00:00
Eric Engestrom
48a7c212ba
radeonsi/ci: mark test as fixed
...
This was fixed by one of the commits in the range 5cb15a6c...6006588a.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29981 >
2024-07-01 10:01:38 +00:00
Luc Ma
6b5a12611b
meson: Build pipe-loader when build-tests is true
...
Gallium/tests/trivial requires dynamic pipe loader at runtime, that is,
$prefix/$libdir/gallium-pipe/pipe_*.so must get built and installed.
so let's build it if build-tests is enabled.
v2:
- Fix error of meson when both of clover and tests are enabled (dbaker)
Signed-off-by: Luc Ma <luc@sietium.com >
Acked-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Dylan Baker <dylan@pnwbakers.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27180 >
2024-07-01 09:24:49 +00:00
Lionel Landwerlin
884397b587
anv: workaround flaky xfb query results on Gfx11
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Cc: mesa-stable
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29836 >
2024-07-01 09:04:12 +00:00
Juan A. Suarez Romero
feaa5ce1ec
vc4: fix out-of-bounds access to array
...
Detected by by Undefined Behaviour Sanitizer (UBSan), this fixes trying
to access index 5 in `util_format_channel_description`, which is
declared of size 4.
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29911 >
2024-07-01 08:02:07 +00:00
Juan A. Suarez Romero
b827aee3a3
vc4: do not create 0-bytes variable length arrays
...
When declaring an array with variable length, like `nir_variable
*vars[num_entries]`, ensure the length is always greater than 0
This has been detected by Undefined Behaviour Sanitizer (UBSan).
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29911 >
2024-07-01 08:02:07 +00:00
Juan A. Suarez Romero
2a16575dec
vc4: do not pass NULL pointer to function not expecting NULLs
...
memcmp() pointers arguments are declared to be non NULL.
This has been detected by Undefined Behaviour Sanitizer (UBSan).
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29911 >
2024-07-01 08:02:07 +00:00
Juan A. Suarez Romero
eab3ee8d71
vc4: do not access member of a NULL structure
...
Check if the structure is NULL before trying to get access to its
members.
This has been detected by the Undefined Behaviour Sanitizer (UBSan).
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29911 >
2024-07-01 08:02:07 +00:00