Samuel Pitoiset
78c7d0093f
radv: add radv_cmd_set_primitive_topology()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:31 +00:00
Samuel Pitoiset
9b3e4bb3f5
radv: add radv_cmd_set_attachment_feedback_loop_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:30 +00:00
Samuel Pitoiset
30744f8b71
radv: add radv_cmd_set_fragment_shading_rate()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:30 +00:00
Samuel Pitoiset
ff1ca8502b
radv: add radv_cmd_set_logic_op_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:29 +00:00
Samuel Pitoiset
bbb3c8a642
radv: add radv_cmd_set_color_write_mask()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:29 +00:00
Samuel Pitoiset
5fd0649c01
radv: add radv_cmd_set_color_write_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:28 +00:00
Samuel Pitoiset
bf0963654f
radv: add radv_cmd_set_logic_op()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:28 +00:00
Samuel Pitoiset
061ae33cf3
radv: add radv_cmd_set_stencil_reference()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:27 +00:00
Samuel Pitoiset
a3e828fe99
radv: add radv_cmd_set_stencil_write_mask()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:27 +00:00
Samuel Pitoiset
97d6b4e398
radv: add radv_cmd_set_stencil_compare_mask()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:26 +00:00
Samuel Pitoiset
08519152d7
radv: add radv_cmd_set_depth_bounds()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:26 +00:00
Samuel Pitoiset
6c79f6ae41
radv: add radv_cmd_set_sample_locations_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:25 +00:00
Samuel Pitoiset
c32facfb3e
radv: add radv_cmd_set_rasterization_samples()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:25 +00:00
Samuel Pitoiset
af2197ea99
radv: add radv_cmd_set_sample_mask()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:25 +00:00
Samuel Pitoiset
77d5074263
radv: add radv_cmd_set_alpha_to_one_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:24 +00:00
Samuel Pitoiset
1de1f7980e
radv: add radv_cmd_set_alpha_to_coverage_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:24 +00:00
Samuel Pitoiset
fe6f97c9dc
radv: add radv_cmd_set_line_rasterization_mode()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:23 +00:00
Samuel Pitoiset
7810422fc7
radv: add radv_cmd_set_depth_clamp_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:23 +00:00
Samuel Pitoiset
072a6d27bc
radv: add radv_cmd_set_provoking_vertex_mode()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:22 +00:00
Samuel Pitoiset
38df84be41
radv: add radv_cmd_set_conservative_rasterization_mode()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:22 +00:00
Samuel Pitoiset
5d3110a4bf
radv: add radv_cmd_set_depth_clip_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:21 +00:00
Samuel Pitoiset
228c091f5e
radv: add radv_cmd_set_line_stipple_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:21 +00:00
Samuel Pitoiset
1d1cb876c9
radv: add radv_cmd_set_polygon_mode()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:21 +00:00
Samuel Pitoiset
e6b2f03fb9
radv: add radv_cmd_set_rasterizer_discard_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:20 +00:00
Samuel Pitoiset
54e0d5a753
radv: add radv_cmd_set_depth_bias_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:20 +00:00
Samuel Pitoiset
b51d648cea
radv: add radv_cmd_set_front_face()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:19 +00:00
Samuel Pitoiset
8e03f7a8b8
radv: add radv_cmd_set_cull_mode()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:18 +00:00
Samuel Pitoiset
4663628258
radv: add radv_cmd_set_line_stipple()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:18 +00:00
Samuel Pitoiset
7cef87c57b
radv: add radv_cmd_set_depth_bias()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:17 +00:00
Samuel Pitoiset
b6105f3b5d
radv: add radv_cmd_set_primitive_restart_enable()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:17 +00:00
Samuel Pitoiset
8296373e78
radv: add radv_cmd_set_depth_clip_negative_one_to_one()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:17 +00:00
Samuel Pitoiset
2ed84bbe35
radv: add radv_cmd_set_depth_clamp_range()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:16 +00:00
Samuel Pitoiset
cd91d2f4ab
radv: add radv_cmd_set_patch_control_points()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:16 +00:00
Samuel Pitoiset
97597f65bf
radv: add radv_cmd_set_tessellation_domain_origin()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:15 +00:00
Samuel Pitoiset
091f8d53cb
radv: add radv_cmd_set_line_width()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36979 >
2025-08-27 09:22:15 +00:00
Georg Lehmann
e270a7480b
nir/lower_io: fix boolean output stores
...
Stores don't have a definition, we have to check the bit size of the source.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13762
Fixes: c217ee8d35 ("nir: Insert b2b1s around booleans in nir_lower_to")
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Reviewed-by: Mary Guillemard <mary@mary.zone>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36966 >
2025-08-27 08:46:34 +00:00
Georg Lehmann
13a9f27432
ac/nir: do not assume mesh cull flag is 1bit
...
It will no longer be 1bit after a nir/lower_io bug is fixed.
Cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36966 >
2025-08-27 08:46:33 +00:00
Georg Lehmann
8a5178755e
radv: reorder cmat properties according to performance
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
On GFX12, int8 is twice as fast as fp16/bf16.
On GFX11, they have the same throughput, but int8 at least still uses
less registers.
Also reorder 16bit accumulators before 32bit, because they use less
registers on GFX12.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37002 >
2025-08-27 08:20:47 +00:00
Georg Lehmann
5a10142a9f
radv/nir/lower_cmat: split up larger nested switches
...
This has been annoying me for quite some while, the level of indention
makes reviewing code changes in Gitlab harder.
I think now is a good time to change this before more cmat lowering is added.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37002 >
2025-08-27 08:20:47 +00:00
Georg Lehmann
047b95a8c3
nir/shrink_vec_array_vars: detect zero init shared memory using constant initializer
...
More consistent.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36956 >
2025-08-27 06:37:41 +00:00
Georg Lehmann
edc5bea61e
nir/shrink_vec_array_vars: update constant initializer after shrinking
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13751
Fixes: c7df3b4f64 ("nir/shrink_vec_array_vars: allow nir_var_mem_shared")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36956 >
2025-08-27 06:37:41 +00:00
Samuel Pitoiset
47cca88f3c
radv: check flush_bits before calling radv_emit_cache_flush() in the draw path
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This is also faster.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37005 >
2025-08-27 06:19:14 +00:00
Samuel Pitoiset
5aba130eab
radv: check if SQTT is enabled before calling radv_describe_draw()
...
This is faster.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37005 >
2025-08-27 06:19:14 +00:00
Samuel Pitoiset
a3f9d85270
radv: add a new state for forced VRS rates
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37005 >
2025-08-27 06:19:14 +00:00
Samuel Pitoiset
6d1e7c2ddf
radv: clear descriptors state dirty bit outside of the caller
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37005 >
2025-08-27 06:19:13 +00:00
Samuel Pitoiset
9b912f00c7
radv: handle fbfetch output after binding graphics shaders
...
uses_fbfetch_output might be updated when a fragment shader is bound.
This would only affect ESO and I'm not sure it's possible though.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37005 >
2025-08-27 06:19:13 +00:00
Samuel Pitoiset
664c9697aa
radv: clear RADV_CMD_DIRTY_xxx bits outside of the caller in more cases
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37005 >
2025-08-27 06:19:13 +00:00
Julia Zhang
20b809f1f0
pps: init driver in OnSetup
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Initialization of driver has been moved to register_data_source() from
OnSetup() by: a739889789 ("pps: Report available counters when
gpu.counters* data source is registered")
With above change, pps will destroy driver when collecting data stops
(pps may keep running) then the driver will become nullptr when user try
to collect data again. This will cause segmentation fault in OnSetup().
So this remove driver = nullptr in OnStop() and init driver in OnSetup()
to make sure driver exists when pps-producer run more than once.
Fixes: a739889789 ("pps: Report available counters when gpu.counters*
data source is registered")
Signed-off-by: Julia Zhang <Julia.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36548 >
2025-08-27 02:27:03 +00:00
Faith Ekstrand
a1d5e8bfdb
compiler/rust: Fix the DFS loop detection algorithm
...
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The previous algorithm just looked at the dominator's loop header.
However, if you have multiple consecutive loops like:
function_impl {
loop {
// Stuff
}
loop {
// Other stuff
}
}
then it will look like the second loop is contained in the first loop
because the first loop's header dominates the second loop. This isn't
actually what we want. Instead, we want a node N to be considered part
of a loop with header H if H dominates N and H is reachable from N.
Fixes: 741f7067f1 ("nak: Add loop detection to the CFG")
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36524 >
2025-08-27 01:20:05 +00:00
Faith Ekstrand
ab97fea323
nak: Increase Imma latencies on Blackwell by 4
...
We already do +8 on HMMA. This gives us a +4 on IMMA which seems to fix
the test failures I'm seeing. This fixes the IMMA CTS tests on my RTX
5090 with NAK_DEBUG=spill.
Fixes: 477533ee00 ("nvk: add sm120 latencies via csv files.")
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36524 >
2025-08-27 01:20:05 +00:00