Timur Kristóf
25adf353cc
ac/nir/ngg: Add bool return value to ac_nir_lower_ngg_nogs.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
fad58a99e8
ac/nir: Add bool return value to ac_nir_lower_legacy_gs.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
d8ad068968
ac/nir: Add bool return value to ac_nir_lower_legacy_vs.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
407aedeff8
ac/nir: Add bool return value to ac_nir_lower_mesh_inputs_to_mem.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
9e7609b0ff
ac/nir: Add bool return value to ac_nir_lower_task_outputs_to_mem.
...
And fixup its NIR counterparts too.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
65645f6841
ac/nir: Add bool return value to ac_nir_lower_gs_inputs_to_mem.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
c593110f5f
ac/nir: Add bool return value to ac_nir_lower_es_outputs_to_mem.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
6e9ede61c4
ac/nir: Add bool return value to ac_nir_lower_tes_inputs_to_mem.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
6e78aef0e9
ac/nir: Add bool return value to ac_nir_lower_hs_outputs_to_mem.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
bb3f33014d
ac/nir: Add bool return value to ac_nir_lower_hs_inputs_to_mem.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
0438cc0afb
ac/nir: Add bool return value to ac_nir_lower_ls_outputs_to_mem.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:17 +01:00
Timur Kristóf
305944def9
ac/nir: Don't include nir.h in headers anymore.
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Rhys Perry
f034aa9cd3
radv: don't use bit_sizes_int to skip nir_lower_bit_size
...
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/29242 >
2025-02-07 13:52:57 +00:00
Timur Kristóf
f7305f776e
ac/nir/ngg: Pass radeon_info to mesh shader lowering.
...
Same idea as the VS/TES and GS lowering:
Make shader compilation decisions based on the features of the
current GPU instead of ad-hoc deciding according to GFX level.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33218 >
2025-01-30 15:26:46 +00:00
Timur Kristóf
b8204c8df9
ac/nir/ngg: Remove gfx_level and family from NGG lowering options.
...
They can be read from radeon_info.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33218 >
2025-01-30 15:26:46 +00:00
Timur Kristóf
e76361d626
ac/nir/ngg: Add radeon_info to NGG lowering options.
...
The intention is to have all the HW features affecting
shader compilation in one place, instead of ad-hoc decisions
in the code based on the GFX level and chip class.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33218 >
2025-01-30 15:26:45 +00:00
Marek Olšák
71e95b373b
radeonsi: remove si_shader_info code that is no longer needed
...
A lot of this info is now derived from shader variant NIR.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32910 >
2025-01-29 07:19:56 +00:00
Marek Olšák
f7e3689fe1
ac/nir: lower sample_pos to load_sample_positions_amd when frag_coord is center
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:26 -05:00
Marek Olšák
eddd063420
ac/nir: cosmetic stuff for ac_nir_lower_ps
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:26 -05:00
Marek Olšák
247c0593eb
ac/nir: eliminate sample_mask_in without MSAA in ac_nir_lower_ps_early
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:26 -05:00
Marek Olšák
e57b52ff6c
ac/nir: optimize frag_coord <-> pixel_coord in ac_nir_lower_ps_early
...
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:26 -05:00
Marek Olšák
33134f9503
ac/nir: optimize barycentric_at_sample(sample_id) in ac_lower_ps_early
...
Replace it with barycentric_sample.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:26 -05:00
Marek Olšák
43f6b2655e
ac/nir: simplify force_*_center_interp options in ac_nir_lower_ps_early
...
This only indicates whether MSAA is disabled.
Having a separate option for each sysval is better for the PS prolog,
but not for monolithic compilation.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:25 -05:00
Marek Olšák
3bccfa72cc
ac/nir: simplify force_*_sample_interp options in ac_nir_lower_ps_early
...
The only thing we need here is whether sample shading is enabled
and how many samples.
Having a separate option for each sysval is better for the PS prolog,
but not for monolithic compilation.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:25 -05:00
Marek Olšák
38d3fc7a6a
ac/nir: return progress from ac_nir_lower_ps_late
...
This changes the creation of barycentric coordinate variables to on-demand.
There is also some reordering of export code to return progress.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:25 -05:00
Marek Olšák
231009be65
ac/nir: return progress from ac_nir_lower_ps_early
...
This changes the creation of barycentric coordinate variables to on-demand.
Everything else is ready to return progress.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:25 -05:00
Marek Olšák
234b416ffb
ac/nir: lower fbfetch_output in ac_nir_lower_ps_early
...
so that we can gather shader_info after this and all system values that
this adds will be gathered.
shader_info won't be gathered after si_nir_lower_abi, which is why we
have to lower fbfetch_output here.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:25 -05:00
Marek Olšák
1570387aaa
ac/nir: lower barycentric_at_offset/sample in ac_nir_lower_ps_early
...
i.e. before future linking optimizations and shader_info gathering
They are lowered together because one depends on the other.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:25 -05:00
Marek Olšák
580304350b
ac/nir: optimize front_face in ac_nir_lower_ps_early
...
i.e. before future linking optimizations and shader_info gathering
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33024 >
2025-01-25 12:20:25 -05:00
Timur Kristóf
50035f0316
ac/nir: Move all ac_nir_* files to a new folder.
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32966 >
2025-01-14 13:46:30 +01:00