radv: Replace is_rt_shader with RADV_SHADER_TYPE_RT_PROLOG
The flag was only used for identifying the rt prolog. Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Friedrich Vock <friedrich.vock@gmx.de> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28619>
This commit is contained in:

committed by
Marge Bot

parent
272dcaff01
commit
1038f48dd1
@@ -2911,7 +2911,7 @@ radv_create_rt_prolog(struct radv_device *device)
|
|||||||
info.wave_size = pdev->rt_wave_size;
|
info.wave_size = pdev->rt_wave_size;
|
||||||
info.workgroup_size = info.wave_size;
|
info.workgroup_size = info.wave_size;
|
||||||
info.user_data_0 = R_00B900_COMPUTE_USER_DATA_0;
|
info.user_data_0 = R_00B900_COMPUTE_USER_DATA_0;
|
||||||
info.cs.is_rt_shader = true;
|
info.type = RADV_SHADER_TYPE_RT_PROLOG;
|
||||||
info.cs.uses_dynamic_rt_callable_stack = true;
|
info.cs.uses_dynamic_rt_callable_stack = true;
|
||||||
info.cs.block_size[0] = 8;
|
info.cs.block_size[0] = 8;
|
||||||
info.cs.block_size[1] = pdev->rt_wave_size == 64 ? 8 : 4;
|
info.cs.block_size[1] = pdev->rt_wave_size == 64 ? 8 : 4;
|
||||||
|
@@ -560,7 +560,7 @@ declare_shader_args(const struct radv_device *device, const struct radv_graphics
|
|||||||
add_ud_arg(args, 2, AC_ARG_CONST_PTR, &args->ac.num_work_groups, AC_UD_CS_GRID_SIZE);
|
add_ud_arg(args, 2, AC_ARG_CONST_PTR, &args->ac.num_work_groups, AC_UD_CS_GRID_SIZE);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (info->cs.is_rt_shader) {
|
if (info->type == RADV_SHADER_TYPE_RT_PROLOG) {
|
||||||
add_ud_arg(args, 2, AC_ARG_CONST_DESC_PTR, &args->ac.rt.sbt_descriptors, AC_UD_CS_SBT_DESCRIPTORS);
|
add_ud_arg(args, 2, AC_ARG_CONST_DESC_PTR, &args->ac.rt.sbt_descriptors, AC_UD_CS_SBT_DESCRIPTORS);
|
||||||
add_ud_arg(args, 2, AC_ARG_CONST_PTR, &args->ac.rt.traversal_shader_addr, AC_UD_CS_TRAVERSAL_SHADER_ADDR);
|
add_ud_arg(args, 2, AC_ARG_CONST_PTR, &args->ac.rt.traversal_shader_addr, AC_UD_CS_TRAVERSAL_SHADER_ADDR);
|
||||||
add_ud_arg(args, 2, AC_ARG_CONST_PTR, &args->ac.rt.launch_size_addr, AC_UD_CS_RAY_LAUNCH_SIZE_ADDR);
|
add_ud_arg(args, 2, AC_ARG_CONST_PTR, &args->ac.rt.launch_size_addr, AC_UD_CS_RAY_LAUNCH_SIZE_ADDR);
|
||||||
|
@@ -301,9 +301,6 @@ gather_intrinsic_info(const nir_shader *nir, const nir_intrinsic_instr *instr, s
|
|||||||
case nir_intrinsic_store_output:
|
case nir_intrinsic_store_output:
|
||||||
gather_intrinsic_store_output_info(nir, instr, info, consider_force_vrs);
|
gather_intrinsic_store_output_info(nir, instr, info, consider_force_vrs);
|
||||||
break;
|
break;
|
||||||
case nir_intrinsic_load_sbt_base_amd:
|
|
||||||
info->cs.is_rt_shader = true;
|
|
||||||
break;
|
|
||||||
case nir_intrinsic_load_rt_dynamic_callable_stack_base_amd:
|
case nir_intrinsic_load_rt_dynamic_callable_stack_base_amd:
|
||||||
info->cs.uses_dynamic_rt_callable_stack = true;
|
info->cs.uses_dynamic_rt_callable_stack = true;
|
||||||
break;
|
break;
|
||||||
|
@@ -28,6 +28,7 @@ enum radv_shader_type {
|
|||||||
RADV_SHADER_TYPE_DEFAULT = 0,
|
RADV_SHADER_TYPE_DEFAULT = 0,
|
||||||
RADV_SHADER_TYPE_GS_COPY,
|
RADV_SHADER_TYPE_GS_COPY,
|
||||||
RADV_SHADER_TYPE_TRAP_HANDLER,
|
RADV_SHADER_TYPE_TRAP_HANDLER,
|
||||||
|
RADV_SHADER_TYPE_RT_PROLOG,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct radv_vs_output_info {
|
struct radv_vs_output_info {
|
||||||
@@ -218,7 +219,6 @@ struct radv_shader_info {
|
|||||||
bool uses_local_invocation_idx;
|
bool uses_local_invocation_idx;
|
||||||
unsigned block_size[3];
|
unsigned block_size[3];
|
||||||
|
|
||||||
bool is_rt_shader;
|
|
||||||
bool uses_dynamic_rt_callable_stack;
|
bool uses_dynamic_rt_callable_stack;
|
||||||
bool uses_rt;
|
bool uses_rt;
|
||||||
bool uses_full_subgroups;
|
bool uses_full_subgroups;
|
||||||
|
Reference in New Issue
Block a user