Timur Kristóf
5fa70730da
radv: Use IO semantic location for shader output info.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28172 >
2024-04-03 23:40:33 +00:00
Timur Kristóf
f23795e78c
radv: Use NIR IO semantics to determine VS input info.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28172 >
2024-04-03 23:40:33 +00:00
Timur Kristóf
9fd67c84da
radv: Remove unused VS input usage mask.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28172 >
2024-04-03 23:40:33 +00:00
Timur Kristóf
0ddecb3f0e
radv: Add helper to determine usage of VS prologs.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28172 >
2024-04-03 23:40:33 +00:00
Timur Kristóf
5156d3097b
radv: Add helper for determining per-attribute vertex buffer descriptors.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28172 >
2024-04-03 23:40:33 +00:00
Timur Kristóf
e04f66ae33
radv: Use NIR IO semantics to determine GS output info.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28172 >
2024-04-03 23:40:33 +00:00
Timur Kristóf
7276bea52d
radv: Record PS input clip/cull mask instead of number.
...
Keeping the mask instead of the actual number will make it easier
later to transition to basing the information on I/O intrinsics
instead of I/O variables.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28172 >
2024-04-03 23:40:33 +00:00
Timur Kristóf
cbc8f5216a
radv: Slightly refactor gather_intrinsic_store_output_info.
...
No functional changes.
Use const more, and rename some variables to make them clearer.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28172 >
2024-04-03 23:40:33 +00:00
Timur Kristóf
d10e458df0
radv: Extract gather_load_vs_input_info function.
...
No functional changes.
Make the code look cleaner by handling the various stages
by different functions.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28172 >
2024-04-03 23:40:33 +00:00
Timur Kristóf
4e2eeab90d
radv: Pass key structures to gather intrinsic info.
...
No functional changes.
The information in these structures will be needed
in a later commit. Done separately to help keep that
other commit cleaner.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28172 >
2024-04-03 23:40:33 +00:00
Timur Kristóf
c27877cff9
radv: Only add extra dword to LS-HS stride when there are LS outputs.
...
Fixes: d116272689
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28544 >
2024-04-03 23:15:01 +00:00
Timur Kristóf
cff24443fd
ac/nir/tess: Clarify when VS-TCS I/O can use registers.
...
And cleanup some old ugly code.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28487 >
2024-04-03 17:37:40 +00:00
Timur Kristóf
9faabdd5dd
ac/nir/tess: Remove superfluous args for reserved TCS outputs.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28487 >
2024-04-03 17:37:40 +00:00
Timur Kristóf
ae8a954048
ac/nir/tess: Calculate reserved LDS outputs based on IO info.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28487 >
2024-04-03 17:37:40 +00:00
Timur Kristóf
c61eb54806
ac/nir/tess: Map TCS LDS IO locations without gaps.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28487 >
2024-04-03 17:37:40 +00:00
Timur Kristóf
a167cb9ba3
ac/nir/tess: Return undef when loading an unwritten TCS output.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28487 >
2024-04-03 17:37:40 +00:00
Timur Kristóf
a1c821e911
ac/nir/tess: Clarify when a TCS output is stored in LDS or VRAM.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28487 >
2024-04-03 17:37:40 +00:00
Timur Kristóf
08baefe18c
ac/nir/tess: Load tess factors from variable when they are passed in registers.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28487 >
2024-04-03 17:37:40 +00:00
Timur Kristóf
10acebf88f
ac/nir: Introduce ac_nir_calc_io_offset_mapped.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28487 >
2024-04-03 17:37:40 +00:00
Samuel Pitoiset
cefbfe6597
radv: add radv_wsi.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
bfaa674583
radv: add radv_pipeline_graphics.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
987f3351b3
radv: add radv_pipeline_rt.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
7807d49f82
radv: add radv_pipeline_compute.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
f07a639801
radv: add radv_pipeline.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
8e9b41641a
radv: add radv_pipeline_cache.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
150ce13273
radv: add radv_device.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
1c590cbd28
radv: add radv_rra.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
6849305a86
radv: add radv_physical_device.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
0fb19b8331
radv: add radv_queue.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
30eb0ef45a
radv: add radv_instance.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:54 +00:00
Samuel Pitoiset
83841b0b78
radv: add radv_device_memory.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:53 +00:00
Samuel Pitoiset
bcfac61468
radv: move radv_shader_{layout,stage} to radv_shader.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:53 +00:00
Samuel Pitoiset
0df9270997
radv: move radv_userdata_locations to radv_shader_args.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:53 +00:00
Samuel Pitoiset
d058264f55
radv: move radv_prim_vertex_count to si_cmd_buffer.c
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28526 >
2024-04-03 13:32:53 +00:00
Samuel Pitoiset
f9b3e32440
radv: advertise VK_EXT_device_address_binding_report
...
This extension can be very useful for debugging VM faults with AMDGPU
because it's possible to associate VA ranges with Vulkan objects. Also
useful for detecting use-after-free.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28373 >
2024-04-03 08:48:36 +00:00
Samuel Pitoiset
db736ebf53
radv: implement VK_EXT_device_address_binding_report
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28373 >
2024-04-03 08:48:36 +00:00
Samuel Pitoiset
89182faee8
radv: add radv_device_generated_commands.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
c4e83026af
radv: add radv_perfcounter.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
bccaeab503
radv: add radv_query.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
bbb2e82e9a
radv: add radv_image_view.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
d7141bbf79
radv: add radv_image.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
ce54440af3
radv: add radv_video.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
c925f03712
radv: add radv_buffer.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
4ba5ba8017
radv: add radv_buffer_view.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
9a09954637
radv: add radv_event.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Samuel Pitoiset
0c8f0c3918
radv: add radv_sampler.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28510 >
2024-04-02 21:04:53 +00:00
Georg Lehmann
80652de67b
aco/ra: use SDWA for 16bit instructions when the second byte is blocked
...
Found by inspection, I think this can happen with pack_32_4x8(f2u8(a@16)),
which will use v_cvt_u16_f16 (a 16bit instruction) with a v1b definition.
No Foz-DB changes on Navi21.
Cc: mesa-stable
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28443 >
2024-04-02 19:03:14 +00:00
Eric Engestrom
ff37f68740
meson: add VK_DRIVER_FILES to devenv, alongside the old VK_ICD_FILENAMES
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28516 >
2024-04-02 18:08:52 +00:00
Timur Kristóf
3223650bad
radv: Reuse TCS offchip layout between TCS and TES.
...
Using the same SGPR bitfield in TCS and TES will simplify driver
code and make RADV consistent with RadeonSI.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28490 >
2024-04-02 16:54:09 +00:00
Timur Kristóf
4b0b0e675c
radv: Include output patch size in TCS offchip layout.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28490 >
2024-04-02 16:54:09 +00:00