Commit Graph

211124 Commits

Author SHA1 Message Date
Christoph Pillmayer aa43ac4e7c pan/bi: Move some constants into FAU entries
Following on the previous commit, this commit adds support for selecting
and reporting constants to pull from the FAU instead of loading them
into registers first with ADD_IMM. This is beneficial because we can then
use them as a source directly and save ourselves one instruction to move
them into the register first.

Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36872>
2025-08-27 10:48:20 +00:00
Christoph Pillmayer 12469ce821 panvk: Add support for moving constants to the FAU
This commit sets up support for constants that should be pushed into
FAU entries after the ones we already push (sysvals, push constants).

The next commit will make the compiler actually find and report the
constants that should be pushed.

Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36872>
2025-08-27 10:48:19 +00:00
Georg Lehmann acd879f096 radv: set ACCESS_CAN_SPECULATE for smem buffer loads with known good descriptors
Foz-DB GFX1201:
Totals from 2872 (3.59% of 80098) affected shaders:
MaxWaves: 78208 -> 78234 (+0.03%); split: +0.21%, -0.18%
Instrs: 6214171 -> 6193701 (-0.33%); split: -0.40%, +0.07%
CodeSize: 33121244 -> 33113692 (-0.02%); split: -0.18%, +0.16%
VGPRs: 151680 -> 152016 (+0.22%); split: -0.25%, +0.47%
SpillSGPRs: 775 -> 776 (+0.13%)
Latency: 46080905 -> 45955331 (-0.27%); split: -0.55%, +0.28%
InvThroughput: 6235954 -> 6250598 (+0.23%); split: -0.25%, +0.48%
VClause: 111125 -> 110955 (-0.15%); split: -0.17%, +0.02%
SClause: 221845 -> 214761 (-3.19%); split: -3.20%, +0.01%
Copies: 501387 -> 488215 (-2.63%); split: -2.96%, +0.33%
Branches: 191455 -> 178574 (-6.73%)
PreSGPRs: 146364 -> 146923 (+0.38%); split: -0.12%, +0.50%
PreVGPRs: 120813 -> 121073 (+0.22%)
VALU: 3139282 -> 3137471 (-0.06%); split: -0.11%, +0.05%
SALU: 1079863 -> 1083158 (+0.31%); split: -0.55%, +0.86%
VMEM: 182255 -> 182247 (-0.00%)
SMEM: 293409 -> 290233 (-1.08%)

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36938>
2025-08-27 09:45:19 +00:00
Georg Lehmann 3b06824e4c nir/opt_algebraic: optimize some post peephole select patterns
Foz-DB GFX1201:
Totals from 208 (0.26% of 80287) affected shaders:
Instrs: 427684 -> 426834 (-0.20%); split: -0.22%, +0.02%
CodeSize: 2232616 -> 2228816 (-0.17%); split: -0.20%, +0.03%
Latency: 3993934 -> 3992726 (-0.03%); split: -0.04%, +0.01%
InvThroughput: 569055 -> 568622 (-0.08%); split: -0.09%, +0.01%
SClause: 12932 -> 12927 (-0.04%)
Copies: 22567 -> 22604 (+0.16%); split: -0.47%, +0.63%
Branches: 7671 -> 7658 (-0.17%)
VALU: 222047 -> 221625 (-0.19%)
SALU: 83954 -> 83815 (-0.17%); split: -0.29%, +0.13%

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36938>
2025-08-27 09:45:19 +00:00
Georg Lehmann 395893e16b nir/peephole_select: allows more lowered io
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36938>
2025-08-27 09:45:19 +00:00
Samuel Pitoiset 81142f4574 radv: add radv_cmd_set_color_blend_equation()
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:43 +00:00
Samuel Pitoiset 7a196d05a3 radv: add radv_cmd_set_sample_locations()
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:43 +00:00
Samuel Pitoiset 62574e956c radv: add radv_cmd_set_rendering_input_attachment_indices()
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:42 +00:00
Samuel Pitoiset 64daa52e9c radv: add radv_cmd_set_rendering_attachment_locations()
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:42 +00:00
Samuel Pitoiset 0975d0ace9 radv: add radv_cmd_set_color_blend_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:41 +00:00
Samuel Pitoiset ea3bfcf29f radv: pre-compute color blend 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:41 +00:00
Samuel Pitoiset 73f7253a70 radv: make radv_ps_epilog_state::color_blend_enable a 8-bit field
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:40 +00:00
Samuel Pitoiset a4434eefd5 radv: add radv_cmd_set_viewport()
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:38 +00:00
Samuel Pitoiset d7e898868d radv: add radv_cmd_set_scissor()
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:38 +00:00
Samuel Pitoiset 6fc5bfcbaa radv: add radv_cmd_set_scissor_with_count()
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:37 +00:00
Samuel Pitoiset 5b351e76e0 radv: add radv_cmd_set_viewport_with_count()
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:37 +00:00
Samuel Pitoiset 665dc09d08 radv: make use of RADV_DYNAMIC_{VIEWPORT,SCISSOR}_WITH_COUNT
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:37 +00:00
Samuel Pitoiset c8b80d495c radv: add radv_cmd_set_discard_rectangle()
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:36 +00:00
Samuel Pitoiset a62b58cc66 radv: add radv_cmd_set_stencil_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:35 +00:00
Samuel Pitoiset 5e44081470 radv: add radv_cmd_set_stencil_test_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:35 +00:00
Samuel Pitoiset 8602433d9f radv: add radv_cmd_set_depth_bounds_test_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:34 +00:00
Samuel Pitoiset 0acbc86863 radv: add radv_cmd_set_depth_compare_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:34 +00:00
Samuel Pitoiset e2145bd0c6 radv: add radv_cmd_set_depth_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:33 +00:00
Samuel Pitoiset d2aa54c76f radv: add radv_cmd_set_depth_test_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:33 +00:00
Samuel Pitoiset 3bb31bc060 radv: add radv_cmd_set_discard_rectangle_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:32 +00:00
Samuel Pitoiset 143708fe56 radv: add radv_cmd_set_discard_rectangle_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:32 +00:00
Samuel Pitoiset 9450fe41d5 radv: add radv_cmd_set_blend_constants()
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 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